Skip to content

Commit a570943

Browse files
committed
CI: Generate and publish Docker Compose files before we build the images.
1 parent 34dc3ef commit a570943

File tree

1 file changed

+37
-34
lines changed

1 file changed

+37
-34
lines changed

.github/workflows/build-brev-tutorial-docker-images.yml

Lines changed: 37 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -91,40 +91,6 @@ jobs:
9191
run: |
9292
hpccm --recipe ${{ matrix.tutorial }}/brev/docker-recipe.py --format docker > ${{ matrix.tutorial }}/brev/dockerfile
9393
94-
- name: Set up Docker Buildx
95-
uses: docker/setup-buildx-action@v3
96-
97-
- name: Log in to GitHub Container Registry
98-
uses: docker/login-action@v3
99-
with:
100-
registry: ghcr.io
101-
username: ${{ github.actor }}
102-
password: ${{ secrets.GITHUB_TOKEN }}
103-
104-
- name: Build and push Docker image (with retry)
105-
uses: nick-fields/retry@v3
106-
env:
107-
DOCKER_BUILDKIT: 1
108-
with:
109-
timeout_minutes: 60
110-
max_attempts: 3
111-
retry_wait_seconds: 30
112-
command: |
113-
cd ${{ matrix.tutorial }}/brev
114-
115-
docker buildx bake \
116-
--allow=fs.read=/home/runner \
117-
--set "base.output=type=registry" \
118-
--set "base.tags=${IMAGE_NAME}:${DOCKER_TAG_BRANCH}-latest" \
119-
--set "base.tags=${IMAGE_NAME}:${DOCKER_TAG_BRANCH}-git-${GIT_SHORT_SHA}" \
120-
$([ "${GIT_BRANCH_NAME}" = "main" ] && echo "--set base.tags=${IMAGE_NAME}:latest") \
121-
--set "base.cache-from=type=registry,ref=${IMAGE_NAME}:buildcache-${DOCKER_TAG_BRANCH},oci-mediatypes=true" \
122-
--set "base.cache-from=type=registry,ref=${IMAGE_NAME}:buildcache-main,oci-mediatypes=true" \
123-
--set "base.cache-to=type=registry,ref=${IMAGE_NAME}:buildcache-${DOCKER_TAG_BRANCH},mode=max,oci-mediatypes=true,compression=zstd,compression-level=3" \
124-
--set "base.platform=linux/amd64" \
125-
-f docker-compose.yml \
126-
base
127-
12894
- name: Generate Docker Compose files
12995
run: |
13096
python3 brev/generate-tagged-docker-composes.py \
@@ -186,9 +152,46 @@ jobs:
186152
fi
187153
done
188154
fi
155+
156+
# Return to original branch
157+
git checkout ${GITHUB_REF#refs/heads/}
189158
env:
190159
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
191160

161+
- name: Set up Docker Buildx
162+
uses: docker/setup-buildx-action@v3
163+
164+
- name: Log in to GitHub Container Registry
165+
uses: docker/login-action@v3
166+
with:
167+
registry: ghcr.io
168+
username: ${{ github.actor }}
169+
password: ${{ secrets.GITHUB_TOKEN }}
170+
171+
- name: Build and push Docker image (with retry)
172+
uses: nick-fields/retry@v3
173+
env:
174+
DOCKER_BUILDKIT: 1
175+
with:
176+
timeout_minutes: 60
177+
max_attempts: 3
178+
retry_wait_seconds: 30
179+
command: |
180+
cd ${{ matrix.tutorial }}/brev
181+
182+
docker buildx bake \
183+
--allow=fs.read=/home/runner \
184+
--set "base.output=type=registry" \
185+
--set "base.tags=${IMAGE_NAME}:${DOCKER_TAG_BRANCH}-latest" \
186+
--set "base.tags=${IMAGE_NAME}:${DOCKER_TAG_BRANCH}-git-${GIT_SHORT_SHA}" \
187+
$([ "${GIT_BRANCH_NAME}" = "main" ] && echo "--set base.tags=${IMAGE_NAME}:latest") \
188+
--set "base.cache-from=type=registry,ref=${IMAGE_NAME}:buildcache-${DOCKER_TAG_BRANCH},oci-mediatypes=true" \
189+
--set "base.cache-from=type=registry,ref=${IMAGE_NAME}:buildcache-main,oci-mediatypes=true" \
190+
--set "base.cache-to=type=registry,ref=${IMAGE_NAME}:buildcache-${DOCKER_TAG_BRANCH},mode=max,oci-mediatypes=true,compression=zstd,compression-level=3" \
191+
--set "base.platform=linux/amd64" \
192+
-f docker-compose.yml \
193+
base
194+
192195
- name: Create pending commit status for test
193196
run: |
194197
gh api \

0 commit comments

Comments
 (0)