diff --git a/.github/workflows/debian.yml b/.github/workflows/debian.yml index b07eaf7..a5dfe3f 100644 --- a/.github/workflows/debian.yml +++ b/.github/workflows/debian.yml @@ -7,6 +7,14 @@ on: - docker/debian/Dockerfile - test +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +defaults: + run: + shell: bash + env: CONTAINER_REGISTRY: ghcr.io BUILDKIT_PROGRESS: plain @@ -114,7 +122,6 @@ jobs: target: ${{ matrix.os.compiler_name }} - name: Export digest if: ${{ github.ref_type == 'branch' && github.ref_name == github.event.repository.default_branch }} - shell: bash run: | mkdir -p /tmp/digests DIGEST="${{ steps.build.outputs.digest }}" @@ -196,13 +203,11 @@ jobs: type=sha,prefix=${{ matrix.os.compiler_name }}-${{ matrix.os.compiler_version }}-sha- - name: Create manifest list and push working-directory: /tmp/digests - shell: bash run: | eval "docker buildx imagetools create \ $(jq -cr '.tags | map("-t " + .) | join(" ")' <<< "$DOCKER_METADATA_OUTPUT_JSON") \ $(jq -cr '.annotations | map("--annotation \"" + . + "\"") | join(" ")' <<< "$DOCKER_METADATA_OUTPUT_JSON") \ $(printf '${{ env.CONTAINER_IMAGE }}@sha256:%s ' *)" - name: Inspect image - shell: bash run: | docker buildx imagetools inspect ${{ env.CONTAINER_IMAGE }}:${{ steps.meta.outputs.version }} diff --git a/.github/workflows/rhel.yml b/.github/workflows/rhel.yml index 9fdca4e..b58f757 100644 --- a/.github/workflows/rhel.yml +++ b/.github/workflows/rhel.yml @@ -7,6 +7,14 @@ on: - docker/rhel/Dockerfile - test +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +defaults: + run: + shell: bash + env: CONTAINER_REGISTRY: ghcr.io REDHAT_REGISTRY: registry.redhat.io @@ -104,7 +112,6 @@ jobs: target: ${{ matrix.os.compiler_name }} - name: Export digest if: ${{ github.ref_type == 'branch' && github.ref_name == github.event.repository.default_branch }} - shell: bash run: | mkdir -p /tmp/digests DIGEST="${{ steps.build.outputs.digest }}" @@ -171,13 +178,11 @@ jobs: type=sha,prefix=${{ matrix.os.compiler_name }}-${{ matrix.os.compiler_version }}-sha- - name: Create manifest list and push working-directory: /tmp/digests - shell: bash run: | eval "docker buildx imagetools create \ $(jq -cr '.tags | map("-t " + .) | join(" ")' <<< "$DOCKER_METADATA_OUTPUT_JSON") \ $(jq -cr '.annotations | map("--annotation \"" + . + "\"") | join(" ")' <<< "$DOCKER_METADATA_OUTPUT_JSON") \ $(printf '${{ env.CONTAINER_IMAGE }}@sha256:%s ' *)" - name: Inspect image - shell: bash run: | docker buildx imagetools inspect ${{ env.CONTAINER_IMAGE }}:${{ steps.meta.outputs.version }} diff --git a/.github/workflows/tools-rippled.yml b/.github/workflows/tools-rippled.yml index dd040b2..68e9fd3 100644 --- a/.github/workflows/tools-rippled.yml +++ b/.github/workflows/tools-rippled.yml @@ -6,6 +6,14 @@ on: - .github/workflows/tools-rippled.yml - docker/tools-rippled/Dockerfile +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +defaults: + run: + shell: bash + env: CONTAINER_REGISTRY: ghcr.io BUILDKIT_PROGRESS: plain @@ -84,7 +92,6 @@ jobs: target: ${{ matrix.tool }} - name: Export digest if: ${{ github.ref_type == 'branch' && github.ref_name == github.event.repository.default_branch }} - shell: bash run: | mkdir -p /tmp/digests DIGEST="${{ steps.build.outputs.digest }}" @@ -143,13 +150,11 @@ jobs: type=raw,value=latest - name: Create manifest list and push working-directory: /tmp/digests - shell: bash run: | eval "docker buildx imagetools create \ $(jq -cr '.tags | map("-t " + .) | join(" ")' <<< "$DOCKER_METADATA_OUTPUT_JSON") \ $(jq -cr '.annotations | map("--annotation \"" + . + "\"") | join(" ")' <<< "$DOCKER_METADATA_OUTPUT_JSON") \ $(printf '${{ env.CONTAINER_IMAGE }}@sha256:%s ' *)" - name: Inspect image - shell: bash run: | docker buildx imagetools inspect ${{ env.CONTAINER_IMAGE }}:${{ steps.meta.outputs.version }} diff --git a/.github/workflows/ubuntu.yml b/.github/workflows/ubuntu.yml index f715819..3edf8b9 100644 --- a/.github/workflows/ubuntu.yml +++ b/.github/workflows/ubuntu.yml @@ -7,6 +7,14 @@ on: - docker/ubuntu/Dockerfile - test +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +defaults: + run: + shell: bash + env: CONTAINER_REGISTRY: ghcr.io BUILDKIT_PROGRESS: plain @@ -112,7 +120,6 @@ jobs: target: ${{ matrix.os.compiler_name }} - name: Export digest if: ${{ github.ref_type == 'branch' && github.ref_name == github.event.repository.default_branch }} - shell: bash run: | mkdir -p /tmp/digests DIGEST="${{ steps.build.outputs.digest }}" @@ -191,13 +198,11 @@ jobs: type=sha,prefix=${{ matrix.os.compiler_name }}-${{ matrix.os.compiler_version }}-sha- - name: Create manifest list and push working-directory: /tmp/digests - shell: bash run: | eval "docker buildx imagetools create \ $(jq -cr '.tags | map("-t " + .) | join(" ")' <<< "$DOCKER_METADATA_OUTPUT_JSON") \ $(jq -cr '.annotations | map("--annotation \"" + . + "\"") | join(" ")' <<< "$DOCKER_METADATA_OUTPUT_JSON") \ $(printf '${{ env.CONTAINER_IMAGE }}@sha256:%s ' *)" - name: Inspect image - shell: bash run: | docker buildx imagetools inspect ${{ env.CONTAINER_IMAGE }}:${{ steps.meta.outputs.version }} diff --git a/docker/debian/Dockerfile b/docker/debian/Dockerfile index 4d517f9..4cacf12 100644 --- a/docker/debian/Dockerfile +++ b/docker/debian/Dockerfile @@ -95,6 +95,7 @@ update-alternatives --install \ update-alternatives --auto cc update-alternatives --auto gcc EOF +# Set the compiler environment variables to point to the GCC binaries. ENV CC=/usr/bin/gcc ENV CXX=/usr/bin/g++ @@ -117,10 +118,10 @@ if [[ "${CXX_VER}" != "${GCC_VERSION}" ]]; then fi EOF +# Set the Conan home directory, so the users of this image can find the default +# profile. ENV HOME=/root WORKDIR ${HOME} - -# Set Conan home directory, so the users of this image can find default profile ENV CONAN_HOME=${HOME}/.conan2 # Create a default Conan profile. @@ -129,14 +130,14 @@ conan profile detect rm -rf /tmp/* EOF -# Fix the C++ dialect. -RUN sed -i -e 's|^compiler\.cppstd=.*$|compiler.cppstd=20|' $(conan config home)/profiles/default -# Explicitly set the compiler flags. +# Explicitly set the compiler flags and the distribution name and version. RUN <> $(conan config home)/global.conf <> $(conan config home)/global.conf <> $(conan config home)/global.conf <> $(conan config home)/global.conf <> $(conan config home)/global.conf <> $(conan config home)/global.conf <