mirror of
https://github.com/docker/bake-action.git
synced 2026-01-22 12:22:21 +01:00
list-targets: use toolkit to sanitize inputs
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
This commit is contained in:
@@ -22,16 +22,35 @@ outputs:
|
|||||||
runs:
|
runs:
|
||||||
using: composite
|
using: composite
|
||||||
steps:
|
steps:
|
||||||
|
-
|
||||||
|
name: Install npm dependencies
|
||||||
|
uses: actions/github-script@v7
|
||||||
|
env:
|
||||||
|
INPUT_ACTIONS-TOOLKIT-VERSION: '0.62.1'
|
||||||
|
with:
|
||||||
|
script: |
|
||||||
|
const version = core.getInput('actions-toolkit-version') || 'latest';
|
||||||
|
const dep = `@docker/actions-toolkit@${version}`;
|
||||||
|
await core.group(`Installing ${dep}`, async () => {
|
||||||
|
await exec.exec('npm', ['install', dep]);
|
||||||
|
});
|
||||||
-
|
-
|
||||||
name: Generate
|
name: Generate
|
||||||
id: generate
|
id: generate
|
||||||
uses: actions/github-script@v7
|
uses: actions/github-script@v7
|
||||||
|
env:
|
||||||
|
INPUT_WORKDIR: ${{ inputs.workdir }}
|
||||||
|
INPUT_FILES: ${{ inputs.files }}
|
||||||
|
INPUT_TARGET: ${{ inputs.target }}
|
||||||
with:
|
with:
|
||||||
script: |
|
script: |
|
||||||
let def;
|
const { Util } = require('@docker/actions-toolkit/lib/util');
|
||||||
const files = `${{ inputs.files }}` ? `${{ inputs.files }}`.split(/[\r?\n,]+/).filter(Boolean) : [];
|
|
||||||
const target = `${{ inputs.target }}`;
|
|
||||||
|
|
||||||
|
const workdir = core.getInput('workdir');
|
||||||
|
const files = Util.getInputList('files');
|
||||||
|
const target = core.getInput('target');
|
||||||
|
|
||||||
|
let def = {};
|
||||||
await core.group(`Validating definition`, async () => {
|
await core.group(`Validating definition`, async () => {
|
||||||
let args = ['buildx', 'bake'];
|
let args = ['buildx', 'bake'];
|
||||||
for (const file of files) {
|
for (const file of files) {
|
||||||
@@ -45,7 +64,7 @@ runs:
|
|||||||
const res = await exec.getExecOutput('docker', args, {
|
const res = await exec.getExecOutput('docker', args, {
|
||||||
ignoreReturnCode: true,
|
ignoreReturnCode: true,
|
||||||
silent: true,
|
silent: true,
|
||||||
cwd: `${{ inputs.workdir }}`
|
cwd: workdir
|
||||||
});
|
});
|
||||||
if (res.stderr.length > 0 && res.exitCode != 0) {
|
if (res.stderr.length > 0 && res.exitCode != 0) {
|
||||||
throw new Error(res.stderr);
|
throw new Error(res.stderr);
|
||||||
|
|||||||
Reference in New Issue
Block a user