@docker/actions-toolkit 0.76.0 → 0.77.0
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/buildkit/buildkit.d.ts +3 -3
- package/lib/buildkit/buildkit.js +67 -117
- package/lib/buildkit/buildkit.js.map +1 -1
- package/lib/buildkit/config.js +7 -14
- package/lib/buildkit/config.js.map +1 -1
- package/lib/buildkit/git.d.ts +1 -1
- package/lib/buildkit/git.js +8 -12
- package/lib/buildkit/git.js.map +1 -1
- package/lib/buildx/bake.d.ts +4 -4
- package/lib/buildx/bake.js +76 -93
- package/lib/buildx/bake.js.map +1 -1
- package/lib/buildx/build.d.ts +5 -5
- package/lib/buildx/build.js +44 -78
- package/lib/buildx/build.js.map +1 -1
- package/lib/buildx/builder.d.ts +2 -2
- package/lib/buildx/builder.js +42 -91
- package/lib/buildx/builder.js.map +1 -1
- package/lib/buildx/buildx.d.ts +3 -3
- package/lib/buildx/buildx.js +212 -274
- package/lib/buildx/buildx.js.map +1 -1
- package/lib/buildx/history.d.ts +2 -2
- package/lib/buildx/history.js +226 -284
- package/lib/buildx/history.js.map +1 -1
- package/lib/buildx/imagetools.d.ts +5 -5
- package/lib/buildx/imagetools.js +67 -92
- package/lib/buildx/imagetools.js.map +1 -1
- package/lib/buildx/install.d.ts +14 -3
- package/lib/buildx/install.js +239 -276
- package/lib/buildx/install.js.map +1 -1
- package/lib/cache.js +88 -138
- package/lib/cache.js.map +1 -1
- package/lib/compose/compose.js +53 -107
- package/lib/compose/compose.js.map +1 -1
- package/lib/compose/install.d.ts +2 -2
- package/lib/compose/install.js +129 -191
- package/lib/compose/install.js.map +1 -1
- package/lib/context.js +10 -50
- package/lib/context.js.map +1 -1
- package/lib/cosign/cosign.js +55 -106
- package/lib/cosign/cosign.js.map +1 -1
- package/lib/cosign/dockerfile.js +1 -4
- package/lib/cosign/dockerfile.js.map +1 -1
- package/lib/cosign/install.d.ts +6 -3
- package/lib/cosign/install.js +183 -261
- package/lib/cosign/install.js.map +1 -1
- package/lib/docker/assets.js +15 -24
- package/lib/docker/assets.js.map +1 -1
- package/lib/docker/docker.d.ts +1 -1
- package/lib/docker/docker.js +112 -182
- package/lib/docker/docker.js.map +1 -1
- package/lib/docker/install.d.ts +3 -3
- package/lib/docker/install.js +543 -617
- package/lib/docker/install.js.map +1 -1
- package/lib/dockerhub.d.ts +1 -1
- package/lib/dockerhub.js +67 -125
- package/lib/dockerhub.js.map +1 -1
- package/lib/exec.js +9 -59
- package/lib/exec.js.map +1 -1
- package/lib/git.d.ts +2 -1
- package/lib/git.js +144 -220
- package/lib/git.js.map +1 -1
- package/lib/github/artifact.d.ts +19 -0
- package/lib/github/artifact.js +49 -0
- package/lib/github/artifact.js.map +1 -0
- package/lib/{github.d.ts → github/github.d.ts} +4 -8
- package/lib/github/github.js +135 -0
- package/lib/github/github.js.map +1 -0
- package/lib/github/summary.d.ts +20 -0
- package/lib/github/summary.js +166 -0
- package/lib/github/summary.js.map +1 -0
- package/lib/index.js +17 -64
- package/lib/index.js.map +1 -1
- package/lib/oci/oci.d.ts +2 -2
- package/lib/oci/oci.js +52 -104
- package/lib/oci/oci.js.map +1 -1
- package/lib/regclient/install.d.ts +2 -2
- package/lib/regclient/install.js +83 -141
- package/lib/regclient/install.js.map +1 -1
- package/lib/regclient/regctl.d.ts +1 -1
- package/lib/regclient/regctl.js +67 -123
- package/lib/regclient/regctl.js.map +1 -1
- package/lib/sigstore/sigstore.d.ts +5 -3
- package/lib/sigstore/sigstore.js +355 -368
- package/lib/sigstore/sigstore.js.map +1 -1
- package/lib/toolkit.d.ts +16 -16
- package/lib/toolkit.js +49 -37
- package/lib/toolkit.js.map +1 -1
- package/lib/types/buildkit/buildkit.js +1 -4
- package/lib/types/buildkit/buildkit.js.map +1 -1
- package/lib/types/buildkit/client.d.ts +2 -2
- package/lib/types/buildkit/client.js +1 -2
- package/lib/types/buildkit/client.js.map +1 -1
- package/lib/types/buildkit/control.d.ts +4 -4
- package/lib/types/buildkit/control.js +1 -2
- package/lib/types/buildkit/control.js.map +1 -1
- package/lib/types/buildkit/git.js +1 -2
- package/lib/types/buildkit/git.js.map +1 -1
- package/lib/types/buildkit/ops.js +1 -2
- package/lib/types/buildkit/ops.js.map +1 -1
- package/lib/types/buildkit/rpc.js +1 -2
- package/lib/types/buildkit/rpc.js.map +1 -1
- package/lib/types/buildx/bake.js +1 -2
- package/lib/types/buildx/bake.js.map +1 -1
- package/lib/types/buildx/build.js +1 -2
- package/lib/types/buildx/build.js.map +1 -1
- package/lib/types/buildx/builder.js +1 -2
- package/lib/types/buildx/builder.js.map +1 -1
- package/lib/types/buildx/buildx.d.ts +1 -1
- package/lib/types/buildx/buildx.js +1 -2
- package/lib/types/buildx/buildx.js.map +1 -1
- package/lib/types/buildx/history.js +1 -2
- package/lib/types/buildx/history.js.map +1 -1
- package/lib/types/buildx/imagetools.d.ts +3 -3
- package/lib/types/buildx/imagetools.js +1 -2
- package/lib/types/buildx/imagetools.js.map +1 -1
- package/lib/types/compose/compose.d.ts +1 -1
- package/lib/types/compose/compose.js +1 -2
- package/lib/types/compose/compose.js.map +1 -1
- package/lib/types/cosign/cosign.d.ts +1 -1
- package/lib/types/cosign/cosign.js +1 -2
- package/lib/types/cosign/cosign.js.map +1 -1
- package/lib/types/docker/docker.js +1 -2
- package/lib/types/docker/docker.js.map +1 -1
- package/lib/types/docker/mediatype.js +3 -6
- package/lib/types/docker/mediatype.js.map +1 -1
- package/lib/types/dockerhub.js +1 -2
- package/lib/types/dockerhub.js.map +1 -1
- package/lib/types/github/artifact.d.ts +26 -0
- package/lib/types/{git.d.ts → github/artifact.js} +3 -3
- package/lib/types/github/artifact.js.map +1 -0
- package/lib/types/{github.d.ts → github/github.d.ts} +4 -23
- package/lib/types/{git.js → github/github.js} +2 -3
- package/lib/types/github/github.js.map +1 -0
- package/lib/types/github/summary.d.ts +29 -0
- package/lib/types/{github.js → github/summary.js} +3 -4
- package/lib/types/github/summary.js.map +1 -0
- package/lib/types/intoto/intoto.js +2 -5
- package/lib/types/intoto/intoto.js.map +1 -1
- package/lib/types/intoto/slsa_provenance/v0.2/provenance.js +1 -4
- package/lib/types/intoto/slsa_provenance/v0.2/provenance.js.map +1 -1
- package/lib/types/oci/config.d.ts +2 -2
- package/lib/types/oci/config.js +1 -2
- package/lib/types/oci/config.js.map +1 -1
- package/lib/types/oci/descriptor.d.ts +1 -1
- package/lib/types/oci/descriptor.js +3 -6
- package/lib/types/oci/descriptor.js.map +1 -1
- package/lib/types/oci/digest.js +1 -2
- package/lib/types/oci/digest.js.map +1 -1
- package/lib/types/oci/index.d.ts +2 -2
- package/lib/types/oci/index.js +1 -2
- package/lib/types/oci/index.js.map +1 -1
- package/lib/types/oci/layout.js +4 -7
- package/lib/types/oci/layout.js.map +1 -1
- package/lib/types/oci/manifest.d.ts +2 -2
- package/lib/types/oci/manifest.js +1 -2
- package/lib/types/oci/manifest.js.map +1 -1
- package/lib/types/oci/mediatype.js +6 -9
- package/lib/types/oci/mediatype.js.map +1 -1
- package/lib/types/oci/oci.d.ts +4 -4
- package/lib/types/oci/oci.js +1 -2
- package/lib/types/oci/oci.js.map +1 -1
- package/lib/types/oci/versioned.js +1 -2
- package/lib/types/oci/versioned.js.map +1 -1
- package/lib/types/regclient/regclient.d.ts +1 -1
- package/lib/types/regclient/regclient.js +1 -2
- package/lib/types/regclient/regclient.js.map +1 -1
- package/lib/types/sigstore/sigstore.d.ts +11 -2
- package/lib/types/sigstore/sigstore.js +4 -7
- package/lib/types/sigstore/sigstore.js.map +1 -1
- package/lib/types/undock/undock.d.ts +1 -1
- package/lib/types/undock/undock.js +1 -2
- package/lib/types/undock/undock.js.map +1 -1
- package/lib/undock/install.d.ts +2 -2
- package/lib/undock/install.js +93 -151
- package/lib/undock/install.js.map +1 -1
- package/lib/undock/undock.js +88 -141
- package/lib/undock/undock.js.map +1 -1
- package/lib/util.js +36 -89
- package/lib/util.js.map +1 -1
- package/package.json +31 -42
- package/lib/github.js +0 -421
- package/lib/github.js.map +0 -1
- package/lib/types/git.js.map +0 -1
- package/lib/types/github.js.map +0 -1
package/lib/cosign/install.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
/**
|
|
3
2
|
* Copyright 2025 actions-toolkit authors
|
|
4
3
|
*
|
|
@@ -14,227 +13,157 @@
|
|
|
14
13
|
* See the License for the specific language governing permissions and
|
|
15
14
|
* limitations under the License.
|
|
16
15
|
*/
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
return ar;
|
|
39
|
-
};
|
|
40
|
-
return ownKeys(o);
|
|
41
|
-
};
|
|
42
|
-
return function (mod) {
|
|
43
|
-
if (mod && mod.__esModule) return mod;
|
|
44
|
-
var result = {};
|
|
45
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
46
|
-
__setModuleDefault(result, mod);
|
|
47
|
-
return result;
|
|
48
|
-
};
|
|
49
|
-
})();
|
|
50
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
51
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
52
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
53
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
54
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
55
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
56
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
57
|
-
});
|
|
58
|
-
};
|
|
59
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
60
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
61
|
-
};
|
|
62
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
63
|
-
exports.Install = void 0;
|
|
64
|
-
const fs_1 = __importDefault(require("fs"));
|
|
65
|
-
const os_1 = __importDefault(require("os"));
|
|
66
|
-
const path_1 = __importDefault(require("path"));
|
|
67
|
-
const core = __importStar(require("@actions/core"));
|
|
68
|
-
const tc = __importStar(require("@actions/tool-cache"));
|
|
69
|
-
const bundle_1 = require("@sigstore/bundle");
|
|
70
|
-
const tuf = __importStar(require("@sigstore/tuf"));
|
|
71
|
-
const verify_1 = require("@sigstore/verify");
|
|
72
|
-
const semver = __importStar(require("semver"));
|
|
73
|
-
const util = __importStar(require("util"));
|
|
74
|
-
const buildx_1 = require("../buildx/buildx");
|
|
75
|
-
const cache_1 = require("../cache");
|
|
76
|
-
const context_1 = require("../context");
|
|
77
|
-
const exec_1 = require("../exec");
|
|
78
|
-
const git_1 = require("../git");
|
|
79
|
-
const github_1 = require("../github");
|
|
80
|
-
const util_1 = require("../util");
|
|
81
|
-
const dockerfile_1 = require("./dockerfile");
|
|
82
|
-
class Install {
|
|
16
|
+
import fs from 'fs';
|
|
17
|
+
import os from 'os';
|
|
18
|
+
import path from 'path';
|
|
19
|
+
import * as core from '@actions/core';
|
|
20
|
+
import * as tc from '@actions/tool-cache';
|
|
21
|
+
import * as semver from 'semver';
|
|
22
|
+
import * as util from 'util';
|
|
23
|
+
import { Buildx } from '../buildx/buildx.js';
|
|
24
|
+
import { Cache } from '../cache.js';
|
|
25
|
+
import { Context } from '../context.js';
|
|
26
|
+
import { Exec } from '../exec.js';
|
|
27
|
+
import { Git } from '../git.js';
|
|
28
|
+
import { GitHub } from '../github/github.js';
|
|
29
|
+
import { Sigstore } from '../sigstore/sigstore.js';
|
|
30
|
+
import { Util } from '../util.js';
|
|
31
|
+
import { dockerfileContent } from './dockerfile.js';
|
|
32
|
+
import { SEARCH_URL } from '../types/sigstore/sigstore.js';
|
|
33
|
+
export class Install {
|
|
34
|
+
githubToken;
|
|
35
|
+
buildx;
|
|
36
|
+
sigstore;
|
|
83
37
|
constructor(opts) {
|
|
84
|
-
this.githubToken =
|
|
85
|
-
this.buildx =
|
|
38
|
+
this.githubToken = opts?.githubToken || process.env.GITHUB_TOKEN;
|
|
39
|
+
this.buildx = opts?.buildx || new Buildx();
|
|
40
|
+
this.sigstore = opts?.sigstore || new Sigstore();
|
|
86
41
|
}
|
|
87
|
-
download(opts) {
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
ghaNoCache: opts.ghaNoCache
|
|
105
|
-
});
|
|
106
|
-
const cacheFoundPath = yield installCache.find();
|
|
107
|
-
if (cacheFoundPath) {
|
|
108
|
-
core.info(`Cosign binary found in ${cacheFoundPath}`);
|
|
109
|
-
return cacheFoundPath;
|
|
110
|
-
}
|
|
111
|
-
const downloadURL = util.format(version.downloadURL, vspec, this.filename());
|
|
112
|
-
core.info(`Downloading ${downloadURL}`);
|
|
113
|
-
const htcDownloadPath = yield tc.downloadTool(downloadURL, undefined, this.githubToken);
|
|
114
|
-
core.debug(`Install.download htcDownloadPath: ${htcDownloadPath}`);
|
|
115
|
-
if (opts.verifySignature && semver.satisfies(vspec, '>=3.0.1')) {
|
|
116
|
-
yield this.verifySignature(htcDownloadPath, downloadURL);
|
|
117
|
-
}
|
|
118
|
-
const cacheSavePath = yield installCache.save(htcDownloadPath, opts.skipState);
|
|
119
|
-
core.info(`Cached to ${cacheSavePath}`);
|
|
120
|
-
return cacheSavePath;
|
|
42
|
+
async download(opts) {
|
|
43
|
+
const version = await Install.getDownloadVersion(opts.version);
|
|
44
|
+
core.debug(`Install.download version: ${version.version}`);
|
|
45
|
+
const release = await Install.getRelease(version, this.githubToken);
|
|
46
|
+
core.debug(`Install.download release tag name: ${release.tag_name}`);
|
|
47
|
+
const vspec = await this.vspec(release.tag_name);
|
|
48
|
+
core.debug(`Install.download vspec: ${vspec}`);
|
|
49
|
+
const c = semver.clean(vspec) || '';
|
|
50
|
+
if (!semver.valid(c)) {
|
|
51
|
+
throw new Error(`Invalid Cosign version "${vspec}".`);
|
|
52
|
+
}
|
|
53
|
+
const installCache = new Cache({
|
|
54
|
+
htcName: 'cosign-dl-bin',
|
|
55
|
+
htcVersion: vspec,
|
|
56
|
+
baseCacheDir: path.join(os.homedir(), '.bin'),
|
|
57
|
+
cacheFile: os.platform() == 'win32' ? 'cosign.exe' : 'cosign',
|
|
58
|
+
ghaNoCache: opts.ghaNoCache
|
|
121
59
|
});
|
|
60
|
+
const cacheFoundPath = await installCache.find();
|
|
61
|
+
if (cacheFoundPath) {
|
|
62
|
+
core.info(`Cosign binary found in ${cacheFoundPath}`);
|
|
63
|
+
return cacheFoundPath;
|
|
64
|
+
}
|
|
65
|
+
const downloadURL = util.format(version.downloadURL, vspec, this.filename());
|
|
66
|
+
core.info(`Downloading ${downloadURL}`);
|
|
67
|
+
const htcDownloadPath = await tc.downloadTool(downloadURL, undefined, this.githubToken);
|
|
68
|
+
core.debug(`Install.download htcDownloadPath: ${htcDownloadPath}`);
|
|
69
|
+
if (opts.verifySignature && semver.satisfies(vspec, '>=3.0.1')) {
|
|
70
|
+
await this.verifySignature(htcDownloadPath, downloadURL);
|
|
71
|
+
}
|
|
72
|
+
const cacheSavePath = await installCache.save(htcDownloadPath, opts.skipState);
|
|
73
|
+
core.info(`Cached to ${cacheSavePath}`);
|
|
74
|
+
return cacheSavePath;
|
|
122
75
|
}
|
|
123
|
-
build(gitContext, ghaNoCache, skipState) {
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
ghaNoCache: ghaNoCache
|
|
133
|
-
});
|
|
134
|
-
const cacheFoundPath = yield installCache.find();
|
|
135
|
-
if (cacheFoundPath) {
|
|
136
|
-
core.info(`Cosign binary found in ${cacheFoundPath}`);
|
|
137
|
-
return cacheFoundPath;
|
|
138
|
-
}
|
|
139
|
-
const outputDir = path_1.default.join(context_1.Context.tmpDir(), 'cosign-build-cache');
|
|
140
|
-
const buildCmd = yield this.buildCommand(gitContext, outputDir);
|
|
141
|
-
const buildBinPath = yield exec_1.Exec.getExecOutput(buildCmd.command, buildCmd.args, {
|
|
142
|
-
ignoreReturnCode: true,
|
|
143
|
-
input: Buffer.from(dockerfile_1.dockerfileContent)
|
|
144
|
-
}).then(res => {
|
|
145
|
-
var _a, _b, _c;
|
|
146
|
-
if (res.stderr.length > 0 && res.exitCode != 0) {
|
|
147
|
-
throw new Error(`build failed with: ${(_c = (_b = (_a = res.stderr.match(/(.*)\s*$/)) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.trim()) !== null && _c !== void 0 ? _c : 'unknown error'}`);
|
|
148
|
-
}
|
|
149
|
-
return `${outputDir}/cosign`;
|
|
150
|
-
});
|
|
151
|
-
const cacheSavePath = yield installCache.save(buildBinPath, skipState);
|
|
152
|
-
core.info(`Cached to ${cacheSavePath}`);
|
|
153
|
-
return cacheSavePath;
|
|
76
|
+
async build(gitContext, ghaNoCache, skipState) {
|
|
77
|
+
const vspec = await this.vspec(gitContext);
|
|
78
|
+
core.debug(`Install.build vspec: ${vspec}`);
|
|
79
|
+
const installCache = new Cache({
|
|
80
|
+
htcName: 'cosign-build-bin',
|
|
81
|
+
htcVersion: vspec,
|
|
82
|
+
baseCacheDir: path.join(os.homedir(), '.bin'),
|
|
83
|
+
cacheFile: os.platform() == 'win32' ? 'cosign.exe' : 'cosign',
|
|
84
|
+
ghaNoCache: ghaNoCache
|
|
154
85
|
});
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
core.info(`Binary path: ${cosignPath}`);
|
|
171
|
-
return cosignPath;
|
|
86
|
+
const cacheFoundPath = await installCache.find();
|
|
87
|
+
if (cacheFoundPath) {
|
|
88
|
+
core.info(`Cosign binary found in ${cacheFoundPath}`);
|
|
89
|
+
return cacheFoundPath;
|
|
90
|
+
}
|
|
91
|
+
const outputDir = path.join(Context.tmpDir(), 'cosign-build-cache');
|
|
92
|
+
const buildCmd = await this.buildCommand(gitContext, outputDir);
|
|
93
|
+
const buildBinPath = await Exec.getExecOutput(buildCmd.command, buildCmd.args, {
|
|
94
|
+
ignoreReturnCode: true,
|
|
95
|
+
input: Buffer.from(dockerfileContent)
|
|
96
|
+
}).then(res => {
|
|
97
|
+
if (res.stderr.length > 0 && res.exitCode != 0) {
|
|
98
|
+
throw new Error(`build failed with: ${res.stderr.match(/(.*)\s*$/)?.[0]?.trim() ?? 'unknown error'}`);
|
|
99
|
+
}
|
|
100
|
+
return `${outputDir}/cosign`;
|
|
172
101
|
});
|
|
102
|
+
const cacheSavePath = await installCache.save(buildBinPath, skipState);
|
|
103
|
+
core.info(`Cached to ${cacheSavePath}`);
|
|
104
|
+
return cacheSavePath;
|
|
173
105
|
}
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
buildStandalone = true;
|
|
190
|
-
}
|
|
191
|
-
else if (buildxPluginFound) {
|
|
192
|
-
core.debug(`Install.buildCommand: Buildx standalone not found, but plugin found so trying to build with it`);
|
|
193
|
-
buildStandalone = false;
|
|
194
|
-
}
|
|
195
|
-
else {
|
|
196
|
-
throw new Error(`Neither buildx standalone or plugin have been found to build from ref ${gitContext}`);
|
|
197
|
-
}
|
|
198
|
-
const args = ['build', '--platform', 'local', '--build-arg', 'BUILDKIT_CONTEXT_KEEP_GIT_DIR=1', '--output', `type=local,dest=${outputDir}`];
|
|
199
|
-
if (process.env.GIT_AUTH_TOKEN) {
|
|
200
|
-
args.push('--secret', 'id=GIT_AUTH_TOKEN');
|
|
201
|
-
}
|
|
202
|
-
args.push('-f-', gitContext);
|
|
203
|
-
// prettier-ignore
|
|
204
|
-
return yield new buildx_1.Buildx({ standalone: buildStandalone }).getCommand(args);
|
|
205
|
-
});
|
|
106
|
+
async install(binPath, dest) {
|
|
107
|
+
dest = dest || Context.tmpDir();
|
|
108
|
+
const binDir = path.join(dest, 'cosign-bin');
|
|
109
|
+
if (!fs.existsSync(binDir)) {
|
|
110
|
+
fs.mkdirSync(binDir, { recursive: true });
|
|
111
|
+
}
|
|
112
|
+
const binName = os.platform() == 'win32' ? 'cosign.exe' : 'cosign';
|
|
113
|
+
const cosignPath = path.join(binDir, binName);
|
|
114
|
+
fs.copyFileSync(binPath, cosignPath);
|
|
115
|
+
core.info('Fixing perms');
|
|
116
|
+
fs.chmodSync(cosignPath, '0755');
|
|
117
|
+
core.addPath(binDir);
|
|
118
|
+
core.info('Added Cosign to PATH');
|
|
119
|
+
core.info(`Binary path: ${cosignPath}`);
|
|
120
|
+
return cosignPath;
|
|
206
121
|
}
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
core.debug(`Install.
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
core.
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
122
|
+
async buildCommand(gitContext, outputDir) {
|
|
123
|
+
const buildxStandaloneFound = await new Buildx({ standalone: true }).isAvailable();
|
|
124
|
+
const buildxPluginFound = await new Buildx({ standalone: false }).isAvailable();
|
|
125
|
+
let buildStandalone = false;
|
|
126
|
+
if ((await this.buildx.isStandalone()) && buildxStandaloneFound) {
|
|
127
|
+
core.debug(`Install.buildCommand: Buildx standalone found, build with it`);
|
|
128
|
+
buildStandalone = true;
|
|
129
|
+
}
|
|
130
|
+
else if (!(await this.buildx.isStandalone()) && buildxPluginFound) {
|
|
131
|
+
core.debug(`Install.buildCommand: Buildx plugin found, build with it`);
|
|
132
|
+
buildStandalone = false;
|
|
133
|
+
}
|
|
134
|
+
else if (buildxStandaloneFound) {
|
|
135
|
+
core.debug(`Install.buildCommand: Buildx plugin not found, but standalone found so trying to build with it`);
|
|
136
|
+
buildStandalone = true;
|
|
137
|
+
}
|
|
138
|
+
else if (buildxPluginFound) {
|
|
139
|
+
core.debug(`Install.buildCommand: Buildx standalone not found, but plugin found so trying to build with it`);
|
|
140
|
+
buildStandalone = false;
|
|
141
|
+
}
|
|
142
|
+
else {
|
|
143
|
+
throw new Error(`Neither buildx standalone or plugin have been found to build from ref ${gitContext}`);
|
|
144
|
+
}
|
|
145
|
+
const args = ['build', '--platform', 'local', '--build-arg', 'BUILDKIT_CONTEXT_KEEP_GIT_DIR=1', '--output', `type=local,dest=${outputDir}`];
|
|
146
|
+
if (process.env.GIT_AUTH_TOKEN) {
|
|
147
|
+
args.push('--secret', 'id=GIT_AUTH_TOKEN');
|
|
148
|
+
}
|
|
149
|
+
args.push('-f-', gitContext);
|
|
150
|
+
// prettier-ignore
|
|
151
|
+
return await new Buildx({ standalone: buildStandalone }).getCommand(args);
|
|
152
|
+
}
|
|
153
|
+
async verifySignature(cosignBinPath, downloadURL) {
|
|
154
|
+
const bundleURL = `${downloadURL}.sigstore.json`;
|
|
155
|
+
core.info(`Downloading keyless verification bundle at ${bundleURL}`);
|
|
156
|
+
const bundlePath = await tc.downloadTool(bundleURL, undefined, this.githubToken);
|
|
157
|
+
core.debug(`Install.verifySignature bundlePath: ${bundlePath}`);
|
|
158
|
+
const verifyResult = await this.sigstore.verifyArtifact(cosignBinPath, bundlePath, {
|
|
159
|
+
subjectAlternativeName: 'keyless@projectsigstore.iam.gserviceaccount.com',
|
|
160
|
+
issuer: 'https://accounts.google.com'
|
|
233
161
|
});
|
|
162
|
+
core.info(`Cosign binary signature verified! ${verifyResult.tlogID ? `${SEARCH_URL}?logIndex=${verifyResult.tlogID}` : ''}`);
|
|
234
163
|
}
|
|
235
164
|
filename() {
|
|
236
165
|
let arch;
|
|
237
|
-
switch (
|
|
166
|
+
switch (os.arch()) {
|
|
238
167
|
case 'x64': {
|
|
239
168
|
arch = 'amd64';
|
|
240
169
|
break;
|
|
@@ -244,64 +173,57 @@ class Install {
|
|
|
244
173
|
break;
|
|
245
174
|
}
|
|
246
175
|
default: {
|
|
247
|
-
arch =
|
|
176
|
+
arch = os.arch();
|
|
248
177
|
break;
|
|
249
178
|
}
|
|
250
179
|
}
|
|
251
|
-
const platform =
|
|
252
|
-
const ext =
|
|
180
|
+
const platform = os.platform() == 'win32' ? 'windows' : os.platform();
|
|
181
|
+
const ext = os.platform() == 'win32' ? '.exe' : '';
|
|
253
182
|
return util.format('cosign-%s-%s%s', platform, arch, ext);
|
|
254
183
|
}
|
|
255
|
-
vspec(versionOrRef) {
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
return hash;
|
|
279
|
-
});
|
|
280
|
-
}
|
|
281
|
-
static getDownloadVersion(v) {
|
|
282
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
283
|
-
return {
|
|
284
|
-
version: v,
|
|
285
|
-
downloadURL: 'https://github.com/sigstore/cosign/releases/download/v%s/%s',
|
|
286
|
-
contentOpts: {
|
|
287
|
-
owner: 'docker',
|
|
288
|
-
repo: 'actions-toolkit',
|
|
289
|
-
ref: 'main',
|
|
290
|
-
path: '.github/cosign-releases.json'
|
|
291
|
-
}
|
|
292
|
-
};
|
|
293
|
-
});
|
|
184
|
+
async vspec(versionOrRef) {
|
|
185
|
+
if (!Util.isValidRef(versionOrRef)) {
|
|
186
|
+
const v = versionOrRef.replace(/^v+|v+$/g, '');
|
|
187
|
+
core.info(`Use ${v} version spec cache key for ${versionOrRef}`);
|
|
188
|
+
return v;
|
|
189
|
+
}
|
|
190
|
+
// eslint-disable-next-line prefer-const
|
|
191
|
+
let [baseURL, ref] = versionOrRef.split('#');
|
|
192
|
+
if (ref.length == 0) {
|
|
193
|
+
ref = 'master';
|
|
194
|
+
}
|
|
195
|
+
let sha;
|
|
196
|
+
if (ref.match(/^[0-9a-fA-F]{40}$/)) {
|
|
197
|
+
sha = ref;
|
|
198
|
+
}
|
|
199
|
+
else {
|
|
200
|
+
sha = await Git.remoteSha(baseURL, ref, process.env.GIT_AUTH_TOKEN);
|
|
201
|
+
}
|
|
202
|
+
const [owner, repo] = baseURL.substring('https://github.com/'.length).split('/');
|
|
203
|
+
const key = `${owner}/${Util.trimSuffix(repo, '.git')}/${sha}`;
|
|
204
|
+
const hash = Util.hash(key);
|
|
205
|
+
core.info(`Use ${hash} version spec cache key for ${key}`);
|
|
206
|
+
return hash;
|
|
294
207
|
}
|
|
295
|
-
static
|
|
296
|
-
return
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
208
|
+
static async getDownloadVersion(v) {
|
|
209
|
+
return {
|
|
210
|
+
version: v,
|
|
211
|
+
downloadURL: 'https://github.com/sigstore/cosign/releases/download/v%s/%s',
|
|
212
|
+
contentOpts: {
|
|
213
|
+
owner: 'docker',
|
|
214
|
+
repo: 'actions-toolkit',
|
|
215
|
+
ref: 'main',
|
|
216
|
+
path: '.github/cosign-releases.json'
|
|
301
217
|
}
|
|
302
|
-
|
|
303
|
-
|
|
218
|
+
};
|
|
219
|
+
}
|
|
220
|
+
static async getRelease(version, githubToken) {
|
|
221
|
+
const github = new GitHub({ token: githubToken });
|
|
222
|
+
const releases = await github.releases('Cosign', version.contentOpts);
|
|
223
|
+
if (!releases[version.version]) {
|
|
224
|
+
throw new Error(`Cannot find Cosign release ${version.version} in releases JSON`);
|
|
225
|
+
}
|
|
226
|
+
return releases[version.version];
|
|
304
227
|
}
|
|
305
228
|
}
|
|
306
|
-
exports.Install = Install;
|
|
307
229
|
//# sourceMappingURL=install.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/cosign/install.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/cosign/install.ts"],"names":[],"mappings":"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"}
|
package/lib/docker/assets.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
/**
|
|
3
2
|
* Copyright 2023 actions-toolkit authors
|
|
4
3
|
*
|
|
@@ -14,37 +13,29 @@
|
|
|
14
13
|
* See the License for the specific language governing permissions and
|
|
15
14
|
* limitations under the License.
|
|
16
15
|
*/
|
|
17
|
-
|
|
18
|
-
|
|
16
|
+
import fs from 'fs';
|
|
17
|
+
import { Context } from '../context.js';
|
|
18
|
+
export const setupDockerWinPs1 = () => {
|
|
19
|
+
return get('docker-setup-win.ps1', setupDockerWinPs1Data);
|
|
19
20
|
};
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
const fs_1 = __importDefault(require("fs"));
|
|
23
|
-
const context_1 = require("../context");
|
|
24
|
-
const setupDockerWinPs1 = () => {
|
|
25
|
-
return get('docker-setup-win.ps1', exports.setupDockerWinPs1Data);
|
|
21
|
+
export const dockerServiceLogsPs1 = () => {
|
|
22
|
+
return get('docker-service-logs.ps1', dockerServiceLogsPs1Data);
|
|
26
23
|
};
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
return get('docker-service-logs.ps1', exports.dockerServiceLogsPs1Data);
|
|
24
|
+
export const limaYaml = () => {
|
|
25
|
+
return get('lima.yaml', limaYamlData);
|
|
30
26
|
};
|
|
31
|
-
exports.dockerServiceLogsPs1 = dockerServiceLogsPs1;
|
|
32
|
-
const limaYaml = () => {
|
|
33
|
-
return get('lima.yaml', exports.limaYamlData);
|
|
34
|
-
};
|
|
35
|
-
exports.limaYaml = limaYaml;
|
|
36
27
|
const get = (filename, data, mode) => {
|
|
37
|
-
const assetPath =
|
|
28
|
+
const assetPath = Context.tmpName({
|
|
38
29
|
template: `docker-asset-XXXXXX-${filename}`,
|
|
39
|
-
tmpdir:
|
|
30
|
+
tmpdir: Context.tmpDir()
|
|
40
31
|
});
|
|
41
|
-
|
|
32
|
+
fs.writeFileSync(assetPath, data);
|
|
42
33
|
if (mode) {
|
|
43
|
-
|
|
34
|
+
fs.chmodSync(assetPath, mode);
|
|
44
35
|
}
|
|
45
36
|
return assetPath;
|
|
46
37
|
};
|
|
47
|
-
|
|
38
|
+
export const setupDockerWinPs1Data = `
|
|
48
39
|
[CmdletBinding()]
|
|
49
40
|
param(
|
|
50
41
|
[Parameter(Mandatory = $true)]
|
|
@@ -134,13 +125,13 @@ While ($true) {
|
|
|
134
125
|
}
|
|
135
126
|
Write-Host "Docker daemon started successfully!"
|
|
136
127
|
`;
|
|
137
|
-
|
|
128
|
+
export const dockerServiceLogsPs1Data = `
|
|
138
129
|
Get-WinEvent -ea SilentlyContinue \`
|
|
139
130
|
-FilterHashtable @{ProviderName= "docker"; LogName = "application"} |
|
|
140
131
|
Sort-Object @{Expression="TimeCreated";Descending=$false} |
|
|
141
132
|
ForEach-Object {"$($_.TimeCreated.ToUniversalTime().ToString("o")) [$($_.LevelDisplayName)] $($_.Message)"}
|
|
142
133
|
`;
|
|
143
|
-
|
|
134
|
+
export const limaYamlData = `
|
|
144
135
|
# Source:
|
|
145
136
|
# - https://github.com/lima-vm/lima/blob/master/templates/docker-rootful.yaml
|
|
146
137
|
# - https://github.com/lima-vm/lima/blob/master/templates/_images/ubuntu-lts.yaml
|
package/lib/docker/assets.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assets.js","sourceRoot":"","sources":["../../src/docker/assets.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"assets.js","sourceRoot":"","sources":["../../src/docker/assets.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAC,OAAO,EAAC,MAAM,eAAe,CAAC;AAEtC,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAW,EAAE;IAC5C,OAAO,GAAG,CAAC,sBAAsB,EAAE,qBAAqB,CAAC,CAAC;AAC5D,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAW,EAAE;IAC/C,OAAO,GAAG,CAAC,yBAAyB,EAAE,wBAAwB,CAAC,CAAC;AAClE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAW,EAAE;IACnC,OAAO,GAAG,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;AACxC,CAAC,CAAC;AAEF,MAAM,GAAG,GAAG,CAAC,QAAgB,EAAE,IAAY,EAAE,IAAa,EAAU,EAAE;IACpE,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC;QAChC,QAAQ,EAAE,uBAAuB,QAAQ,EAAE;QAC3C,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE;KACzB,CAAC,CAAC;IACH,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAClC,IAAI,IAAI,EAAE,CAAC;QACT,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAChC,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyFpC,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG;;;;;CAKvC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4L3B,CAAC"}
|