fix(ci): publish arm64 nightly images and remove superseded workflow - #2619
Merged
Conversation
Three issues prevented arm64 nightly containers from publishing: 1. docker-nightly-publish.yml only built linux/amd64 and fired on the same cron schedule as scheduled-nightly.yml, so whichever landed last overwrote the nightly date tag — often with an amd64-only manifest. Remove this file; scheduled-nightly.yml is a strict superset. 2. scheduled-nightly.yml ran `docker buildx create --use` after the setup-docker-buildx action had already created a builder, replacing the action-configured instance with an unconfigured one. Replaced the raw shell build with docker/build-push-action@v6 to honour the action's builder and stay consistent with the release workflow. 3. HF_ACCESS_TOKEN was passed as --build-arg, leaking it into image layers and the build cache. Switched to --secret / secret-files.
Contributor
Greptile SummaryThe PR consolidates nightly image publication into
|
| Filename | Overview |
|---|---|
| .github/workflows/docker-nightly-publish.yml | Removes the duplicate amd64-only publisher whose shared schedule and tag could overwrite the multi-platform nightly manifest. |
| .github/workflows/scheduled-nightly.yml | Uses the configured Buildx builder to publish both architectures and replaces the token build argument with an excluded, cleaned-up secret file. |
Flowchart
%%{init: {'theme': 'neutral'}}%%
flowchart LR
Trigger[Schedule or manual dispatch] --> Setup[Checkout, QEMU, and configured Buildx]
Setup --> Token[Create temporary HF token file when configured]
Token --> Build[Build amd64 and arm64 service images]
Build --> Push[Push one multi-platform nightly tag]
Push --> Cleanup[Remove temporary token file]
Build -->|failure| Cleanup
Reviews (1): Last reviewed commit: "fix(ci): publish arm64 nightly images an..." | Re-trigger Greptile
edknv
approved these changes
Sep 1, 2026
jperez999
approved these changes
Sep 1, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
docker-nightly-publish.yml— this workflow only builtlinux/amd64yet fired on the same cron schedule (30 23 * * *) asscheduled-nightly.yml. Both pushed to the same date tag, so whichever landed last won; the old workflow frequently overwrote the nightly manifest with an amd64-only image.scheduled-nightly.ymlis a strict superset and replaces it entirely.scheduled-nightly.yml— the job calleddocker buildx create --useafter./.github/actions/setup-docker-buildxhad already created and configured a QEMU-enabled builder. The secondcreatereplaced that builder with an unconfigured one. Replaced the raw shelldocker buildx buildcall withdocker/build-push-action@v6(matching the release workflow) so the action's builder is honoured.HF_ACCESS_TOKENinto the build cache — the token was passed as--build-arg, embedding it in image layers and the GHA cache. Switched to--secret/secret-files, consistent with every other workflow in this repo.Test plan
scheduled-nightly.ymlviaworkflow_dispatchand confirm the published manifest includes bothlinux/amd64andlinux/arm64(docker buildx imagetools inspect <tag>)docker-nightly-publish.ymlno longer appears in the Actions tab🤖 Generated with Claude Code