@docker/actions-toolkit 0.75.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 +361 -344
- 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
|
@@ -13,9 +13,9 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
import { Buildx } from '../buildx/buildx';
|
|
17
|
-
import { Config } from './config';
|
|
18
|
-
import { BuilderInfo, NodeInfo } from '../types/buildx/builder';
|
|
16
|
+
import { Buildx } from '../buildx/buildx.js';
|
|
17
|
+
import { Config } from './config.js';
|
|
18
|
+
import { BuilderInfo, NodeInfo } from '../types/buildx/builder.js';
|
|
19
19
|
export interface BuildKitOpts {
|
|
20
20
|
buildx?: Buildx;
|
|
21
21
|
}
|
package/lib/buildkit/buildkit.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
/**
|
|
3
2
|
* Copyright 2023 actions-toolkit authors
|
|
4
3
|
*
|
|
@@ -14,132 +13,83 @@
|
|
|
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
|
-
o[k2] = m[k];
|
|
27
|
-
}));
|
|
28
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
29
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
30
|
-
}) : function(o, v) {
|
|
31
|
-
o["default"] = v;
|
|
32
|
-
});
|
|
33
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
34
|
-
var ownKeys = function(o) {
|
|
35
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
36
|
-
var ar = [];
|
|
37
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
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
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
60
|
-
exports.BuildKit = void 0;
|
|
61
|
-
const core = __importStar(require("@actions/core"));
|
|
62
|
-
const semver = __importStar(require("semver"));
|
|
63
|
-
const buildx_1 = require("../buildx/buildx");
|
|
64
|
-
const builder_1 = require("../buildx/builder");
|
|
65
|
-
const docker_1 = require("../docker/docker");
|
|
66
|
-
const config_1 = require("./config");
|
|
67
|
-
class BuildKit {
|
|
16
|
+
import * as core from '@actions/core';
|
|
17
|
+
import * as semver from 'semver';
|
|
18
|
+
import { Buildx } from '../buildx/buildx.js';
|
|
19
|
+
import { Builder } from '../buildx/builder.js';
|
|
20
|
+
import { Docker } from '../docker/docker.js';
|
|
21
|
+
import { Config } from './config.js';
|
|
22
|
+
export class BuildKit {
|
|
23
|
+
buildx;
|
|
24
|
+
config;
|
|
68
25
|
constructor(opts) {
|
|
69
|
-
this.config = new
|
|
70
|
-
this.buildx =
|
|
26
|
+
this.config = new Config();
|
|
27
|
+
this.buildx = opts?.buildx || new Buildx();
|
|
71
28
|
}
|
|
72
|
-
getVersion(node) {
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
return yield this.getVersionWithinImage(node.name);
|
|
77
|
-
}
|
|
78
|
-
catch (e) {
|
|
79
|
-
core.warning(e);
|
|
80
|
-
}
|
|
29
|
+
async getVersion(node) {
|
|
30
|
+
if (!node.buildkit && node.name) {
|
|
31
|
+
try {
|
|
32
|
+
return await this.getVersionWithinImage(node.name);
|
|
81
33
|
}
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
}
|
|
85
|
-
getVersionWithinImage(nodeName) {
|
|
86
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
87
|
-
core.debug(`BuildKit.getVersionWithinImage nodeName: ${nodeName}`);
|
|
88
|
-
return docker_1.Docker.getExecOutput(['inspect', '--format', '{{.Config.Image}}', `${buildx_1.Buildx.containerNamePrefix}${nodeName}`], {
|
|
89
|
-
ignoreReturnCode: true,
|
|
90
|
-
silent: true
|
|
91
|
-
}).then(bkitimage => {
|
|
92
|
-
if (bkitimage.exitCode == 0 && bkitimage.stdout.length > 0) {
|
|
93
|
-
core.debug(`BuildKit.getVersionWithinImage image: ${bkitimage.stdout.trim()}`);
|
|
94
|
-
return docker_1.Docker.getExecOutput(['run', '--rm', bkitimage.stdout.trim(), '--version'], {
|
|
95
|
-
ignoreReturnCode: true,
|
|
96
|
-
silent: true
|
|
97
|
-
}).then(bkitversion => {
|
|
98
|
-
if (bkitversion.exitCode == 0 && bkitversion.stdout.length > 0) {
|
|
99
|
-
return `${bkitimage.stdout.trim()} => ${bkitversion.stdout.trim()}`;
|
|
100
|
-
}
|
|
101
|
-
else if (bkitversion.stderr.length > 0) {
|
|
102
|
-
throw new Error(bkitimage.stderr.trim());
|
|
103
|
-
}
|
|
104
|
-
return bkitversion.stdout.trim();
|
|
105
|
-
});
|
|
106
|
-
}
|
|
107
|
-
else if (bkitimage.stderr.length > 0) {
|
|
108
|
-
throw new Error(bkitimage.stderr.trim());
|
|
109
|
-
}
|
|
110
|
-
return bkitimage.stdout.trim();
|
|
111
|
-
});
|
|
112
|
-
});
|
|
113
|
-
}
|
|
114
|
-
versionSatisfies(builderName, range, builderInfo) {
|
|
115
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
116
|
-
if (!builderInfo) {
|
|
117
|
-
builderInfo = yield new builder_1.Builder({ buildx: this.buildx }).inspect(builderName);
|
|
34
|
+
catch (e) {
|
|
35
|
+
core.warning(e);
|
|
118
36
|
}
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
37
|
+
}
|
|
38
|
+
return node.buildkit;
|
|
39
|
+
}
|
|
40
|
+
async getVersionWithinImage(nodeName) {
|
|
41
|
+
core.debug(`BuildKit.getVersionWithinImage nodeName: ${nodeName}`);
|
|
42
|
+
return Docker.getExecOutput(['inspect', '--format', '{{.Config.Image}}', `${Buildx.containerNamePrefix}${nodeName}`], {
|
|
43
|
+
ignoreReturnCode: true,
|
|
44
|
+
silent: true
|
|
45
|
+
}).then(bkitimage => {
|
|
46
|
+
if (bkitimage.exitCode == 0 && bkitimage.stdout.length > 0) {
|
|
47
|
+
core.debug(`BuildKit.getVersionWithinImage image: ${bkitimage.stdout.trim()}`);
|
|
48
|
+
return Docker.getExecOutput(['run', '--rm', bkitimage.stdout.trim(), '--version'], {
|
|
49
|
+
ignoreReturnCode: true,
|
|
50
|
+
silent: true
|
|
51
|
+
}).then(bkitversion => {
|
|
52
|
+
if (bkitversion.exitCode == 0 && bkitversion.stdout.length > 0) {
|
|
53
|
+
return `${bkitimage.stdout.trim()} => ${bkitversion.stdout.trim()}`;
|
|
125
54
|
}
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
return false;
|
|
55
|
+
else if (bkitversion.stderr.length > 0) {
|
|
56
|
+
throw new Error(bkitimage.stderr.trim());
|
|
129
57
|
}
|
|
58
|
+
return bkitversion.stdout.trim();
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
else if (bkitimage.stderr.length > 0) {
|
|
62
|
+
throw new Error(bkitimage.stderr.trim());
|
|
63
|
+
}
|
|
64
|
+
return bkitimage.stdout.trim();
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
async versionSatisfies(builderName, range, builderInfo) {
|
|
68
|
+
if (!builderInfo) {
|
|
69
|
+
builderInfo = await new Builder({ buildx: this.buildx }).inspect(builderName);
|
|
70
|
+
}
|
|
71
|
+
for (const node of builderInfo.nodes) {
|
|
72
|
+
let bkversion = node.buildkit;
|
|
73
|
+
core.debug(`BuildKit.versionSatisfies ${bkversion}: ${range}`);
|
|
74
|
+
if (!bkversion) {
|
|
75
|
+
try {
|
|
76
|
+
bkversion = await this.getVersionWithinImage(node.name || '');
|
|
130
77
|
}
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
if (builderInfo.driver == 'docker' && !bkversion.endsWith('-moby')) {
|
|
134
|
-
return false;
|
|
135
|
-
}
|
|
136
|
-
if (!semver.satisfies(bkversion.replace(/-moby$/, ''), range)) {
|
|
78
|
+
catch {
|
|
79
|
+
core.debug(`BuildKit.versionSatisfies ${node.name}: can't get version`);
|
|
137
80
|
return false;
|
|
138
81
|
}
|
|
139
82
|
}
|
|
140
|
-
|
|
141
|
-
|
|
83
|
+
core.debug(`BuildKit.versionSatisfies ${node.name}: version ${bkversion}`);
|
|
84
|
+
// BuildKit version reported by moby is in the format of `v0.11.0-moby`
|
|
85
|
+
if (builderInfo.driver == 'docker' && !bkversion.endsWith('-moby')) {
|
|
86
|
+
return false;
|
|
87
|
+
}
|
|
88
|
+
if (!semver.satisfies(bkversion.replace(/-moby$/, ''), range)) {
|
|
89
|
+
return false;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
return true;
|
|
142
93
|
}
|
|
143
94
|
}
|
|
144
|
-
exports.BuildKit = BuildKit;
|
|
145
95
|
//# sourceMappingURL=buildkit.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildkit.js","sourceRoot":"","sources":["../../src/buildkit/buildkit.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"buildkit.js","sourceRoot":"","sources":["../../src/buildkit/buildkit.ts"],"names":[],"mappings":"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"}
|
package/lib/buildkit/config.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
/**
|
|
3
2
|
* Copyright 2023 actions-toolkit authors
|
|
4
3
|
*
|
|
@@ -14,14 +13,9 @@
|
|
|
14
13
|
* See the License for the specific language governing permissions and
|
|
15
14
|
* limitations under the License.
|
|
16
15
|
*/
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
-
exports.Config = void 0;
|
|
22
|
-
const fs_1 = __importDefault(require("fs"));
|
|
23
|
-
const context_1 = require("../context");
|
|
24
|
-
class Config {
|
|
16
|
+
import fs from 'fs';
|
|
17
|
+
import { Context } from '../context.js';
|
|
18
|
+
export class Config {
|
|
25
19
|
resolveFromString(s) {
|
|
26
20
|
return this.resolve(s, false);
|
|
27
21
|
}
|
|
@@ -30,15 +24,14 @@ class Config {
|
|
|
30
24
|
}
|
|
31
25
|
resolve(s, file) {
|
|
32
26
|
if (file) {
|
|
33
|
-
if (!
|
|
27
|
+
if (!fs.existsSync(s)) {
|
|
34
28
|
throw new Error(`config file ${s} not found`);
|
|
35
29
|
}
|
|
36
|
-
s =
|
|
30
|
+
s = fs.readFileSync(s, { encoding: 'utf-8' });
|
|
37
31
|
}
|
|
38
|
-
const configFile =
|
|
39
|
-
|
|
32
|
+
const configFile = Context.tmpName({ tmpdir: Context.tmpDir() });
|
|
33
|
+
fs.writeFileSync(configFile, s);
|
|
40
34
|
return configFile;
|
|
41
35
|
}
|
|
42
36
|
}
|
|
43
|
-
exports.Config = Config;
|
|
44
37
|
//# sourceMappingURL=config.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/buildkit/config.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/buildkit/config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,OAAO,EAAC,OAAO,EAAC,MAAM,eAAe,CAAC;AAEtC,MAAM,OAAO,MAAM;IACV,iBAAiB,CAAC,CAAS;QAChC,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IAChC,CAAC;IAEM,eAAe,CAAC,CAAS;QAC9B,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC/B,CAAC;IAEO,OAAO,CAAC,CAAS,EAAE,IAAa;QACtC,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;YAChD,CAAC;YACD,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,EAAC,QAAQ,EAAE,OAAO,EAAC,CAAC,CAAC;QAC9C,CAAC;QACD,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,EAAC,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,EAAC,CAAC,CAAC;QAC/D,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QAChC,OAAO,UAAU,CAAC;IACpB,CAAC;CACF"}
|
package/lib/buildkit/git.d.ts
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
import { GitRef, GitURL } from '../types/buildkit/git';
|
|
16
|
+
import { GitRef, GitURL } from '../types/buildkit/git.js';
|
|
17
17
|
export declare class Git {
|
|
18
18
|
private static protoRegexp;
|
|
19
19
|
private static supportedProtos;
|
package/lib/buildkit/git.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
/**
|
|
3
2
|
* Copyright 2024 actions-toolkit authors
|
|
4
3
|
*
|
|
@@ -14,9 +13,14 @@
|
|
|
14
13
|
* See the License for the specific language governing permissions and
|
|
15
14
|
* limitations under the License.
|
|
16
15
|
*/
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
16
|
+
export class Git {
|
|
17
|
+
static protoRegexp = new RegExp('^[a-zA-Z0-9]+://');
|
|
18
|
+
static supportedProtos = {
|
|
19
|
+
http: {},
|
|
20
|
+
https: {},
|
|
21
|
+
ssh: {},
|
|
22
|
+
git: {}
|
|
23
|
+
};
|
|
20
24
|
// https://github.com/moby/buildkit/blob/2ec1338fc13f73b43f0b1b4f4678d7cd654bc86c/util/gitutil/git_url.go#L79
|
|
21
25
|
static parseURL(remote) {
|
|
22
26
|
const match = remote.match(Git.protoRegexp);
|
|
@@ -96,12 +100,4 @@ class Git {
|
|
|
96
100
|
return res;
|
|
97
101
|
}
|
|
98
102
|
}
|
|
99
|
-
exports.Git = Git;
|
|
100
|
-
Git.protoRegexp = new RegExp('^[a-zA-Z0-9]+://');
|
|
101
|
-
Git.supportedProtos = {
|
|
102
|
-
http: {},
|
|
103
|
-
https: {},
|
|
104
|
-
ssh: {},
|
|
105
|
-
git: {}
|
|
106
|
-
};
|
|
107
103
|
//# sourceMappingURL=git.js.map
|
package/lib/buildkit/git.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"git.js","sourceRoot":"","sources":["../../src/buildkit/git.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"git.js","sourceRoot":"","sources":["../../src/buildkit/git.ts"],"names":[],"mappings":"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"}
|
package/lib/buildx/bake.d.ts
CHANGED
|
@@ -13,11 +13,11 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
import { Buildx } from './buildx';
|
|
16
|
+
import { Buildx } from './buildx.js';
|
|
17
17
|
import { ExecOptions } from '@actions/exec';
|
|
18
|
-
import { AttestEntry, BakeDefinition, ExportEntry } from '../types/buildx/bake';
|
|
19
|
-
import { BuildMetadata } from '../types/buildx/build';
|
|
20
|
-
import { VertexWarning } from '../types/buildkit/client';
|
|
18
|
+
import { AttestEntry, BakeDefinition, ExportEntry } from '../types/buildx/bake.js';
|
|
19
|
+
import { BuildMetadata } from '../types/buildx/build.js';
|
|
20
|
+
import { VertexWarning } from '../types/buildkit/client.js';
|
|
21
21
|
export interface BakeOpts {
|
|
22
22
|
buildx?: Buildx;
|
|
23
23
|
}
|
package/lib/buildx/bake.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
/**
|
|
3
2
|
* Copyright 2023 actions-toolkit authors
|
|
4
3
|
*
|
|
@@ -14,41 +13,29 @@
|
|
|
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
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
28
|
-
};
|
|
29
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
|
-
exports.Bake = void 0;
|
|
31
|
-
const fs_1 = __importDefault(require("fs"));
|
|
32
|
-
const path_1 = __importDefault(require("path"));
|
|
33
|
-
const sync_1 = require("csv-parse/sync");
|
|
34
|
-
const buildx_1 = require("./buildx");
|
|
35
|
-
const context_1 = require("../context");
|
|
36
|
-
const exec_1 = require("../exec");
|
|
37
|
-
const util_1 = require("../util");
|
|
38
|
-
class Bake {
|
|
16
|
+
import fs from 'fs';
|
|
17
|
+
import path from 'path';
|
|
18
|
+
import { parse } from 'csv-parse/sync';
|
|
19
|
+
import { Buildx } from './buildx.js';
|
|
20
|
+
import { Context } from '../context.js';
|
|
21
|
+
import { Exec } from '../exec.js';
|
|
22
|
+
import { Util } from '../util.js';
|
|
23
|
+
export class Bake {
|
|
24
|
+
buildx;
|
|
25
|
+
metadataFilename;
|
|
39
26
|
constructor(opts) {
|
|
40
|
-
this.buildx =
|
|
41
|
-
this.metadataFilename = `bake-metadata-${
|
|
27
|
+
this.buildx = opts?.buildx || new Buildx();
|
|
28
|
+
this.metadataFilename = `bake-metadata-${Util.generateRandomString()}.json`;
|
|
42
29
|
}
|
|
43
30
|
getMetadataFilePath() {
|
|
44
|
-
return
|
|
31
|
+
return path.join(Context.tmpDir(), this.metadataFilename);
|
|
45
32
|
}
|
|
46
33
|
resolveMetadata() {
|
|
47
34
|
const metadataFile = this.getMetadataFilePath();
|
|
48
|
-
if (!
|
|
35
|
+
if (!fs.existsSync(metadataFile)) {
|
|
49
36
|
return undefined;
|
|
50
37
|
}
|
|
51
|
-
const content =
|
|
38
|
+
const content = fs.readFileSync(metadataFile, { encoding: 'utf-8' }).trim();
|
|
52
39
|
if (content === 'null') {
|
|
53
40
|
return undefined;
|
|
54
41
|
}
|
|
@@ -81,72 +68,69 @@ class Bake {
|
|
|
81
68
|
}
|
|
82
69
|
return undefined;
|
|
83
70
|
}
|
|
84
|
-
getDefinition(cmdOpts, execOptions) {
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
continue;
|
|
97
|
-
}
|
|
98
|
-
if (!util_1.Util.isValidRef(source)) {
|
|
99
|
-
files.push(source);
|
|
100
|
-
continue;
|
|
101
|
-
}
|
|
102
|
-
if (remoteDef) {
|
|
103
|
-
throw new Error(`Only one remote bake definition can be defined`);
|
|
104
|
-
}
|
|
105
|
-
remoteDef = source;
|
|
71
|
+
async getDefinition(cmdOpts, execOptions) {
|
|
72
|
+
execOptions = execOptions || { ignoreReturnCode: true };
|
|
73
|
+
execOptions.ignoreReturnCode = true;
|
|
74
|
+
execOptions.env = Object.assign({}, process.env, execOptions.env || {}, cmdOpts.githubToken ? { BUILDX_BAKE_GIT_AUTH_TOKEN: cmdOpts.githubToken } : {});
|
|
75
|
+
const args = ['bake'];
|
|
76
|
+
let remoteDef;
|
|
77
|
+
const files = [];
|
|
78
|
+
const sources = [...(cmdOpts.files || []), cmdOpts.source];
|
|
79
|
+
if (sources) {
|
|
80
|
+
for (const source of sources.map(v => (v ? v.trim() : ''))) {
|
|
81
|
+
if (source.length == 0) {
|
|
82
|
+
continue;
|
|
106
83
|
}
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
}
|
|
111
|
-
for (const file of files) {
|
|
112
|
-
args.push('--file', file);
|
|
113
|
-
}
|
|
114
|
-
if (cmdOpts.overrides) {
|
|
115
|
-
for (const override of cmdOpts.overrides) {
|
|
116
|
-
args.push('--set', override);
|
|
84
|
+
if (!Util.isValidRef(source)) {
|
|
85
|
+
files.push(source);
|
|
86
|
+
continue;
|
|
117
87
|
}
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
for (const allow of cmdOpts.allow) {
|
|
121
|
-
args.push('--allow', allow);
|
|
88
|
+
if (remoteDef) {
|
|
89
|
+
throw new Error(`Only one remote bake definition can be defined`);
|
|
122
90
|
}
|
|
91
|
+
remoteDef = source;
|
|
123
92
|
}
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
args.push('--provenance', cmdOpts.provenance);
|
|
93
|
+
}
|
|
94
|
+
if (remoteDef) {
|
|
95
|
+
args.push(remoteDef);
|
|
96
|
+
}
|
|
97
|
+
for (const file of files) {
|
|
98
|
+
args.push('--file', file);
|
|
99
|
+
}
|
|
100
|
+
if (cmdOpts.overrides) {
|
|
101
|
+
for (const override of cmdOpts.overrides) {
|
|
102
|
+
args.push('--set', override);
|
|
135
103
|
}
|
|
136
|
-
|
|
137
|
-
|
|
104
|
+
}
|
|
105
|
+
if (cmdOpts.allow) {
|
|
106
|
+
for (const allow of cmdOpts.allow) {
|
|
107
|
+
args.push('--allow', allow);
|
|
138
108
|
}
|
|
139
|
-
|
|
140
|
-
|
|
109
|
+
}
|
|
110
|
+
if (cmdOpts.call) {
|
|
111
|
+
args.push('--call', cmdOpts.call);
|
|
112
|
+
}
|
|
113
|
+
if (cmdOpts.load) {
|
|
114
|
+
args.push('--load');
|
|
115
|
+
}
|
|
116
|
+
if (cmdOpts.noCache) {
|
|
117
|
+
args.push('--no-cache');
|
|
118
|
+
}
|
|
119
|
+
if (cmdOpts.provenance) {
|
|
120
|
+
args.push('--provenance', cmdOpts.provenance);
|
|
121
|
+
}
|
|
122
|
+
if (cmdOpts.push) {
|
|
123
|
+
args.push('--push');
|
|
124
|
+
}
|
|
125
|
+
if (cmdOpts.sbom) {
|
|
126
|
+
args.push('--sbom', cmdOpts.sbom);
|
|
127
|
+
}
|
|
128
|
+
const printCmd = await this.buildx.getCommand([...args, '--print', ...(cmdOpts.targets || [])]);
|
|
129
|
+
return await Exec.getExecOutput(printCmd.command, printCmd.args, execOptions).then(res => {
|
|
130
|
+
if (res.stderr.length > 0 && res.exitCode != 0) {
|
|
131
|
+
throw new Error(`cannot parse bake definitions: ${res.stderr.match(/(.*)\s*$/)?.[0]?.trim() ?? 'unknown error'}`);
|
|
141
132
|
}
|
|
142
|
-
|
|
143
|
-
return yield exec_1.Exec.getExecOutput(printCmd.command, printCmd.args, execOptions).then(res => {
|
|
144
|
-
var _a, _b, _c;
|
|
145
|
-
if (res.stderr.length > 0 && res.exitCode != 0) {
|
|
146
|
-
throw new Error(`cannot parse bake definitions: ${(_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'}`);
|
|
147
|
-
}
|
|
148
|
-
return Bake.parseDefinition(res.stdout.trim());
|
|
149
|
-
});
|
|
133
|
+
return Bake.parseDefinition(res.stdout.trim());
|
|
150
134
|
});
|
|
151
135
|
}
|
|
152
136
|
static parseDefinition(dt) {
|
|
@@ -192,7 +176,7 @@ class Bake {
|
|
|
192
176
|
return item;
|
|
193
177
|
}
|
|
194
178
|
const attestEntry = { type: '' };
|
|
195
|
-
const fields =
|
|
179
|
+
const fields = parse(item, {
|
|
196
180
|
relaxColumnCount: true,
|
|
197
181
|
skipEmptyLines: true
|
|
198
182
|
})[0];
|
|
@@ -206,7 +190,7 @@ class Bake {
|
|
|
206
190
|
attestEntry.type = value;
|
|
207
191
|
break;
|
|
208
192
|
case 'disabled':
|
|
209
|
-
attestEntry.disabled =
|
|
193
|
+
attestEntry.disabled = Util.parseBool(value);
|
|
210
194
|
break;
|
|
211
195
|
default:
|
|
212
196
|
attestEntry[key] = value;
|
|
@@ -219,7 +203,7 @@ class Bake {
|
|
|
219
203
|
return item;
|
|
220
204
|
}
|
|
221
205
|
const cacheEntry = { type: '' };
|
|
222
|
-
const fields =
|
|
206
|
+
const fields = parse(item, {
|
|
223
207
|
relaxColumnCount: true,
|
|
224
208
|
skipEmptyLines: true
|
|
225
209
|
})[0];
|
|
@@ -248,7 +232,7 @@ class Bake {
|
|
|
248
232
|
return item;
|
|
249
233
|
}
|
|
250
234
|
const exportEntry = { type: '' };
|
|
251
|
-
const fields =
|
|
235
|
+
const fields = parse(item, {
|
|
252
236
|
relaxColumnCount: true,
|
|
253
237
|
skipEmptyLines: true
|
|
254
238
|
})[0];
|
|
@@ -282,7 +266,7 @@ class Bake {
|
|
|
282
266
|
return item;
|
|
283
267
|
}
|
|
284
268
|
const secretEntry = {};
|
|
285
|
-
const fields =
|
|
269
|
+
const fields = parse(item, {
|
|
286
270
|
relaxColumnCount: true,
|
|
287
271
|
skipEmptyLines: true
|
|
288
272
|
})[0];
|
|
@@ -395,5 +379,4 @@ class Bake {
|
|
|
395
379
|
return attestations;
|
|
396
380
|
}
|
|
397
381
|
}
|
|
398
|
-
exports.Bake = Bake;
|
|
399
382
|
//# sourceMappingURL=bake.js.map
|