Skip to content

Commit 90cb6fc

Browse files
committed
Remove default arg values and disable warning
1 parent aa2db2b commit 90cb6fc

File tree

9 files changed

+90
-37
lines changed

9 files changed

+90
-37
lines changed

.github/workflows/debian.yml

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ env:
1111
DOCKER_BUILDKIT: 1
1212
BUILDKIT_PROGRESS: plain
1313
CONAN_VERSION: 2.17.0
14+
NONROOT_USER: ci
1415

1516
jobs:
1617
# Build the Docker image for Debian using different versions of GCC.
@@ -41,10 +42,13 @@ jobs:
4142
run: |
4243
docker build . \
4344
--target gcc \
44-
--build-arg GITHUB_REPO=${GITHUB_REPOSITORY} \
45+
--build-arg BUILDKIT_DOCKERFILE_CHECK=skip=InvalidDefaultArgInFrom \
46+
--build-arg BUILDKIT_INLINE_CACHE=1 \
47+
--build-arg CONAN_VERSION=${{ env.CONAN_VERSION }} \
4548
--build-arg DEBIAN_VERSION=${{ matrix.version.os }} \
4649
--build-arg GCC_VERSION=${{ matrix.version.gcc }} \
47-
--build-arg CONAN_VERSION=${{ env.CONAN_VERSION }} \
50+
--build-arg GITHUB_REPO=${GITHUB_REPOSITORY} \
51+
--build-arg NONROOT_USER=${{ env.NONROOT_USER }} \
4852
--tag ${{ env.DOCKER_IMAGE }}
4953
- name: Push the Docker image
5054
run: docker push ${{ env.DOCKER_IMAGE }}
@@ -81,10 +85,13 @@ jobs:
8185
run: |
8286
docker build . \
8387
--target clang \
84-
--build-arg GITHUB_REPO=${GITHUB_REPOSITORY} \
85-
--build-arg DEBIAN_VERSION=${{ matrix.version.os }} \
88+
--build-arg BUILDKIT_DOCKERFILE_CHECK=skip=InvalidDefaultArgInFrom \
89+
--build-arg BUILDKIT_INLINE_CACHE=1 \
8690
--build-arg CLANG_VERSION=${{ matrix.version.clang }} \
8791
--build-arg CONAN_VERSION=${{ env.CONAN_VERSION }} \
92+
--build-arg DEBIAN_VERSION=${{ matrix.version.os }} \
93+
--build-arg GITHUB_REPO=${GITHUB_REPOSITORY} \
94+
--build-arg NONROOT_USER=${{ env.NONROOT_USER }} \
8895
--tag ${{ env.DOCKER_IMAGE }}
8996
- name: Push the Docker image
9097
run: docker push ${{ env.DOCKER_IMAGE }}

.github/workflows/rhel.yml

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ env:
1212
DOCKER_BUILDKIT: 1
1313
BUILDKIT_PROGRESS: plain
1414
CONAN_VERSION: 2.17.0
15+
NONROOT_USER: ci
1516

1617
jobs:
1718
# Build the Docker image for Red Hat Enterprise Linux using different versions
@@ -43,10 +44,13 @@ jobs:
4344
run: |
4445
docker build . \
4546
--target gcc \
46-
--build-arg GITHUB_REPO=${GITHUB_REPOSITORY} \
47-
--build-arg RHEL_VERSION=${{ matrix.version.os }} \
47+
--build-arg BUILDKIT_DOCKERFILE_CHECK=skip=InvalidDefaultArgInFrom \
48+
--build-arg BUILDKIT_INLINE_CACHE=1 \
4849
--build-arg GCC_VERSION=${{ matrix.version.gcc }} \
4950
--build-arg CONAN_VERSION=${{ env.CONAN_VERSION }} \
51+
--build-arg GITHUB_REPO=${GITHUB_REPOSITORY} \
52+
--build-arg NONROOT_USER=${{ env.NONROOT_USER }} \
53+
--build-arg RHEL_VERSION=${{ matrix.version.os }} \
5054
--tag ${{ env.DOCKER_IMAGE }}
5155
- name: Push the Docker image
5256
run: docker push ${{ env.DOCKER_IMAGE }}
@@ -78,9 +82,12 @@ jobs:
7882
run: |
7983
docker build . \
8084
--target clang \
85+
--build-arg BUILDKIT_DOCKERFILE_CHECK=skip=InvalidDefaultArgInFrom \
86+
--build-arg BUILDKIT_INLINE_CACHE=1 \
87+
--build-arg CONAN_VERSION=${{ env.CONAN_VERSION }} \
8188
--build-arg GITHUB_REPO=${GITHUB_REPOSITORY} \
89+
--build-arg NONROOT_USER=${{ env.NONROOT_USER }} \
8290
--build-arg RHEL_VERSION=${{ matrix.version.os }} \
83-
--build-arg CONAN_VERSION=${{ env.CONAN_VERSION }} \
8491
--tag ${{ env.DOCKER_IMAGE }}
8592
- name: Push the Docker image
8693
run: docker push ${{ env.DOCKER_IMAGE }}

.github/workflows/ubuntu.yml

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ env:
1111
DOCKER_BUILDKIT: 1
1212
BUILDKIT_PROGRESS: plain
1313
CONAN_VERSION: 2.17.0
14+
NONROOT_USER: ci
1415

1516
jobs:
1617
# Build the Docker image for Ubuntu using different versions of GCC. See
@@ -42,10 +43,13 @@ jobs:
4243
run: |
4344
docker build . \
4445
--target gcc \
46+
--build-arg BUILDKIT_DOCKERFILE_CHECK=skip=InvalidDefaultArgInFrom \
47+
--build-arg BUILDKIT_INLINE_CACHE=1 \
48+
--build-arg CONAN_VERSION=${{ env.CONAN_VERSION }} \
49+
--build-arg GCC_VERSION=${{ matrix.version.gcc }} \
4550
--build-arg GITHUB_REPO=${GITHUB_REPOSITORY} \
51+
--build-arg NONROOT_USER=${{ env.NONROOT_USER }} \
4652
--build-arg UBUNTU_VERSION=${{ matrix.version.os }} \
47-
--build-arg GCC_VERSION=${{ matrix.version.gcc }} \
48-
--build-arg CONAN_VERSION=${{ env.CONAN_VERSION }} \
4953
--tag ${{ env.DOCKER_IMAGE }}
5054
- name: Push the Docker image
5155
run: docker push ${{ env.DOCKER_IMAGE }}
@@ -81,10 +85,13 @@ jobs:
8185
run: |
8286
docker build . \
8387
--target clang \
84-
--build-arg GITHUB_REPO=${GITHUB_REPOSITORY} \
85-
--build-arg UBUNTU_VERSION=${{ matrix.version.os }} \
88+
--build-arg BUILDKIT_DOCKERFILE_CHECK=skip=InvalidDefaultArgInFrom \
89+
--build-arg BUILDKIT_INLINE_CACHE=1 \
8690
--build-arg CLANG_VERSION=${{ matrix.version.clang }} \
8791
--build-arg CONAN_VERSION=${{ env.CONAN_VERSION }} \
92+
--build-arg GITHUB_REPO=${GITHUB_REPOSITORY} \
93+
--build-arg NONROOT_USER=${{ env.NONROOT_USER }} \
94+
--build-arg UBUNTU_VERSION=${{ matrix.version.os }} \
8895
--tag ${{ env.DOCKER_IMAGE }}
8996
- name: Push the Docker image
9097
run: docker push ${{ env.DOCKER_IMAGE }}

docker/debian/Dockerfile

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,11 @@
33
# contain dynamic values supplied via an argument. We are using GCC image rather
44
# than the official Debian package to access the latest versions, built by the
55
# GCC team specifically for this Debian release. For build images using official
6-
# distribution packages, see Ubuntu.
7-
ARG DEBIAN_VERSION=bookworm
8-
ARG GCC_VERSION=12
6+
# distribution packages, see Ubuntu. We set the GCC version to "invalid" to
7+
# satisfy the syntax checker, as it checks if the `FROM` command has a valid
8+
# image, even though it is not used for Clang.
9+
ARG DEBIAN_VERSION
10+
ARG GCC_VERSION=invalid
911
FROM gcc:${GCC_VERSION}-${DEBIAN_VERSION} AS gcc-src
1012

1113
# ====================== BASE IMAGE ======================
@@ -16,7 +18,7 @@ SHELL ["/bin/bash", "-c"]
1618
ENTRYPOINT ["/bin/bash"]
1719

1820
# Associate the image with the repository.
19-
ARG GITHUB_REPO=XRPLF/ci
21+
ARG GITHUB_REPO
2022
LABEL org.opencontainers.image.source=https://github.com/${GITHUB_REPO}
2123

2224
# Ensure any packages installed directly or indirectly via dpkg do not require
@@ -46,14 +48,14 @@ apt install -y "${pkgs[@]}"
4648
EOF
4749

4850
# Install Conan.
49-
ARG CONAN_VERSION=2.17.0
51+
ARG CONAN_VERSION
5052
RUN PIPX_HOME=/opt/pipx \
5153
PIPX_BIN_DIR=/usr/bin \
5254
PIPX_MAN_DIR=/usr/share/man \
5355
pipx install conan==${CONAN_VERSION}
5456

5557
# Create the user to switch to, once all packages have been installed.
56-
ARG NONROOT_USER=ci
58+
ARG NONROOT_USER
5759
RUN useradd -ms /bin/bash ${NONROOT_USER}
5860

5961
# ====================== GCC IMAGE ======================
@@ -105,7 +107,7 @@ FROM base AS clang
105107
# must repeat the DEBIAN_VERSION argument here, as it is not inherited from the
106108
# base image.
107109
ARG DEBIAN_VERSION
108-
ARG CLANG_VERSION=16
110+
ARG CLANG_VERSION
109111
RUN curl --no-progress-meter https://apt.llvm.org/llvm-snapshot.gpg.key | gpg --dearmor -o /etc/apt/keyrings/llvm.gpg && \
110112
printf "%s\n%s\n" \
111113
"deb [signed-by=/etc/apt/keyrings/llvm.gpg] https://apt.llvm.org/${DEBIAN_VERSION}/ llvm-toolchain-${DEBIAN_VERSION}-${CLANG_VERSION} main" \

docker/debian/README.md

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,17 +37,22 @@ Ensure you've run the login command above to authenticate with the Docker
3737
registry.
3838

3939
```shell
40+
GITHUB_REPO=XRPLF/ci
41+
NONROOT_USER=${USER}
4042
DEBIAN_VERSION=bookworm
4143
GCC_VERSION=12
4244
CONAN_VERSION=2.17.0
4345
DOCKER_IMAGE=xrplf/ci/debian-${DEBIAN_VERSION}:gcc${GCC_VERSION}
4446

4547
DOCKER_BUILDKIT=1 BUILDKIT_PROGRESS=plain docker build . \
4648
--target gcc \
49+
--build-arg BUILDKIT_DOCKERFILE_CHECK=skip=InvalidDefaultArgInFrom \
4750
--build-arg BUILDKIT_INLINE_CACHE=1 \
51+
--build-arg CONAN_VERSION=${CONAN_VERSION} \
4852
--build-arg DEBIAN_VERSION=${DEBIAN_VERSION} \
4953
--build-arg GCC_VERSION=${GCC_VERSION} \
50-
--build-arg CONAN_VERSION=${CONAN_VERSION} \
54+
--build-arg GITHUB_REPO=${GITHUB_REPO} \
55+
--build-arg NONROOT_USER=${NONROOT_USER} \
5156
--tag ${CONTAINER_REGISTRY}/${DOCKER_IMAGE} \
5257
--platform linux/amd64
5358
```
@@ -58,17 +63,22 @@ Ensure you've run the login command above to authenticate with the Docker
5863
registry.
5964

6065
```shell
66+
GITHUB_REPO=XRPLF/ci
67+
NONROOT_USER=${USER}
6168
DEBIAN_VERSION=bookworm
6269
CLANG_VERSION=17
6370
CONAN_VERSION=2.17.0
6471
DOCKER_IMAGE=xrplf/ci/debian-${DEBIAN_VERSION}:clang${CLANG_VERSION}
6572

6673
DOCKER_BUILDKIT=1 BUILDKIT_PROGRESS=plain docker build . \
6774
--target clang \
75+
--build-arg BUILDKIT_DOCKERFILE_CHECK=skip=InvalidDefaultArgInFrom \
6876
--build-arg BUILDKIT_INLINE_CACHE=1 \
69-
--build-arg DEBIAN_VERSION=${DEBIAN_VERSION} \
7077
--build-arg CLANG_VERSION=${CLANG_VERSION} \
7178
--build-arg CONAN_VERSION=${CONAN_VERSION} \
79+
--build-arg DEBIAN_VERSION=${DEBIAN_VERSION} \
80+
--build-arg GITHUB_REPO=${GITHUB_REPO} \
81+
--build-arg NONROOT_USER=${NONROOT_USER} \
7282
--tag ${CONTAINER_REGISTRY}/${DOCKER_IMAGE} \
7383
--platform linux/amd64
7484
```

docker/rhel/Dockerfile

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# ====================== GCC IMAGE ======================
2-
ARG RHEL_VERSION=9.6
2+
ARG RHEL_VERSION
33
FROM registry.redhat.io/ubi${RHEL_VERSION%.*}/s2i-base:${RHEL_VERSION} AS base
44

55
# Change to the root user to install packages.
@@ -10,7 +10,7 @@ SHELL ["/bin/bash", "-c"]
1010
ENTRYPOINT ["/bin/bash"]
1111

1212
# Associate the image with the repository.
13-
ARG GITHUB_REPO=XRPLF/ci
13+
ARG GITHUB_REPO
1414
LABEL org.opencontainers.image.source=https://github.com/${GITHUB_REPO}
1515

1616
# Install tools that are shared by all stages.
@@ -29,18 +29,18 @@ dnf install -y --setopt=tsflags=nodocs "${pkgs[@]}"
2929
EOF
3030

3131
# Install Conan.
32-
ARG CONAN_VERSION=2.17.0
32+
ARG CONAN_VERSION
3333
RUN pip install conan==${CONAN_VERSION}
3434

3535
# Create the user to switch to, once all packages have been installed.
36-
ARG NONROOT_USER=ci
36+
ARG NONROOT_USER
3737
RUN useradd -ms /bin/bash ${NONROOT_USER}
3838

3939
# ====================== GCC IMAGE ======================
4040
FROM base AS gcc
4141

4242
# Install GCC.
43-
ARG GCC_VERSION=14
43+
ARG GCC_VERSION
4444
RUN dnf install -y --setopt=tsflags=nodocs gcc-toolset-${GCC_VERSION}-gcc gcc-toolset-${GCC_VERSION}-gcc-c++
4545

4646
# Switch to the non-root user.

docker/rhel/README.md

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,17 +56,22 @@ Ensure you've run the login command above to authenticate with the Docker
5656
registry.
5757

5858
```shell
59+
GITHUB_REPO=XRPLF/ci
60+
NONROOT_USER=${USER}
5961
RHEL_VERSION=9.6
6062
GCC_VERSION=13
6163
CONAN_VERSION=2.17.0
6264
DOCKER_IMAGE=xrplf/ci/rhel-${RHEL_VERSION}:gcc${GCC_VERSION}
6365

6466
DOCKER_BUILDKIT=1 BUILDKIT_PROGRESS=plain docker build . \
6567
--target gcc \
68+
--build-arg BUILDKIT_DOCKERFILE_CHECK=skip=InvalidDefaultArgInFrom \
6669
--build-arg BUILDKIT_INLINE_CACHE=1 \
67-
--build-arg RHEL_VERSION=${RHEL_VERSION} \
68-
--build-arg GCC_VERSION=${GCC_VERSION} \
6970
--build-arg CONAN_VERSION=${CONAN_VERSION} \
71+
--build-arg GCC_VERSION=${GCC_VERSION} \
72+
--build-arg GITHUB_REPO=${GITHUB_REPO} \
73+
--build-arg NONROOT_USER=${NONROOT_USER} \
74+
--build-arg RHEL_VERSION=${RHEL_VERSION} \
7075
--tag ${CONTAINER_REGISTRY}/${DOCKER_IMAGE} \
7176
--platform linux/amd64
7277
```
@@ -77,15 +82,20 @@ Ensure you've run the login command above to authenticate with the Docker
7782
registry.
7883

7984
```shell
85+
GITHUB_REPO=XRPLF/ci
86+
NONROOT_USER=${USER}
8087
RHEL_VERSION=9.6
8188
CONAN_VERSION=2.17.0
8289
DOCKER_IMAGE=xrplf/ci/rhel-${RHEL_VERSION}:clang${CLANG_VERSION}
8390

8491
DOCKER_BUILDKIT=1 BUILDKIT_PROGRESS=plain docker build . \
8592
--target clang \
93+
--build-arg BUILDKIT_DOCKERFILE_CHECK=skip=InvalidDefaultArgInFrom \
8694
--build-arg BUILDKIT_INLINE_CACHE=1 \
87-
--build-arg RHEL_VERSION=${RHEL_VERSION} \
8895
--build-arg CONAN_VERSION=${CONAN_VERSION} \
96+
--build-arg GITHUB_REPO=${GITHUB_REPO} \
97+
--build-arg NONROOT_USER=${NONROOT_USER} \
98+
--build-arg RHEL_VERSION=${RHEL_VERSION} \
8999
--tag ${CONTAINER_REGISTRY}/${DOCKER_IMAGE} \
90100
--platform linux/amd64
91101
```

docker/ubuntu/Dockerfile

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
# ====================== BASE IMAGE ======================
2-
ARG UBUNTU_VERSION=jammy
2+
ARG UBUNTU_VERSION
33
FROM ubuntu:${UBUNTU_VERSION} AS base
44

55
# Use Bash as the default shell for RUN commands and as the entrypoint.
66
SHELL ["/bin/bash", "-c"]
77
ENTRYPOINT ["/bin/bash"]
88

99
# Associate the image with the repository.
10-
ARG GITHUB_REPO=XRPLF/ci
10+
ARG GITHUB_REPO
1111
LABEL org.opencontainers.image.source=https://github.com/${GITHUB_REPO}
1212

1313
# Ensure any packages installed directly or indirectly via dpkg do not require
@@ -37,21 +37,21 @@ apt install -y "${pkgs[@]}"
3737
EOF
3838

3939
# Install Conan.
40-
ARG CONAN_VERSION=2.17.0
40+
ARG CONAN_VERSION
4141
RUN PIPX_HOME=/opt/pipx \
4242
PIPX_BIN_DIR=/usr/bin \
4343
PIPX_MAN_DIR=/usr/share/man \
4444
pipx install conan==${CONAN_VERSION}
4545

4646
# Create the user to switch to, once all packages have been installed.
47-
ARG NONROOT_USER=ci
47+
ARG NONROOT_USER
4848
RUN useradd -ms /bin/bash ${NONROOT_USER}
4949

5050
# ====================== GCC IMAGE ======================
5151
FROM base AS gcc
5252

5353
# Install GCC.
54-
ARG GCC_VERSION=12
54+
ARG GCC_VERSION
5555
RUN apt install -y gcc-${GCC_VERSION} g++-${GCC_VERSION}
5656
ENV CC=/usr/bin/gcc-${GCC_VERSION}
5757
ENV CXX=/usr/bin/gcc-${GCC_VERSION}
@@ -74,7 +74,7 @@ RUN conan profile show
7474
FROM base AS clang
7575

7676
# Install Clang.
77-
ARG CLANG_VERSION=16
77+
ARG CLANG_VERSION
7878
RUN apt install -y clang-${CLANG_VERSION} llvm-${CLANG_VERSION}
7979
ENV CC=/usr/bin/clang-${CLANG_VERSION}
8080
ENV CXX=/usr/bin/clang++-${CLANG_VERSION}

docker/ubuntu/README.md

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,17 +37,22 @@ Ensure you've run the login command above to authenticate with the Docker
3737
registry.
3838

3939
```shell
40+
GITHUB_REPO=XRPLF/ci
41+
NONROOT_USER=${USER}
4042
UBUNTU_VERSION=noble
4143
GCC_VERSION=14
4244
CONAN_VERSION=2.17.0
4345
DOCKER_IMAGE=xrplf/ci/ubuntu-${UBUNTU_VERSION}:gcc${GCC_VERSION}
4446

4547
DOCKER_BUILDKIT=1 BUILDKIT_PROGRESS=plain docker build . \
4648
--target gcc \
49+
--build-arg BUILDKIT_DOCKERFILE_CHECK=skip=InvalidDefaultArgInFrom \
4750
--build-arg BUILDKIT_INLINE_CACHE=1 \
48-
--build-arg UBUNTU_VERSION=${UBUNTU_VERSION} \
49-
--build-arg GCC_VERSION=${GCC_VERSION} \
5051
--build-arg CONAN_VERSION=${CONAN_VERSION} \
52+
--build-arg GCC_VERSION=${GCC_VERSION} \
53+
--build-arg GITHUB_REPO=${GITHUB_REPO} \
54+
--build-arg NONROOT_USER=${NONROOT_USER} \
55+
--build-arg UBUNTU_VERSION=${UBUNTU_VERSION} \
5156
--tag ${CONTAINER_REGISTRY}/${DOCKER_IMAGE} \
5257
--platform linux/amd64
5358
```
@@ -58,17 +63,22 @@ Ensure you've run the login command above to authenticate with the Docker
5863
registry.
5964

6065
```shell
66+
GITHUB_REPO=XRPLF/ci
67+
NONROOT_USER=${USER}
6168
UBUNTU_VERSION=noble
6269
CLANG_VERSION=18
6370
CONAN_VERSION=2.17.0
6471
DOCKER_IMAGE=xrplf/ci/ubuntu-${UBUNTU_VERSION}:clang${CLANG_VERSION}
6572

6673
DOCKER_BUILDKIT=1 BUILDKIT_PROGRESS=plain docker build . \
6774
--target clang \
75+
--build-arg BUILDKIT_DOCKERFILE_CHECK=skip=InvalidDefaultArgInFrom \
6876
--build-arg BUILDKIT_INLINE_CACHE=1 \
69-
--build-arg UBUNTU_VERSION=${UBUNTU_VERSION} \
7077
--build-arg CLANG_VERSION=${CLANG_VERSION} \
7178
--build-arg CONAN_VERSION=${CONAN_VERSION} \
79+
--build-arg GITHUB_REPO=${GITHUB_REPO} \
80+
--build-arg NONROOT_USER=${NONROOT_USER} \
81+
--build-arg UBUNTU_VERSION=${UBUNTU_VERSION} \
7282
--tag ${CONTAINER_REGISTRY}/${DOCKER_IMAGE} \
7383
--platform linux/amd64
7484
```

0 commit comments

Comments
 (0)