Skip to content

Commit e2ca0cf

Browse files
authored
Switch Debian workflow to xrplf/ci/gcc base images (#55)
This completes the migration to `xrplf/ci/gcc` GCC images started with #54 and adds Bullseye build images with GCC versions 13, 14 and 15
1 parent 063cca0 commit e2ca0cf

File tree

1 file changed

+20
-35
lines changed

1 file changed

+20
-35
lines changed

.github/workflows/debian.yml

Lines changed: 20 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,15 @@ jobs:
4141
- release: bullseye
4242
compiler_name: gcc
4343
compiler_version: 12
44+
- release: bullseye
45+
compiler_name: gcc
46+
compiler_version: 13
47+
- release: bullseye
48+
compiler_name: gcc
49+
compiler_version: 14
50+
- release: bullseye
51+
compiler_name: gcc
52+
compiler_version: 15
4453
- release: bookworm
4554
compiler_name: gcc
4655
compiler_version: 12
@@ -94,41 +103,8 @@ jobs:
94103
PLATFORM=${{ matrix.architecture.platform }}
95104
echo "PLATFORM_PAIR=${PLATFORM//\//-}" >> $GITHUB_ENV
96105
if [ "${{ matrix.os.release == 'bullseye' }}" == "true" ]; then
97-
echo "CONTAINER_REPOSITORY_GCC=${CONTAINER_REPO}/debian-gcc" >> $GITHUB_ENV
98-
echo "CONTAINER_IMAGE_GCC=${CONTAINER_REGISTRY}/${CONTAINER_REPO}/debian-gcc" >> $GITHUB_ENV
106+
echo "CONTAINER_IMAGE_GCC=${CONTAINER_REGISTRY}/${CONTAINER_REPO}/gcc" >> $GITHUB_ENV
99107
fi
100-
- name: Prepare gcc image metadata
101-
if: ${{ env.CONTAINER_IMAGE_GCC }}
102-
id: meta-gcc
103-
uses: docker/metadata-action@c1e51972afc2121e065aed6d45c65596fe445f3f # v5.8.0
104-
env:
105-
DOCKER_METADATA_ANNOTATIONS_LEVELS: manifest,manifest-descriptor
106-
with:
107-
images: ${{ env.CONTAINER_IMAGE_GCC }}
108-
labels: |
109-
org.opencontainers.image.authors=For inquiries, please use https://${{ github.repository }}/issues
110-
org.opencontainers.image.documentation=https://${{ github.repository }}
111-
org.opencontainers.image.vendor=XRPLF
112-
org.opencontainers.image.title=${{ env.CONTAINER_REPOSITORY_GCC }}
113-
- name: Build gcc image
114-
# Note, we always push this image, otherwise steps.build will fail.
115-
# Also, because we always push it, we intentionally do not tag it.
116-
# TODO: Move to separate workflow or job
117-
if: ${{ env.CONTAINER_IMAGE_GCC }}
118-
id: build-gcc
119-
uses: docker/build-push-action@263435318d21b8e681c14492fe198d362a7d2c83 # v6.18.0
120-
with:
121-
build-args: |
122-
BUILDKIT_DOCKERFILE_CHECK=skip=InvalidDefaultArgInFrom
123-
BUILDKIT_INLINE_CACHE=1
124-
context: .
125-
file: docker/debian/Dockerfile.gcc-${{ matrix.os.compiler_version }}-${{ matrix.os.release }}
126-
outputs: type=image,name=${{ env.CONTAINER_IMAGE_GCC }},push-by-digest=true,name-canonical=true,push=true
127-
platforms: ${{ matrix.architecture.platform }}
128-
provenance: mode=max
129-
push: true
130-
sbom: true
131-
labels: ${{ steps.meta-gcc.outputs.labels }}
132108
- name: Prepare container metadata
133109
id: meta
134110
uses: docker/metadata-action@c1e51972afc2121e065aed6d45c65596fe445f3f # v5.8.0
@@ -158,7 +134,7 @@ jobs:
158134
CMAKE_VERSION=${{ env.CMAKE_VERSION }}
159135
MOLD_VERSION=${{ env.MOLD_VERSION }}
160136
DEBIAN_VERSION=${{ matrix.os.release }}
161-
BASE_IMAGE=${{ env.CONTAINER_IMAGE_GCC && format('{0}@{1}', env.CONTAINER_IMAGE_GCC, steps.build-gcc.outputs.digest) || format('gcc:{0}-{1}', matrix.os.compiler_version, matrix.os.release) }}
137+
BASE_IMAGE=${{ env.CONTAINER_IMAGE_GCC && format('{0}:{1}-{2}', env.CONTAINER_IMAGE_GCC, matrix.os.compiler_version, matrix.os.release) || format('gcc:{0}-{1}', matrix.os.compiler_version, matrix.os.release) }}
162138
context: .
163139
file: docker/debian/Dockerfile
164140
outputs: type=image,name=${{ env.CONTAINER_IMAGE }},push-by-digest=true,name-canonical=true,push=true
@@ -191,6 +167,15 @@ jobs:
191167
- release: bullseye
192168
compiler_name: gcc
193169
compiler_version: 12
170+
- release: bullseye
171+
compiler_name: gcc
172+
compiler_version: 13
173+
- release: bullseye
174+
compiler_name: gcc
175+
compiler_version: 14
176+
- release: bullseye
177+
compiler_name: gcc
178+
compiler_version: 15
194179
- release: bookworm
195180
compiler_name: gcc
196181
compiler_version: 12

0 commit comments

Comments
 (0)