Skip to content

Commit 02dfabd

Browse files
Publish latest and v* from the rebuild, and pin the release workflow
The rebuild published only IMAGE:$NEW, so latest stayed on 2026.8.0 while the fix shipped as 2026.9.0. Normally the v* git tag reaches build-push-docker.yml, whose metadata-action mints $NEW, v$NEW, sha-* and moves latest (latest=auto) -- but the bot pushes that tag with GITHUB_TOKEN, which does not trigger workflows. The secops scanner and `docker extension install` both read latest, so it refiled CVE-2026-14456 (BEE-1172, BEE-1173) against the image we had already fixed. Mint the same tag set here instead. type=sha is left out: the candidate is built from the commit before the version bump, so sha-* would point at the wrong tree. Also SHA-pin build-push-docker.yml's five actions, at the versions Dependabot proposes in #100 -- that file has always used floating tags, and it is the one holding the Docker Hub credentials. Both tags already ship provenance attestations, so the major bumps do not change the published index shape.
1 parent 8227bca commit 02dfabd

2 files changed

Lines changed: 14 additions & 8 deletions

File tree

‎.github/workflows/build-push-docker.yml‎

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,23 +20,23 @@ jobs:
2020

2121
steps:
2222
- name: Checkout repository
23-
uses: actions/checkout@v3
23+
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
2424

2525
- name: Download binaries
2626
run: bash downloadBinaries.sh
2727

2828
- name: Set up Docker Buildx
29-
uses: docker/setup-buildx-action@v1
29+
uses: docker/setup-buildx-action@37fe631027851001ddb9b187196cc803df7f5f0e # v4.3.0
3030

3131
- name: Login to Docker Hub
32-
uses: docker/login-action@v2
32+
uses: docker/login-action@dbcb813823bdd20940b903addbd779551569679f # v4.6.0
3333
with:
3434
username: ${{ secrets.DOCKERHUB_USERNAME }}
3535
password: ${{ secrets.DOCKERHUB_TOKEN }}
3636

3737
- name: Extract Docker metadata
3838
id: meta
39-
uses: docker/metadata-action@v4
39+
uses: docker/metadata-action@dc802804100637a589fabce1cb79ff13a1411302 # v6.2.0
4040
with:
4141
images: localstack/localstack-docker-desktop
4242
tags: |
@@ -46,7 +46,7 @@ jobs:
4646
type=sha
4747
4848
- name: Build and push Docker image
49-
uses: docker/build-push-action@v3
49+
uses: docker/build-push-action@53b7df96c91f9c12dcc8a07bcb9ccacbed38856a # v7.3.0
5050
with:
5151
context: .
5252
file: "./Dockerfile"

‎.github/workflows/security-rebuild.yml‎

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -146,15 +146,21 @@ jobs:
146146
password: ${{ secrets.DOCKERHUB_TOKEN }}
147147

148148
- name: Publish (multi-arch)
149-
# Published here rather than via build-push-docker.yml: GITHUB_TOKEN pushes don't trigger workflows.
149+
# Published here rather than via build-push-docker.yml: GITHUB_TOKEN pushes don't trigger workflows,
150+
# so the v* tag pushed below never reaches it. That means we have to mint the same tag set it would
151+
# have: metadata-action's latest=auto moves latest on a semver tag, and the secops scanner and every
152+
# `docker extension install` read latest — leave it behind and the CVE gets refiled against the old
153+
# image even though the fix shipped. Only type=sha is dropped: the build predates the version commit.
150154
if: steps.delta.outputs.cleared == 'true' && !inputs.dry_run
151155
env:
152156
NEW: ${{ steps.bump.outputs.version }}
153157
run: |
154-
echo "Publishing ${PUBLISHED_IMAGE}:${NEW}, clearing:"; cat cleared.txt
158+
echo "Publishing ${PUBLISHED_IMAGE}:${NEW} (also v${NEW}, latest), clearing:"; cat cleared.txt
155159
docker buildx build --push --pull --no-cache \
156160
--platform "${PLATFORMS}" \
157-
--tag "${PUBLISHED_IMAGE}:${NEW}" .
161+
--tag "${PUBLISHED_IMAGE}:${NEW}" \
162+
--tag "${PUBLISHED_IMAGE}:v${NEW}" \
163+
--tag "${PUBLISHED_IMAGE}:latest" .
158164
159165
# After the publish on purpose: a failed publish must not leave TAG pointing at an unpushed image.
160166
- name: Commit and tag

0 commit comments

Comments
 (0)