Skip to content

Publish Dependabot-orderable release tags from main builds - #41

Merged
onslaughtq merged 2 commits into
mainfrom
publish-release-tags
Aug 7, 2026
Merged

Publish Dependabot-orderable release tags from main builds#41
onslaughtq merged 2 commits into
mainfrom
publish-release-tags

Conversation

@onslaughtq

Copy link
Copy Markdown
Member

Main builds that change the image or how it is built (Dockerfile, tool-versions.env, image/, scripts/build-image.sh) now mint a release tag like debian-ghc-9.10.3-build-2026.8.6.347 as a digest-identical re-tag of the sha manifest. Downstream repos pin these and receive bump PRs from Dependabot; sha tags remain for trying branch builds.

The build version leads with the date because dependabot-core classifies bare numbers 1000-2999 as a different tag format than 999 and stops proposing updates (dependabot-core#11198). The date is the commit's rather than the wall clock's so that re-running an old main workflow recreates its original tag instead of minting one that sorts above newer releases while pointing at an older image.

Main builds that change the image or how it is built (Dockerfile,
tool-versions.env, image/, scripts/build-image.sh) now mint a release
tag like debian-ghc-9.10.3-build-2026.8.6.347 as a digest-identical
re-tag of the sha manifest. Downstream repos pin these and receive bump
PRs from Dependabot; sha tags remain for trying branch builds.

The build version leads with the date because dependabot-core
classifies bare numbers 1000-2999 as a different tag format than 999
and stops proposing updates (dependabot-core#11198). The date is the
commit's rather than the wall clock's so that re-running an old main
workflow recreates its original tag instead of minting one that sorts
above newer releases while pointing at an older image.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds CI support and documentation for publishing Dependabot-friendly “release tags” for the container image, derived from the commit date and workflow run number, so downstream repos can pin stable, orderable tags while still keeping per-commit SHA tags for testing.

Changes:

  • Add a push-release-tag command to re-tag the already-published manifest with a date+run-number release tag.
  • Update the main build workflow to mint release tags only on main and only when image-affecting files changed.
  • Expand README documentation to describe tag types and recommended downstream Dependabot configuration.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.

File Description
scripts/build-image.sh Adds push-release-tag command that mints a commit-date + run-number release tag pointing at the existing manifest.
README.md Documents the tag taxonomy (sha tags, release tags, build cache tags) and downstream pinning/Dependabot guidance.
.github/workflows/build.yaml Fetches full history and conditionally publishes release tags on main only when image-affecting paths changed.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread README.md
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
@onslaughtq
onslaughtq marked this pull request as ready for review August 7, 2026 16:10
@onslaughtq
onslaughtq merged commit fad7ea8 into main Aug 7, 2026
4 checks passed
@onslaughtq
onslaughtq deleted the publish-release-tags branch August 7, 2026 16:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants