@docker/actions-toolkit 0.21.1 → 0.22.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.
Files changed (48) hide show
  1. package/lib/buildkit/buildkit.js +72 -59
  2. package/lib/buildkit/buildkit.js.map +1 -1
  3. package/lib/buildx/bake.d.ts +4 -1
  4. package/lib/buildx/bake.js +103 -59
  5. package/lib/buildx/bake.js.map +1 -1
  6. package/lib/buildx/{inputs.d.ts → build.d.ts} +12 -9
  7. package/lib/buildx/{inputs.js → build.js} +46 -37
  8. package/lib/buildx/build.js.map +1 -0
  9. package/lib/buildx/builder.d.ts +1 -1
  10. package/lib/buildx/builder.js +50 -34
  11. package/lib/buildx/builder.js.map +1 -1
  12. package/lib/buildx/buildx.d.ts +4 -2
  13. package/lib/buildx/buildx.js +124 -65
  14. package/lib/buildx/buildx.js.map +1 -1
  15. package/lib/buildx/install.js +210 -182
  16. package/lib/buildx/install.js.map +1 -1
  17. package/lib/cache.js +68 -58
  18. package/lib/cache.js.map +1 -1
  19. package/lib/context.js +1 -1
  20. package/lib/context.js.map +1 -1
  21. package/lib/docker/docker.js +94 -72
  22. package/lib/docker/docker.js.map +1 -1
  23. package/lib/docker/install.js +347 -321
  24. package/lib/docker/install.js.map +1 -1
  25. package/lib/dockerhub.js +91 -70
  26. package/lib/dockerhub.js.map +1 -1
  27. package/lib/exec.js +19 -6
  28. package/lib/exec.js.map +1 -1
  29. package/lib/git.js +132 -101
  30. package/lib/git.js.map +1 -1
  31. package/lib/github.d.ts +2 -1
  32. package/lib/github.js +134 -35
  33. package/lib/github.js.map +1 -1
  34. package/lib/index.js +26 -15
  35. package/lib/index.js.map +1 -1
  36. package/lib/toolkit.js +0 -6
  37. package/lib/toolkit.js.map +1 -1
  38. package/lib/types/bake.d.ts +3 -0
  39. package/lib/types/build.d.ts +18 -0
  40. package/lib/types/build.js +18 -0
  41. package/lib/types/build.js.map +1 -0
  42. package/lib/types/buildx.d.ts +15 -0
  43. package/lib/types/github.d.ts +11 -0
  44. package/lib/util.d.ts +1 -0
  45. package/lib/util.js +41 -20
  46. package/lib/util.js.map +1 -1
  47. package/package.json +3 -1
  48. package/lib/buildx/inputs.js.map +0 -1
@@ -37,6 +37,15 @@ var __importStar = (this && this.__importStar) || function (mod) {
37
37
  __setModuleDefault(result, mod);
38
38
  return result;
39
39
  };
40
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
41
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
42
+ return new (P || (P = Promise))(function (resolve, reject) {
43
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
44
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
45
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
46
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
47
+ });
48
+ };
40
49
  Object.defineProperty(exports, "__esModule", { value: true });
41
50
  exports.BuildKit = void 0;
42
51
  const core = __importStar(require("@actions/core"));
@@ -46,76 +55,80 @@ const builder_1 = require("../buildx/builder");
46
55
  const config_1 = require("./config");
47
56
  const exec_1 = require("../exec");
48
57
  class BuildKit {
49
- buildx;
50
- config;
51
58
  constructor(opts) {
52
59
  this.config = new config_1.Config();
53
- this.buildx = opts?.buildx || new buildx_1.Buildx();
60
+ this.buildx = (opts === null || opts === void 0 ? void 0 : opts.buildx) || new buildx_1.Buildx();
54
61
  }
55
- async getVersion(node) {
56
- if (!node.buildkit && node.name) {
57
- try {
58
- return await this.getVersionWithinImage(node.name);
59
- }
60
- catch (e) {
61
- core.warning(e);
62
+ getVersion(node) {
63
+ return __awaiter(this, void 0, void 0, function* () {
64
+ if (!node.buildkit && node.name) {
65
+ try {
66
+ return yield this.getVersionWithinImage(node.name);
67
+ }
68
+ catch (e) {
69
+ core.warning(e);
70
+ }
62
71
  }
63
- }
64
- return node.buildkit;
72
+ return node.buildkit;
73
+ });
65
74
  }
66
- async getVersionWithinImage(nodeName) {
67
- core.debug(`BuildKit.getVersionWithinImage nodeName: ${nodeName}`);
68
- return exec_1.Exec.getExecOutput(`docker`, ['inspect', '--format', '{{.Config.Image}}', `${buildx_1.Buildx.containerNamePrefix}${nodeName}`], {
69
- ignoreReturnCode: true,
70
- silent: true
71
- }).then(bkitimage => {
72
- if (bkitimage.exitCode == 0 && bkitimage.stdout.length > 0) {
73
- core.debug(`BuildKit.getVersionWithinImage image: ${bkitimage.stdout.trim()}`);
74
- return exec_1.Exec.getExecOutput(`docker`, ['run', '--rm', bkitimage.stdout.trim(), '--version'], {
75
- ignoreReturnCode: true,
76
- silent: true
77
- }).then(bkitversion => {
78
- if (bkitversion.exitCode == 0 && bkitversion.stdout.length > 0) {
79
- return `${bkitimage.stdout.trim()} => ${bkitversion.stdout.trim()}`;
80
- }
81
- else if (bkitversion.stderr.length > 0) {
82
- throw new Error(bkitimage.stderr.trim());
83
- }
84
- return bkitversion.stdout.trim();
85
- });
86
- }
87
- else if (bkitimage.stderr.length > 0) {
88
- throw new Error(bkitimage.stderr.trim());
89
- }
90
- return bkitimage.stdout.trim();
75
+ getVersionWithinImage(nodeName) {
76
+ return __awaiter(this, void 0, void 0, function* () {
77
+ core.debug(`BuildKit.getVersionWithinImage nodeName: ${nodeName}`);
78
+ return exec_1.Exec.getExecOutput(`docker`, ['inspect', '--format', '{{.Config.Image}}', `${buildx_1.Buildx.containerNamePrefix}${nodeName}`], {
79
+ ignoreReturnCode: true,
80
+ silent: true
81
+ }).then(bkitimage => {
82
+ if (bkitimage.exitCode == 0 && bkitimage.stdout.length > 0) {
83
+ core.debug(`BuildKit.getVersionWithinImage image: ${bkitimage.stdout.trim()}`);
84
+ return exec_1.Exec.getExecOutput(`docker`, ['run', '--rm', bkitimage.stdout.trim(), '--version'], {
85
+ ignoreReturnCode: true,
86
+ silent: true
87
+ }).then(bkitversion => {
88
+ if (bkitversion.exitCode == 0 && bkitversion.stdout.length > 0) {
89
+ return `${bkitimage.stdout.trim()} => ${bkitversion.stdout.trim()}`;
90
+ }
91
+ else if (bkitversion.stderr.length > 0) {
92
+ throw new Error(bkitimage.stderr.trim());
93
+ }
94
+ return bkitversion.stdout.trim();
95
+ });
96
+ }
97
+ else if (bkitimage.stderr.length > 0) {
98
+ throw new Error(bkitimage.stderr.trim());
99
+ }
100
+ return bkitimage.stdout.trim();
101
+ });
91
102
  });
92
103
  }
93
- async versionSatisfies(builderName, range, builderInfo) {
94
- if (!builderInfo) {
95
- builderInfo = await new builder_1.Builder({ buildx: this.buildx }).inspect(builderName);
96
- }
97
- for (const node of builderInfo.nodes) {
98
- let bkversion = node.buildkit;
99
- core.debug(`BuildKit.versionSatisfies ${bkversion}: ${range}`);
100
- if (!bkversion) {
101
- try {
102
- bkversion = await this.getVersionWithinImage(node.name || '');
104
+ versionSatisfies(builderName, range, builderInfo) {
105
+ return __awaiter(this, void 0, void 0, function* () {
106
+ if (!builderInfo) {
107
+ builderInfo = yield new builder_1.Builder({ buildx: this.buildx }).inspect(builderName);
108
+ }
109
+ for (const node of builderInfo.nodes) {
110
+ let bkversion = node.buildkit;
111
+ core.debug(`BuildKit.versionSatisfies ${bkversion}: ${range}`);
112
+ if (!bkversion) {
113
+ try {
114
+ bkversion = yield this.getVersionWithinImage(node.name || '');
115
+ }
116
+ catch (e) {
117
+ core.debug(`BuildKit.versionSatisfies ${node.name}: can't get version`);
118
+ return false;
119
+ }
103
120
  }
104
- catch (e) {
105
- core.debug(`BuildKit.versionSatisfies ${node.name}: can't get version`);
121
+ core.debug(`BuildKit.versionSatisfies ${node.name}: version ${bkversion}`);
122
+ // BuildKit version reported by moby is in the format of `v0.11.0-moby`
123
+ if (builderInfo.driver == 'docker' && !bkversion.endsWith('-moby')) {
124
+ return false;
125
+ }
126
+ if (!semver.satisfies(bkversion.replace(/-moby$/, ''), range)) {
106
127
  return false;
107
128
  }
108
129
  }
109
- core.debug(`BuildKit.versionSatisfies ${node.name}: version ${bkversion}`);
110
- // BuildKit version reported by moby is in the format of `v0.11.0-moby`
111
- if (builderInfo.driver == 'docker' && !bkversion.endsWith('-moby')) {
112
- return false;
113
- }
114
- if (!semver.satisfies(bkversion.replace(/-moby$/, ''), range)) {
115
- return false;
116
- }
117
- }
118
- return true;
130
+ return true;
131
+ });
119
132
  }
120
133
  }
121
134
  exports.BuildKit = BuildKit;
@@ -1 +1 @@
1
- {"version":3,"file":"buildkit.js","sourceRoot":"","sources":["../../src/buildkit/buildkit.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,oDAAsC;AACtC,+CAAiC;AAEjC,6CAAwC;AACxC,+CAA0C;AAC1C,qCAAgC;AAChC,kCAA6B;AAQ7B,MAAa,QAAQ;IACF,MAAM,CAAS;IAEhB,MAAM,CAAS;IAE/B,YAAY,IAAmB;QAC7B,IAAI,CAAC,MAAM,GAAG,IAAI,eAAM,EAAE,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,IAAI,EAAE,MAAM,IAAI,IAAI,eAAM,EAAE,CAAC;IAC7C,CAAC;IAEM,KAAK,CAAC,UAAU,CAAC,IAAc;QACpC,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,EAAE;YAC/B,IAAI;gBACF,OAAO,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACpD;YAAC,OAAO,CAAC,EAAE;gBACV,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;aACjB;SACF;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAEO,KAAK,CAAC,qBAAqB,CAAC,QAAgB;QAClD,IAAI,CAAC,KAAK,CAAC,4CAA4C,QAAQ,EAAE,CAAC,CAAC;QACnE,OAAO,WAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,mBAAmB,EAAE,GAAG,eAAM,CAAC,mBAAmB,GAAG,QAAQ,EAAE,CAAC,EAAE;YAC5H,gBAAgB,EAAE,IAAI;YACtB,MAAM,EAAE,IAAI;SACb,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;YAClB,IAAI,SAAS,CAAC,QAAQ,IAAI,CAAC,IAAI,SAAS,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC1D,IAAI,CAAC,KAAK,CAAC,yCAAyC,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAC/E,OAAO,WAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,WAAW,CAAC,EAAE;oBACzF,gBAAgB,EAAE,IAAI;oBACtB,MAAM,EAAE,IAAI;iBACb,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;oBACpB,IAAI,WAAW,CAAC,QAAQ,IAAI,CAAC,IAAI,WAAW,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;wBAC9D,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,WAAW,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;qBACrE;yBAAM,IAAI,WAAW,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;wBACxC,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;qBAC1C;oBACD,OAAO,WAAW,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;gBACnC,CAAC,CAAC,CAAC;aACJ;iBAAM,IAAI,SAAS,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;gBACtC,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;aAC1C;YACD,OAAO,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,gBAAgB,CAAC,WAAmB,EAAE,KAAa,EAAE,WAAyB;QACzF,IAAI,CAAC,WAAW,EAAE;YAChB,WAAW,GAAG,MAAM,IAAI,iBAAO,CAAC,EAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;SAC7E;QACD,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,KAAK,EAAE;YACpC,IAAI,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC9B,IAAI,CAAC,KAAK,CAAC,6BAA6B,SAAS,KAAK,KAAK,EAAE,CAAC,CAAC;YAC/D,IAAI,CAAC,SAAS,EAAE;gBACd,IAAI;oBACF,SAAS,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;iBAC/D;gBAAC,OAAO,CAAC,EAAE;oBACV,IAAI,CAAC,KAAK,CAAC,6BAA6B,IAAI,CAAC,IAAI,qBAAqB,CAAC,CAAC;oBACxE,OAAO,KAAK,CAAC;iBACd;aACF;YACD,IAAI,CAAC,KAAK,CAAC,6BAA6B,IAAI,CAAC,IAAI,aAAa,SAAS,EAAE,CAAC,CAAC;YAC3E,uEAAuE;YACvE,IAAI,WAAW,CAAC,MAAM,IAAI,QAAQ,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;gBAClE,OAAO,KAAK,CAAC;aACd;YACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE;gBAC7D,OAAO,KAAK,CAAC;aACd;SACF;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAzED,4BAyEC"}
1
+ {"version":3,"file":"buildkit.js","sourceRoot":"","sources":["../../src/buildkit/buildkit.ts"],"names":[],"mappings":"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"}
@@ -15,7 +15,7 @@
15
15
  */
16
16
  import { Buildx } from './buildx';
17
17
  import { ExecOptions } from '@actions/exec';
18
- import { BakeDefinition } from '../types/bake';
18
+ import { BakeDefinition, BakeMetadata } from '../types/bake';
19
19
  export interface BakeOpts {
20
20
  buildx?: Buildx;
21
21
  }
@@ -34,6 +34,9 @@ export interface BakeCmdOpts {
34
34
  export declare class Bake {
35
35
  private readonly buildx;
36
36
  constructor(opts?: BakeOpts);
37
+ static getMetadataFilePath(): string;
38
+ static resolveMetadata(): BakeMetadata | undefined;
39
+ static resolveRefs(): Array<string> | undefined;
37
40
  getDefinition(cmdOpts: BakeCmdOpts, execOptions?: ExecOptions): Promise<BakeDefinition>;
38
41
  static parseDefinition(dt: string): BakeDefinition;
39
42
  static hasLocalExporter(def: BakeDefinition): boolean;
@@ -14,89 +14,133 @@
14
14
  * See the License for the specific language governing permissions and
15
15
  * limitations under the License.
16
16
  */
17
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
18
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
19
+ return new (P || (P = Promise))(function (resolve, reject) {
20
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
21
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
22
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
23
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
24
+ });
25
+ };
26
+ var __importDefault = (this && this.__importDefault) || function (mod) {
27
+ return (mod && mod.__esModule) ? mod : { "default": mod };
28
+ };
17
29
  Object.defineProperty(exports, "__esModule", { value: true });
18
30
  exports.Bake = void 0;
31
+ const fs_1 = __importDefault(require("fs"));
32
+ const path_1 = __importDefault(require("path"));
33
+ const build_1 = require("./build");
19
34
  const buildx_1 = require("./buildx");
35
+ const context_1 = require("../context");
20
36
  const exec_1 = require("../exec");
21
- const inputs_1 = require("./inputs");
22
37
  const util_1 = require("../util");
23
38
  class Bake {
24
- buildx;
25
39
  constructor(opts) {
26
- this.buildx = opts?.buildx || new buildx_1.Buildx();
40
+ this.buildx = (opts === null || opts === void 0 ? void 0 : opts.buildx) || new buildx_1.Buildx();
27
41
  }
28
- async getDefinition(cmdOpts, execOptions) {
29
- execOptions = execOptions || { ignoreReturnCode: true };
30
- execOptions.ignoreReturnCode = true;
31
- if (cmdOpts.githubToken) {
32
- execOptions.env = Object.assign({}, process.env, {
33
- BUILDX_BAKE_GIT_AUTH_TOKEN: cmdOpts.githubToken
34
- });
35
- }
36
- const args = ['bake'];
37
- let remoteDef;
38
- const files = [];
39
- const sources = [...(cmdOpts.files || []), cmdOpts.source];
40
- if (sources) {
41
- for (const source of sources.map(v => (v ? v.trim() : ''))) {
42
- if (source.length == 0) {
43
- continue;
44
- }
45
- if (!util_1.Util.isValidRef(source)) {
46
- files.push(source);
47
- continue;
48
- }
49
- if (remoteDef) {
50
- throw new Error(`Only one remote bake definition can be defined`);
51
- }
52
- remoteDef = source;
53
- }
42
+ static getMetadataFilePath() {
43
+ return path_1.default.join(context_1.Context.tmpDir(), 'metadata-file');
44
+ }
45
+ static resolveMetadata() {
46
+ const metadataFile = Bake.getMetadataFilePath();
47
+ if (!fs_1.default.existsSync(metadataFile)) {
48
+ return undefined;
54
49
  }
55
- if (remoteDef) {
56
- args.push(remoteDef);
50
+ const content = fs_1.default.readFileSync(metadataFile, { encoding: 'utf-8' }).trim();
51
+ if (content === 'null') {
52
+ return undefined;
57
53
  }
58
- for (const file of files) {
59
- args.push('--file', file);
54
+ return JSON.parse(content);
55
+ }
56
+ static resolveRefs() {
57
+ const metadata = Bake.resolveMetadata();
58
+ if (!metadata) {
59
+ return undefined;
60
60
  }
61
- if (cmdOpts.overrides) {
62
- for (const override of cmdOpts.overrides) {
63
- args.push('--set', override);
61
+ const refs = new Array();
62
+ for (const key in metadata) {
63
+ if ('buildx.build.ref' in metadata[key]) {
64
+ refs.push(metadata[key]['buildx.build.ref']);
64
65
  }
65
66
  }
66
- if (cmdOpts.load) {
67
- args.push('--load');
68
- }
69
- if (cmdOpts.noCache) {
70
- args.push('--no-cache');
71
- }
72
- if (cmdOpts.provenance) {
73
- args.push('--provenance', cmdOpts.provenance);
74
- }
75
- if (cmdOpts.push) {
76
- args.push('--push');
77
- }
78
- if (cmdOpts.sbom) {
79
- args.push('--sbom', cmdOpts.sbom);
80
- }
81
- const printCmd = await this.buildx.getCommand([...args, '--print', ...(cmdOpts.targets || [])]);
82
- return await exec_1.Exec.getExecOutput(printCmd.command, printCmd.args, execOptions).then(res => {
83
- if (res.stderr.length > 0 && res.exitCode != 0) {
84
- throw new Error(`cannot parse bake definitions: ${res.stderr.match(/(.*)\s*$/)?.[0]?.trim() ?? 'unknown error'}`);
67
+ return refs;
68
+ }
69
+ getDefinition(cmdOpts, execOptions) {
70
+ return __awaiter(this, void 0, void 0, function* () {
71
+ execOptions = execOptions || { ignoreReturnCode: true };
72
+ execOptions.ignoreReturnCode = true;
73
+ if (cmdOpts.githubToken) {
74
+ execOptions.env = Object.assign({}, process.env, {
75
+ BUILDX_BAKE_GIT_AUTH_TOKEN: cmdOpts.githubToken
76
+ });
85
77
  }
86
- return Bake.parseDefinition(res.stdout.trim());
78
+ const args = ['bake'];
79
+ let remoteDef;
80
+ const files = [];
81
+ const sources = [...(cmdOpts.files || []), cmdOpts.source];
82
+ if (sources) {
83
+ for (const source of sources.map(v => (v ? v.trim() : ''))) {
84
+ if (source.length == 0) {
85
+ continue;
86
+ }
87
+ if (!util_1.Util.isValidRef(source)) {
88
+ files.push(source);
89
+ continue;
90
+ }
91
+ if (remoteDef) {
92
+ throw new Error(`Only one remote bake definition can be defined`);
93
+ }
94
+ remoteDef = source;
95
+ }
96
+ }
97
+ if (remoteDef) {
98
+ args.push(remoteDef);
99
+ }
100
+ for (const file of files) {
101
+ args.push('--file', file);
102
+ }
103
+ if (cmdOpts.overrides) {
104
+ for (const override of cmdOpts.overrides) {
105
+ args.push('--set', override);
106
+ }
107
+ }
108
+ if (cmdOpts.load) {
109
+ args.push('--load');
110
+ }
111
+ if (cmdOpts.noCache) {
112
+ args.push('--no-cache');
113
+ }
114
+ if (cmdOpts.provenance) {
115
+ args.push('--provenance', cmdOpts.provenance);
116
+ }
117
+ if (cmdOpts.push) {
118
+ args.push('--push');
119
+ }
120
+ if (cmdOpts.sbom) {
121
+ args.push('--sbom', cmdOpts.sbom);
122
+ }
123
+ const printCmd = yield this.buildx.getCommand([...args, '--print', ...(cmdOpts.targets || [])]);
124
+ return yield exec_1.Exec.getExecOutput(printCmd.command, printCmd.args, execOptions).then(res => {
125
+ var _a, _b, _c;
126
+ if (res.stderr.length > 0 && res.exitCode != 0) {
127
+ 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'}`);
128
+ }
129
+ return Bake.parseDefinition(res.stdout.trim());
130
+ });
87
131
  });
88
132
  }
89
133
  static parseDefinition(dt) {
90
134
  return JSON.parse(dt);
91
135
  }
92
136
  static hasLocalExporter(def) {
93
- return inputs_1.Inputs.hasExporterType('local', Bake.exporters(def));
137
+ return build_1.Build.hasExporterType('local', Bake.exporters(def));
94
138
  }
95
139
  static hasTarExporter(def) {
96
- return inputs_1.Inputs.hasExporterType('tar', Bake.exporters(def));
140
+ return build_1.Build.hasExporterType('tar', Bake.exporters(def));
97
141
  }
98
142
  static hasDockerExporter(def, load) {
99
- return load || inputs_1.Inputs.hasExporterType('docker', Bake.exporters(def));
143
+ return load || build_1.Build.hasExporterType('docker', Bake.exporters(def));
100
144
  }
101
145
  static exporters(def) {
102
146
  const exporters = new Array();
@@ -1 +1 @@
1
- {"version":3,"file":"bake.js","sourceRoot":"","sources":["../../src/buildx/bake.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bake.js","sourceRoot":"","sources":["../../src/buildx/bake.ts"],"names":[],"mappings":"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"}
@@ -13,16 +13,18 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- export declare class Inputs {
17
- static getBuildImageIDFilePath(): string;
18
- static getBuildMetadataFilePath(): string;
19
- static resolveBuildImageID(): string | undefined;
20
- static resolveBuildMetadata(): string | undefined;
16
+ import { BuildMetadata } from '../types/build';
17
+ export declare class Build {
18
+ static getImageIDFilePath(): string;
19
+ static getMetadataFilePath(): string;
20
+ static resolveImageID(): string | undefined;
21
+ static resolveMetadata(): BuildMetadata | undefined;
22
+ static resolveRef(): string | undefined;
21
23
  static resolveDigest(): string | undefined;
22
- static resolveBuildSecretString(kvp: string): string;
23
- static resolveBuildSecretFile(kvp: string): string;
24
- static resolveBuildSecretEnv(kvp: string): string;
25
- static resolveBuildSecret(kvp: string, file: boolean): [string, string];
24
+ static resolveSecretString(kvp: string): string;
25
+ static resolveSecretFile(kvp: string): string;
26
+ static resolveSecretEnv(kvp: string): string;
27
+ static resolveSecret(kvp: string, file: boolean): [string, string];
26
28
  static getProvenanceInput(name: string): string;
27
29
  static resolveProvenanceAttrs(input: string): string;
28
30
  static hasLocalExporter(exporters: string[]): boolean;
@@ -32,4 +34,5 @@ export declare class Inputs {
32
34
  static hasAttestationType(name: string, attrs: string): boolean;
33
35
  static resolveAttestationAttrs(attrs: string): string;
34
36
  static hasGitAuthTokenSecret(secrets: string[]): boolean;
37
+ private static parseSecretKvp;
35
38
  }
@@ -41,7 +41,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
41
41
  return (mod && mod.__esModule) ? mod : { "default": mod };
42
42
  };
43
43
  Object.defineProperty(exports, "__esModule", { value: true });
44
- exports.Inputs = void 0;
44
+ exports.Build = void 0;
45
45
  const fs_1 = __importDefault(require("fs"));
46
46
  const path_1 = __importDefault(require("path"));
47
47
  const core = __importStar(require("@actions/core"));
@@ -49,31 +49,22 @@ const sync_1 = require("csv-parse/sync");
49
49
  const context_1 = require("../context");
50
50
  const github_1 = require("../github");
51
51
  const util_1 = require("../util");
52
- const parseKvp = (kvp) => {
53
- const delimiterIndex = kvp.indexOf('=');
54
- const key = kvp.substring(0, delimiterIndex);
55
- const value = kvp.substring(delimiterIndex + 1);
56
- if (key.length == 0 || value.length == 0) {
57
- throw new Error(`${kvp} is not a valid secret`);
58
- }
59
- return [key, value];
60
- };
61
- class Inputs {
62
- static getBuildImageIDFilePath() {
52
+ class Build {
53
+ static getImageIDFilePath() {
63
54
  return path_1.default.join(context_1.Context.tmpDir(), 'iidfile');
64
55
  }
65
- static getBuildMetadataFilePath() {
56
+ static getMetadataFilePath() {
66
57
  return path_1.default.join(context_1.Context.tmpDir(), 'metadata-file');
67
58
  }
68
- static resolveBuildImageID() {
69
- const iidFile = Inputs.getBuildImageIDFilePath();
59
+ static resolveImageID() {
60
+ const iidFile = Build.getImageIDFilePath();
70
61
  if (!fs_1.default.existsSync(iidFile)) {
71
62
  return undefined;
72
63
  }
73
64
  return fs_1.default.readFileSync(iidFile, { encoding: 'utf-8' }).trim();
74
65
  }
75
- static resolveBuildMetadata() {
76
- const metadataFile = Inputs.getBuildMetadataFilePath();
66
+ static resolveMetadata() {
67
+ const metadataFile = Build.getMetadataFilePath();
77
68
  if (!fs_1.default.existsSync(metadataFile)) {
78
69
  return undefined;
79
70
  }
@@ -81,33 +72,42 @@ class Inputs {
81
72
  if (content === 'null') {
82
73
  return undefined;
83
74
  }
84
- return content;
75
+ return JSON.parse(content);
76
+ }
77
+ static resolveRef() {
78
+ const metadata = Build.resolveMetadata();
79
+ if (!metadata) {
80
+ return undefined;
81
+ }
82
+ if ('buildx.build.ref' in metadata) {
83
+ return metadata['buildx.build.ref'];
84
+ }
85
+ return undefined;
85
86
  }
86
87
  static resolveDigest() {
87
- const metadata = Inputs.resolveBuildMetadata();
88
- if (metadata === undefined) {
88
+ const metadata = Build.resolveMetadata();
89
+ if (!metadata) {
89
90
  return undefined;
90
91
  }
91
- const metadataJSON = JSON.parse(metadata);
92
- if (metadataJSON['containerimage.digest']) {
93
- return metadataJSON['containerimage.digest'];
92
+ if ('containerimage.digest' in metadata) {
93
+ return metadata['containerimage.digest'];
94
94
  }
95
95
  return undefined;
96
96
  }
97
- static resolveBuildSecretString(kvp) {
98
- const [key, file] = Inputs.resolveBuildSecret(kvp, false);
97
+ static resolveSecretString(kvp) {
98
+ const [key, file] = Build.resolveSecret(kvp, false);
99
99
  return `id=${key},src=${file}`;
100
100
  }
101
- static resolveBuildSecretFile(kvp) {
102
- const [key, file] = Inputs.resolveBuildSecret(kvp, true);
101
+ static resolveSecretFile(kvp) {
102
+ const [key, file] = Build.resolveSecret(kvp, true);
103
103
  return `id=${key},src=${file}`;
104
104
  }
105
- static resolveBuildSecretEnv(kvp) {
106
- const [key, value] = parseKvp(kvp);
105
+ static resolveSecretEnv(kvp) {
106
+ const [key, value] = Build.parseSecretKvp(kvp);
107
107
  return `id=${key},env=${value}`;
108
108
  }
109
- static resolveBuildSecret(kvp, file) {
110
- const [key, _value] = parseKvp(kvp);
109
+ static resolveSecret(kvp, file) {
110
+ const [key, _value] = Build.parseSecretKvp(kvp);
111
111
  let value = _value;
112
112
  if (file) {
113
113
  if (!fs_1.default.existsSync(value)) {
@@ -130,7 +130,7 @@ class Inputs {
130
130
  }
131
131
  catch (err) {
132
132
  // not a valid boolean, so we assume it's a string
133
- return Inputs.resolveProvenanceAttrs(input);
133
+ return Build.resolveProvenanceAttrs(input);
134
134
  }
135
135
  }
136
136
  static resolveProvenanceAttrs(input) {
@@ -156,13 +156,13 @@ class Inputs {
156
156
  return `${input},builder-id=${github_1.GitHub.workflowRunURL}`;
157
157
  }
158
158
  static hasLocalExporter(exporters) {
159
- return Inputs.hasExporterType('local', exporters);
159
+ return Build.hasExporterType('local', exporters);
160
160
  }
161
161
  static hasTarExporter(exporters) {
162
- return Inputs.hasExporterType('tar', exporters);
162
+ return Build.hasExporterType('tar', exporters);
163
163
  }
164
164
  static hasDockerExporter(exporters, load) {
165
- return load || Inputs.hasExporterType('docker', exporters);
165
+ return load || Build.hasExporterType('docker', exporters);
166
166
  }
167
167
  static hasExporterType(name, exporters) {
168
168
  const records = (0, sync_1.parse)(exporters.join(`\n`), {
@@ -231,6 +231,15 @@ class Inputs {
231
231
  }
232
232
  return false;
233
233
  }
234
+ static parseSecretKvp(kvp) {
235
+ const delimiterIndex = kvp.indexOf('=');
236
+ const key = kvp.substring(0, delimiterIndex);
237
+ const value = kvp.substring(delimiterIndex + 1);
238
+ if (key.length == 0 || value.length == 0) {
239
+ throw new Error(`${kvp} is not a valid secret`);
240
+ }
241
+ return [key, value];
242
+ }
234
243
  }
235
- exports.Inputs = Inputs;
236
- //# sourceMappingURL=inputs.js.map
244
+ exports.Build = Build;
245
+ //# sourceMappingURL=build.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build.js","sourceRoot":"","sources":["../../src/buildx/build.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,6 @@ export declare class Builder {
22
22
  private readonly buildx;
23
23
  constructor(opts?: BuilderOpts);
24
24
  exists(name: string): Promise<boolean>;
25
- inspect(name: string): Promise<BuilderInfo>;
25
+ inspect(name?: string): Promise<BuilderInfo>;
26
26
  static parseInspect(data: string): BuilderInfo;
27
27
  }