@docker/actions-toolkit 0.19.0 → 0.20.0-rc.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cache.d.ts +6 -0
- package/lib/cache.js +27 -3
- package/lib/cache.js.map +1 -1
- package/lib/index.js +8 -2
- package/lib/index.js.map +1 -1
- package/package.json +1 -1
package/lib/cache.d.ts
CHANGED
|
@@ -20,15 +20,21 @@ export interface CacheOpts {
|
|
|
20
20
|
cacheFile: string;
|
|
21
21
|
ghaNoCache?: boolean;
|
|
22
22
|
}
|
|
23
|
+
export interface CachePostState {
|
|
24
|
+
dir: string;
|
|
25
|
+
key: string;
|
|
26
|
+
}
|
|
23
27
|
export declare class Cache {
|
|
24
28
|
private readonly opts;
|
|
25
29
|
private readonly ghaCacheKey;
|
|
26
30
|
private readonly ghaNoCache?;
|
|
27
31
|
private readonly cacheDir;
|
|
28
32
|
private readonly cachePath;
|
|
33
|
+
private static readonly POST_CACHE_KEY;
|
|
29
34
|
constructor(opts: CacheOpts);
|
|
30
35
|
save(file: string): Promise<string>;
|
|
31
36
|
find(): Promise<string>;
|
|
37
|
+
static post(): Promise<CachePostState | undefined>;
|
|
32
38
|
private copyToCache;
|
|
33
39
|
private platform;
|
|
34
40
|
}
|
package/lib/cache.js
CHANGED
|
@@ -55,6 +55,7 @@ class Cache {
|
|
|
55
55
|
ghaNoCache;
|
|
56
56
|
cacheDir;
|
|
57
57
|
cachePath;
|
|
58
|
+
static POST_CACHE_KEY = 'postCache';
|
|
58
59
|
constructor(opts) {
|
|
59
60
|
this.opts = opts;
|
|
60
61
|
this.ghaCacheKey = util.format('%s-%s-%s', this.opts.htcName, this.opts.htcVersion, this.platform());
|
|
@@ -71,8 +72,11 @@ class Cache {
|
|
|
71
72
|
const htcPath = await tc.cacheDir(this.cacheDir, this.opts.htcName, this.opts.htcVersion, this.platform());
|
|
72
73
|
core.debug(`Cache.save cached to hosted tool cache ${htcPath}`);
|
|
73
74
|
if (!this.ghaNoCache && cache.isFeatureAvailable()) {
|
|
74
|
-
core.debug(`Cache.save
|
|
75
|
-
|
|
75
|
+
core.debug(`Cache.save sending ${this.ghaCacheKey} to post state`);
|
|
76
|
+
core.saveState(Cache.POST_CACHE_KEY, JSON.stringify({
|
|
77
|
+
dir: this.cacheDir,
|
|
78
|
+
key: this.ghaCacheKey
|
|
79
|
+
}));
|
|
76
80
|
}
|
|
77
81
|
return cachePath;
|
|
78
82
|
}
|
|
@@ -87,7 +91,7 @@ class Cache {
|
|
|
87
91
|
if (await cache.restoreCache([this.cacheDir], this.ghaCacheKey)) {
|
|
88
92
|
core.info(`Restored ${this.ghaCacheKey} from GitHub Actions cache`);
|
|
89
93
|
htcPath = await tc.cacheDir(this.cacheDir, this.opts.htcName, this.opts.htcVersion, this.platform());
|
|
90
|
-
core.info(`
|
|
94
|
+
core.info(`Cached to hosted tool cache ${htcPath}`);
|
|
91
95
|
return this.copyToCache(`${htcPath}/${this.opts.cacheFile}`);
|
|
92
96
|
}
|
|
93
97
|
}
|
|
@@ -99,6 +103,26 @@ class Cache {
|
|
|
99
103
|
}
|
|
100
104
|
return '';
|
|
101
105
|
}
|
|
106
|
+
static async post() {
|
|
107
|
+
const state = core.getState(Cache.POST_CACHE_KEY);
|
|
108
|
+
if (!state) {
|
|
109
|
+
core.info(`State not set`);
|
|
110
|
+
return Promise.resolve(undefined);
|
|
111
|
+
}
|
|
112
|
+
let cacheState;
|
|
113
|
+
try {
|
|
114
|
+
cacheState = JSON.parse(state);
|
|
115
|
+
}
|
|
116
|
+
catch (e) {
|
|
117
|
+
throw new Error(`Failed to parse cache post state: ${e}`);
|
|
118
|
+
}
|
|
119
|
+
if (!cacheState.dir || !cacheState.key) {
|
|
120
|
+
throw new Error(`Invalid cache post state: ${state}`);
|
|
121
|
+
}
|
|
122
|
+
core.info(`Caching ${cacheState.key} to GitHub Actions cache`);
|
|
123
|
+
await cache.saveCache([cacheState.dir], cacheState.key);
|
|
124
|
+
return cacheState;
|
|
125
|
+
}
|
|
102
126
|
copyToCache(file) {
|
|
103
127
|
core.debug(`Copying ${file} to ${this.cachePath}`);
|
|
104
128
|
fs_1.default.copyFileSync(file, this.cachePath);
|
package/lib/cache.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cache.js","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,4CAAoB;AACpB,4CAAoB;AACpB,gDAAwB;AACxB,oDAAsC;AACtC,wDAA0C;AAC1C,sDAAwC;AACxC,2CAA6B;
|
|
1
|
+
{"version":3,"file":"cache.js","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"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"}
|
package/lib/index.js
CHANGED
|
@@ -40,6 +40,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
40
40
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
41
41
|
exports.run = void 0;
|
|
42
42
|
const core = __importStar(require("@actions/core"));
|
|
43
|
+
const cache_1 = require("./cache");
|
|
43
44
|
const isPost = !!process.env['STATE_isPost'];
|
|
44
45
|
if (!isPost) {
|
|
45
46
|
core.saveState('isPost', 'true');
|
|
@@ -61,8 +62,13 @@ async function run(main, post) {
|
|
|
61
62
|
core.setFailed(e.message);
|
|
62
63
|
}
|
|
63
64
|
}
|
|
64
|
-
else
|
|
65
|
-
|
|
65
|
+
else {
|
|
66
|
+
if (post) {
|
|
67
|
+
await post();
|
|
68
|
+
}
|
|
69
|
+
await core.group(`Post cache`, async () => {
|
|
70
|
+
await cache_1.Cache.post();
|
|
71
|
+
});
|
|
66
72
|
}
|
|
67
73
|
}
|
|
68
74
|
exports.run = run;
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,oDAAsC;AAEtC,MAAM,MAAM,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;AAC7C,IAAI,CAAC,MAAM,EAAE;IACX,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;CAClC;AAED;;;;;;;GAOG;AACI,KAAK,UAAU,GAAG,CAAC,IAAyB,EAAE,IAA0B;IAC7E,IAAI,CAAC,MAAM,EAAE;QACX,IAAI;YACF,MAAM,IAAI,EAAE,CAAC;SACd;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;SAC3B;KACF;SAAM,IAAI,IAAI,EAAE;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,oDAAsC;AAEtC,mCAA8B;AAE9B,MAAM,MAAM,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;AAC7C,IAAI,CAAC,MAAM,EAAE;IACX,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;CAClC;AAED;;;;;;;GAOG;AACI,KAAK,UAAU,GAAG,CAAC,IAAyB,EAAE,IAA0B;IAC7E,IAAI,CAAC,MAAM,EAAE;QACX,IAAI;YACF,MAAM,IAAI,EAAE,CAAC;SACd;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;SAC3B;KACF;SAAM;QACL,IAAI,IAAI,EAAE;YACR,MAAM,IAAI,EAAE,CAAC;SACd;QACD,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,KAAK,IAAI,EAAE;YACxC,MAAM,aAAK,CAAC,IAAI,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC;KACJ;AACH,CAAC;AAfD,kBAeC"}
|