Skip to content

Commit a5806de

Browse files
yarikopticclaude
andauthored
Add auto-version query step and push Docker master tag on every build (#701)
The Docker build/push steps referenced steps.auto-version.outputs.version but no step with id auto-version existed, so Docker images were never built. Add the auto-version query step (as in heudiconv) so releases actually trigger Docker pushes. Also restructure so the master tag is built and pushed on every push to master, while latest and version tags are only pushed on actual releases. Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 85c295f commit a5806de

1 file changed

Lines changed: 24 additions & 11 deletions

File tree

.github/workflows/release.yml

Lines changed: 24 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -40,26 +40,39 @@ jobs:
4040
wget -O- "$auto_download_url" | gunzip > ~/auto
4141
chmod a+x ~/auto
4242
43-
- name: Create release
43+
- name: Query 'auto' on type of the release
44+
id: auto-version
4445
run: |
45-
~/auto shipit -vv
46+
set -o pipefail
47+
~/auto version -vv | tee /tmp/auto-version
48+
version="$(sed -ne '/Calculated SEMVER bump:/s,.*: *,,p' /tmp/auto-version)"
49+
echo "version=$version" >> "$GITHUB_OUTPUT"
4650
env:
4751
GH_TOKEN: ${{ secrets.AUTO_USER_TOKEN }}
4852

49-
- name: Build Docker images
53+
- name: Create release
5054
if: steps.auto-version.outputs.version != ''
5155
run: |
52-
docker build \
53-
-t repronim/neurodocker:master \
54-
-t repronim/neurodocker:latest \
55-
-t repronim/neurodocker:"$(git describe | sed -e 's,^v,,g')" \
56-
.
56+
~/auto shipit -vv
57+
env:
58+
GH_TOKEN: ${{ secrets.AUTO_USER_TOKEN }}
5759

58-
- name: Push Docker images
59-
if: steps.auto-version.outputs.version != ''
60+
- name: Login to Docker Hub
6061
run: |
6162
docker login -u "$DOCKER_LOGIN" --password-stdin <<<"$DOCKER_TOKEN"
62-
docker push --all-tags repronim/neurodocker
6363
env:
6464
DOCKER_LOGIN: ${{ secrets.DOCKER_LOGIN }}
6565
DOCKER_TOKEN: ${{ secrets.DOCKER_TOKEN }}
66+
67+
- name: Build and push master Docker image
68+
run: |
69+
docker build -t repronim/neurodocker:master .
70+
docker push repronim/neurodocker:master
71+
72+
- name: Build and push release Docker images
73+
if: steps.auto-version.outputs.version != ''
74+
run: |
75+
docker tag repronim/neurodocker:master repronim/neurodocker:latest
76+
docker tag repronim/neurodocker:master repronim/neurodocker:"$(git describe | sed -e 's,^v,,g')"
77+
docker push repronim/neurodocker:latest
78+
docker push repronim/neurodocker:"$(git describe | sed -e 's,^v,,g')"

0 commit comments

Comments
 (0)