Skip to content

Commit e84b18a

Browse files
authored
Merge pull request #479 from crazy-max/dockerfile-validate
dockerfile validation
2 parents 6f86e02 + f06ec3b commit e84b18a

File tree

3 files changed

+22
-9
lines changed

3 files changed

+22
-9
lines changed

.github/workflows/validate.yml

+6-5
Original file line numberDiff line numberDiff line change
@@ -17,16 +17,17 @@ jobs:
1717
prepare:
1818
runs-on: ubuntu-20.04
1919
outputs:
20-
targets: ${{ steps.targets.outputs.matrix }}
20+
targets: ${{ steps.generate.outputs.targets }}
2121
steps:
2222
-
2323
name: Checkout
2424
uses: actions/checkout@v4
2525
-
26-
name: Matrix
27-
id: targets
28-
run: |
29-
echo "matrix=$(docker buildx bake validate --print | jq -cr '.group.validate.targets')" >> $GITHUB_OUTPUT
26+
name: List targets
27+
id: generate
28+
uses: docker/bake-action/subaction/list-targets@v5
29+
with:
30+
target: validate
3031

3132
validate:
3233
runs-on: ubuntu-latest

dev.Dockerfile

+3-3
Original file line numberDiff line numberDiff line change
@@ -74,9 +74,9 @@ RUN --mount=type=bind,target=.,rw \
7474
--mount=type=cache,target=/src/node_modules \
7575
yarn run lint
7676

77-
FROM docker:${DOCKER_VERSION} as docker
78-
FROM docker/buildx-bin:${BUILDX_VERSION} as buildx
79-
FROM crazymax/undock:${UNDOCK_VERSION} as undock
77+
FROM docker:${DOCKER_VERSION} AS docker
78+
FROM docker/buildx-bin:${BUILDX_VERSION} AS buildx
79+
FROM crazymax/undock:${UNDOCK_VERSION} AS undock
8080

8181
FROM deps AS test
8282
RUN --mount=type=bind,target=.,rw \

docker-bake.hcl

+13-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ group "pre-checkin" {
2121
}
2222

2323
group "validate" {
24-
targets = ["lint", "vendor-validate", "license-validate"]
24+
targets = ["lint", "vendor-validate", "dockerfile-validate", "license-validate"]
2525
}
2626

2727
target "build" {
@@ -54,6 +54,18 @@ target "vendor-validate" {
5454
output = ["type=cacheonly"]
5555
}
5656

57+
target "dockerfile-validate" {
58+
matrix = {
59+
dockerfile = [
60+
"dev.Dockerfile",
61+
"./hack/dockerfiles/license.Dockerfile"
62+
]
63+
}
64+
name = "dockerfile-validate-${md5(dockerfile)}"
65+
dockerfile = dockerfile
66+
call = "check"
67+
}
68+
5769
target "test" {
5870
dockerfile = "dev.Dockerfile"
5971
target = "test"

0 commit comments

Comments
 (0)