Skip to content

CI: build Docker image and publish to PyPI for release tags - #2688

Merged
acockburn merged 1 commit into
AppDaemon:devfrom
tmilnthorp:release-triggers
Nov 5, 2026
Merged

acockburn merged 1 commit into
AppDaemon:devfrom
tmilnthorp:release-triggers

Conversation

@tmilnthorp

Copy link
Copy Markdown
Contributor

Heads-up before the next release. Since the CI reorg (#2444), build-docker.yml and pypi-upload.yml only run for tags starting with v, but releases are tagged without a prefix (4.5.13). 4.5.13 was published by the old build-deploy.yml. As things stand, tagging 4.5.14 would produce neither a Docker image nor a PyPI upload.

Changes:

  • Both workflows now gate on a release-version tag (X.Y.Z, optionally aN/bN/rcN). A small check job confirms the tag points at the commit Python CI tested. For a tag push, Python CI's head_branch is the tag name.
  • Under workflow_run, checkout and metadata-action default to the default branch. That means a tag build would use dev's Dockerfile and lock file and be tagged dev. The Docker build now checks out the release tag and takes tags from it (context: git), producing X.Y.Z plus latest for final releases. The PyPI job runs the tag's own functional tests.
  • Only push CI runs trigger builds, which the PyPI workflow already required.
  • Removed the type=match,value=latest,pattern=pattern=… rule. It never matched and only produced a warning; type=pep440 already adds latest to final releases.

dev builds are unchanged. Checked with actionlint. This conflicts with #2687 (weekly rebuild); I'm happy to rebase that one on top once this lands.

@acockburn
acockburn merged commit 441804c into AppDaemon:dev Nov 5, 2026
10 of 11 checks passed
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.

2 participants