Merge pull request #332 from crazy-max/subaction-list-targets-enhanced
Some checks failed
validate / prepare (push) Failing after 10s
validate / validate (push) Has been skipped
ci / bake (default) (push) Failing after 40s
ci / bake (release) (push) Failing after 39s
ci / error-msg (push) Successful in 32s
ci / error-check (push) Failing after 28s
ci / standalone (push) Failing after 20s
ci / remote (push) Failing after 37s
ci / provenance () (push) Failing after 20s
ci / provenance (builder-id=foo) (push) Failing after 20s
ci / provenance (false) (push) Failing after 21s
ci / provenance (mode=max) (push) Failing after 20s
ci / provenance (true) (push) Failing after 20s
ci / sbom (/tmp/bake-build, binary) (push) Failing after 40s
ci / sbom (type=image,name=localhost:5000/name/app:latest,push=true, image) (push) Failing after 39s
ci / set (push) Successful in 1m9s
ci / group (push) Failing after 39s
ci / docker-config-malformed (push) Successful in 43s
ci / proxy-docker-config (push) Failing after 38s
ci / proxy-buildkitd (push) Failing after 39s
ci / git-context (push) Failing after 20s
ci / git-context-and-local (push) Failing after 20s
ci / multi-output (push) Failing after 38s
ci / load-and-push (push) Failing after 38s
ci / summary-disable (push) Failing after 20s
ci / summary-disable-deprecated (push) Failing after 20s
ci / summary-not-supported (push) Failing after 20s
ci / record-upload-disable (push) Failing after 21s
ci / record-retention-days (0) (push) Failing after 21s
ci / record-retention-days (2) (push) Failing after 21s
ci / export-legacy (false) (push) Failing after 20s
ci / export-legacy (true) (push) Failing after 20s
ci / checks (edge) (push) Failing after 20s
ci / checks (v0.14.1) (push) Failing after 20s
ci / annotations-disabled (push) Failing after 20s
ci / allow (edge) (push) Failing after 24s
ci / allow (v0.17.1) (push) Failing after 20s
ci / allow (v0.18.0) (push) Failing after 20s
ci / allow (v0.19.0) (push) Failing after 20s
ci / no-default-attestations (push) Successful in 43s
ci-subaction / list-targets-group (push) Failing after 21s
ci-subaction / list-targets-group-matrix (push) Failing after 20s
ci-subaction / list-targets-multi-files (push) Failing after 20s

list-targets: use toolkit to sanitize inputs
This commit is contained in:
CrazyMax
2025-07-04 17:11:25 +02:00
committed by GitHub

View File

@@ -22,16 +22,35 @@ outputs:
runs:
using: composite
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
id: generate
uses: actions/github-script@v7
env:
INPUT_WORKDIR: ${{ inputs.workdir }}
INPUT_FILES: ${{ inputs.files }}
INPUT_TARGET: ${{ inputs.target }}
with:
script: |
let def;
const files = `${{ inputs.files }}` ? `${{ inputs.files }}`.split(/[\r?\n,]+/).filter(Boolean) : [];
const target = `${{ inputs.target }}`;
const { Util } = require('@docker/actions-toolkit/lib/util');
const workdir = core.getInput('workdir');
const files = Util.getInputList('files');
const target = core.getInput('target');
let def = {};
await core.group(`Validating definition`, async () => {
let args = ['buildx', 'bake'];
for (const file of files) {
@@ -45,7 +64,7 @@ runs:
const res = await exec.getExecOutput('docker', args, {
ignoreReturnCode: true,
silent: true,
cwd: `${{ inputs.workdir }}`
cwd: workdir
});
if (res.stderr.length > 0 && res.exitCode != 0) {
throw new Error(res.stderr);