Skip to content
Merged

sync #11

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
64a5bce
chore(deps): Bump @docker/actions-toolkit from 0.61.0 to 0.62.1
dependabot[bot] May 27, 2025
0dc9342
move summary inputs sanitization to state helper
crazy-max May 27, 2025
4318518
set builder driver and endpoint attributes for dbc summary support
crazy-max May 27, 2025
f530412
chore: update generated content
crazy-max May 27, 2025
37816e7
Merge pull request #331 from docker/dependabot/npm_and_yarn/docker/ac…
crazy-max May 27, 2025
d4a3c3c
list-targets: use toolkit to sanitize inputs
crazy-max Jul 4, 2025
d576212
Merge pull request #332 from crazy-max/subaction-list-targets-enhanced
crazy-max Jul 4, 2025
88f3e55
chore(deps): Bump form-data from 2.5.1 to 2.5.5
dependabot[bot] Jul 21, 2025
1367d98
README.md: fix link
meator Jul 23, 2025
846dea0
Merge pull request #335 from meator/patch-1
crazy-max Jul 25, 2025
a1257e6
Merge pull request #334 from docker/dependabot/npm_and_yarn/form-data…
crazy-max Aug 5, 2025
72003b9
chore(deps): Bump actions/checkout from 4 to 5
dependabot[bot] Aug 12, 2025
6de75d5
Merge pull request #343 from docker/dependabot/github_actions/actions…
crazy-max Aug 14, 2025
24d8c34
call input to set method for evaluating build
crazy-max Jul 30, 2025
7a78e75
chore: update generated content
crazy-max Jul 30, 2025
68cf998
matrix subaction
crazy-max Jul 6, 2025
1d0c0ff
list-targets: deprecation notice
crazy-max Jul 6, 2025
ba406cd
subaction: check expected output
crazy-max Jul 6, 2025
1a42865
Merge pull request #204 from crazy-max/subaction-matrix
tonistiigi Aug 20, 2025
5efdf4d
Merge pull request #338 from crazy-max/call-input
crazy-max Aug 20, 2025
d260a27
chore(deps): Bump brace-expansion from 1.1.11 to 1.1.12
dependabot[bot] Aug 20, 2025
a4c28de
chore: update generated content
crazy-max Aug 20, 2025
8f035c0
Merge pull request #339 from docker/dependabot/npm_and_yarn/brace-exp…
crazy-max Aug 20, 2025
74cb41d
chore(deps): Bump undici from 5.28.4 to 5.29.0
dependabot[bot] Aug 20, 2025
a6c0a91
chore: update generated content
crazy-max Aug 20, 2025
d0cb977
Merge pull request #340 from docker/dependabot/npm_and_yarn/undici-5.…
crazy-max Aug 20, 2025
2215fae
chore(deps): Bump tmp from 0.2.3 to 0.2.4
dependabot[bot] Aug 20, 2025
3589b0c
chore: update generated content
crazy-max Aug 20, 2025
3d864c3
Merge pull request #341 from docker/dependabot/npm_and_yarn/tmp-0.2.4
crazy-max Aug 20, 2025
3965f4b
chore(deps): Bump @docker/actions-toolkit from 0.62.1 to 0.63.0
dependabot[bot] Aug 20, 2025
d7a0b5e
chore: update generated content
crazy-max Aug 20, 2025
40bffc1
Merge pull request #342 from docker/dependabot/npm_and_yarn/docker/ac…
crazy-max Aug 20, 2025
c22b348
update dev dependencies
crazy-max Aug 20, 2025
f08ef55
chore: update generated content
crazy-max Aug 20, 2025
60b3af6
Merge pull request #344 from crazy-max/update-dev
crazy-max Aug 20, 2025
f6376ff
update yarn to 4.9.2
crazy-max Aug 20, 2025
3acf805
Merge pull request #345 from crazy-max/update-yarn
crazy-max Aug 20, 2025
5b9bf92
chore(deps): Bump actions/github-script from 7 to 8
dependabot[bot] Sep 4, 2025
41c10f2
Merge pull request #350 from docker/dependabot/github_actions/actions…
crazy-max Sep 13, 2025
a252059
Merge upstream docker/bake-action master
PrashantRaj18198 Oct 10, 2025
19b7937
rebuild
guptaankit015 Oct 23, 2025
c1eb45d
debug wf changes
guptaankit015 Oct 23, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file modified .github/subaction-list-targets.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added .github/subaction-matrix.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
129 changes: 83 additions & 46 deletions .github/workflows/ci-subaction.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,75 +25,112 @@ on:
- 'test/**'

jobs:
list-targets-group:
list-targets:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
-
testdir: group
expected: >
["t1","t2"]
-
testdir: group-matrix
target: validate
expected: >
["lint-default","lint-labs","lint-nydus","lint-proto","lint-yaml","validate-doctoc","validate-vendor"]
-
testdir: multi-files
files: |
docker-bake.json
docker-bake.hcl
expected: >
["v1-tag","v2-tag"]
steps:
-
name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v5
-
name: Matrix gen
id: gen
uses: ./subaction/list-targets
with:
workdir: ./test/group
workdir: ./test/${{ matrix.testdir }}
files: ${{ matrix.files }}
target: ${{ matrix.target }}
-
name: Check targets
uses: actions/github-script@v7
name: Check output
uses: actions/github-script@v8
env:
INPUT_TARGETS: ${{ steps.gen.outputs.targets }}
INPUT_EXPECTED: ${{ matrix.expected }}
with:
script: |
const targets = `${{ steps.gen.outputs.targets }}`;
if (!targets) {
core.setFailed('No targets generated');
const targets = JSON.stringify(JSON.parse(core.getInput('targets')));
const expected = JSON.stringify(JSON.parse(core.getInput('expected')));
if (targets !== expected) {
throw new Error(`Targets do not match expected values: ${targets} != ${expected}`);
} else {
core.info(`✅`);
}
core.info(`targets=${targets}`);

list-targets-group-matrix:
matrix:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
-
testdir: group
expected: >
[{"target":"t1"},{"target":"t2"}]
-
testdir: group-matrix
target: validate
expected: >
[{"target":"lint-default"},{"target":"lint-labs"},{"target":"lint-nydus"},{"target":"lint-proto"},{"target":"lint-yaml"},{"target":"validate-doctoc"},{"target":"validate-vendor"}]
-
testdir: group-with-platform
target: validate
expected: >
[{"target":"lint"},{"target":"lint-gopls"},{"target":"validate-docs"},{"target":"validate-vendor"}]
-
testdir: group-with-platform
target: validate
fields: platforms
expected: >
[{"target":"lint","platforms":"darwin/amd64"},{"target":"lint","platforms":"darwin/arm64"},{"target":"lint","platforms":"linux/amd64"},{"target":"lint","platforms":"linux/arm64"},{"target":"lint","platforms":"linux/s390x"},{"target":"lint","platforms":"linux/ppc64le"},{"target":"lint","platforms":"linux/riscv64"},{"target":"lint","platforms":"windows/amd64"},{"target":"lint","platforms":"windows/arm64"},{"target":"lint-gopls","platforms":"darwin/amd64"},{"target":"lint-gopls","platforms":"darwin/arm64"},{"target":"lint-gopls","platforms":"linux/amd64"},{"target":"lint-gopls","platforms":"linux/arm64"},{"target":"lint-gopls","platforms":"linux/s390x"},{"target":"lint-gopls","platforms":"linux/ppc64le"},{"target":"lint-gopls","platforms":"linux/riscv64"},{"target":"lint-gopls","platforms":"windows/amd64"},{"target":"lint-gopls","platforms":"windows/arm64"},{"target":"validate-docs"},{"target":"validate-vendor"}]
-
testdir: group-with-platform
target: validate
fields: platforms,dockerfile
expected: >
[{"target":"lint","dockerfile":"./hack/dockerfiles/lint.Dockerfile"},{"target":"lint","dockerfile":"./hack/dockerfiles/lint.Dockerfile","platforms":"darwin/amd64"},{"target":"lint","dockerfile":"./hack/dockerfiles/lint.Dockerfile","platforms":"darwin/arm64"},{"target":"lint","dockerfile":"./hack/dockerfiles/lint.Dockerfile","platforms":"linux/amd64"},{"target":"lint","dockerfile":"./hack/dockerfiles/lint.Dockerfile","platforms":"linux/arm64"},{"target":"lint","dockerfile":"./hack/dockerfiles/lint.Dockerfile","platforms":"linux/s390x"},{"target":"lint","dockerfile":"./hack/dockerfiles/lint.Dockerfile","platforms":"linux/ppc64le"},{"target":"lint","dockerfile":"./hack/dockerfiles/lint.Dockerfile","platforms":"linux/riscv64"},{"target":"lint","dockerfile":"./hack/dockerfiles/lint.Dockerfile","platforms":"windows/amd64"},{"target":"lint","dockerfile":"./hack/dockerfiles/lint.Dockerfile","platforms":"windows/arm64"},{"target":"lint-gopls","dockerfile":"./hack/dockerfiles/lint.Dockerfile"},{"target":"lint-gopls","dockerfile":"./hack/dockerfiles/lint.Dockerfile","platforms":"darwin/amd64"},{"target":"lint-gopls","dockerfile":"./hack/dockerfiles/lint.Dockerfile","platforms":"darwin/arm64"},{"target":"lint-gopls","dockerfile":"./hack/dockerfiles/lint.Dockerfile","platforms":"linux/amd64"},{"target":"lint-gopls","dockerfile":"./hack/dockerfiles/lint.Dockerfile","platforms":"linux/arm64"},{"target":"lint-gopls","dockerfile":"./hack/dockerfiles/lint.Dockerfile","platforms":"linux/s390x"},{"target":"lint-gopls","dockerfile":"./hack/dockerfiles/lint.Dockerfile","platforms":"linux/ppc64le"},{"target":"lint-gopls","dockerfile":"./hack/dockerfiles/lint.Dockerfile","platforms":"linux/riscv64"},{"target":"lint-gopls","dockerfile":"./hack/dockerfiles/lint.Dockerfile","platforms":"windows/amd64"},{"target":"lint-gopls","dockerfile":"./hack/dockerfiles/lint.Dockerfile","platforms":"windows/arm64"},{"target":"validate-docs","dockerfile":"./hack/dockerfiles/docs.Dockerfile"},{"target":"validate-vendor","dockerfile":"./hack/dockerfiles/vendor.Dockerfile"}]
steps:
-
name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v5
-
name: Matrix gen
id: gen
uses: ./subaction/list-targets
with:
workdir: ./test/group-matrix
target: validate
-
name: Check targets
uses: actions/github-script@v7
with:
script: |
const targets = `${{ steps.gen.outputs.targets }}`;
if (!targets) {
core.setFailed('No targets generated');
}
core.info(`targets=${targets}`);

list-targets-multi-files:
runs-on: ubuntu-latest
steps:
-
name: Checkout
uses: actions/checkout@v4
-
name: Matrix gen
id: gen
uses: ./subaction/list-targets
uses: ./subaction/matrix
with:
workdir: ./test/multi-files
files: |
docker-bake.json
docker-bake.hcl
workdir: ./test/${{ matrix.testdir }}
target: ${{ matrix.target }}
fields: ${{ matrix.fields }}
-
name: Check targets
uses: actions/github-script@v7
name: Check output
uses: actions/github-script@v8
env:
INPUT_MATRIX: ${{ steps.gen.outputs.matrix }}
INPUT_EXPECTED: ${{ matrix.expected }}
with:
script: |
const targets = `${{ steps.gen.outputs.targets }}`;
if (!targets) {
core.setFailed('No targets generated');
const matrix = JSON.stringify(JSON.parse(core.getInput('matrix')));
const expected = JSON.stringify(JSON.parse(core.getInput('expected')));
if (matrix !== expected) {
throw new Error(`Matrix do not match expected values: ${matrix} != ${expected}`);
} else {
core.info(`✅`);
}
core.info(`targets=${targets}`);
Loading
Loading