chore(ci): adopt .runtime-version push-mode cascade signal #1
28
.github/workflows/publish-image.yml
vendored
28
.github/workflows/publish-image.yml
vendored
@ -25,7 +25,33 @@ permissions:
|
|||||||
packages: write
|
packages: write
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
|
# The `.runtime-version` file is the push-mode cascade signal post-
|
||||||
|
# 2026-05-06: when molecule-core/publish-runtime.yml ships a new
|
||||||
|
# version to PyPI, it does NOT call repository_dispatch (Gitea 1.22.6
|
||||||
|
# has no such endpoint — empirically verified molecule-core#20).
|
||||||
|
# Instead it git-pushes an updated `.runtime-version` to each template,
|
||||||
|
# which trips this workflow's `on: push: branches: [main]` trigger.
|
||||||
|
# This job reads that file and forwards the version to the reusable
|
||||||
|
# build workflow.
|
||||||
|
resolve-version:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
timeout-minutes: 2
|
||||||
|
outputs:
|
||||||
|
version: ${{ steps.read.outputs.version }}
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
- id: read
|
||||||
|
run: |
|
||||||
|
if [ -f .runtime-version ]; then
|
||||||
|
v="$(head -n1 .runtime-version | tr -d '[:space:]')"
|
||||||
|
echo "version=$v" >> "$GITHUB_OUTPUT"
|
||||||
|
echo "resolved runtime version: $v"
|
||||||
|
else
|
||||||
|
echo "no .runtime-version file present — falling through to Dockerfile default"
|
||||||
|
fi
|
||||||
|
|
||||||
publish:
|
publish:
|
||||||
|
needs: resolve-version
|
||||||
uses: Molecule-AI/molecule-ci/.github/workflows/publish-template-image.yml@main
|
uses: Molecule-AI/molecule-ci/.github/workflows/publish-template-image.yml@main
|
||||||
secrets: inherit
|
secrets: inherit
|
||||||
with:
|
with:
|
||||||
@ -33,4 +59,4 @@ jobs:
|
|||||||
# version PyPI just published. Forwarded as a docker --build-arg
|
# version PyPI just published. Forwarded as a docker --build-arg
|
||||||
# so the cache key changes per-version and pip install resolves
|
# so the cache key changes per-version and pip install resolves
|
||||||
# freshly. Empty on push/PR — falls back to requirements.txt pin.
|
# freshly. Empty on push/PR — falls back to requirements.txt pin.
|
||||||
runtime_version: ${{ github.event.client_payload.runtime_version || inputs.runtime_version || '' }}
|
runtime_version: ${{ github.event.client_payload.runtime_version || inputs.runtime_version || needs.resolve-version.outputs.version || '' }}
|
||||||
|
|||||||
1
.runtime-version
Normal file
1
.runtime-version
Normal file
@ -0,0 +1 @@
|
|||||||
|
0.1.129
|
||||||
Loading…
Reference in New Issue
Block a user