From 15755d6f93de890a7f6d9347ab4f554a6479f5c3 Mon Sep 17 00:00:00 2001 From: shenxianpeng Date: Sat, 30 Aug 2025 10:33:54 +0300 Subject: [PATCH 1/9] feat: support clang v21 --- Dockerfile.all | 4 ++-- README.md | 4 +++- docker-bake.hcl | 2 ++ 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/Dockerfile.all b/Dockerfile.all index 509eb2f..5cfe108 100644 --- a/Dockerfile.all +++ b/Dockerfile.all @@ -18,7 +18,7 @@ RUN set -e \ apt-get --no-install-recommends -y install clang-format-$CLANG_VERSION clang-tidy-$CLANG_VERSION; done \ && rm -rf /var/lib/apt/lists/* -ENV CLANG_VERSIONS="20 19 18 17 16 15 14 13" +ENV CLANG_VERSIONS="21 20 19 18 17 16 15 14 13" SHELL ["/bin/bash", "-o", "pipefail", "-c"] @@ -33,7 +33,7 @@ RUN set -e \ && rm llvm.sh \ && rm -rf /var/lib/apt/lists/* -ENV CLANG_VERSIONS="20 19 18 17 16 15 14 13 12 11 10 9" +ENV CLANG_VERSIONS="21 20 19 18 17 16 15 14 13 12 11 10 9" # Integrity testing RUN set -e \ && for VERSION in $CLANG_VERSIONS; do \ diff --git a/README.md b/README.md index 1aefee2..3329603 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,9 @@ You can access all available Clang Tools Docker images via [Docker Hub registry ## Supported Tags and Dockerfile links -* [`all`](https://github.com/cpp-linter/clang-tools-docker/blob/master/Dockerfile.all) (Supports versions of clang-tools includes `20`, `19`, `18`, `17`, `16`, `15`, `14`, `13`, `12`, `11`, `10`, `9`) +* [`all`](https://github.com/cpp-linter/clang-tools-docker/blob/master/Dockerfile.all) (Supports versions of clang-tools includes `21`, `20`, `19`, `18`, `17`, `16`, `15`, `14`, `13`, `12`, `11`, `10`, `9`) +* [`21`](https://github.com/cpp-linter/clang-tools-docker/blob/master/Dockerfile) +* [`21-alpine`](https://github.com/cpp-linter/clang-tools-docker/blob/master/Dockerfile.alpine) * [`20`](https://github.com/cpp-linter/clang-tools-docker/blob/master/Dockerfile) * [`20-alpine`](https://github.com/cpp-linter/clang-tools-docker/blob/master/Dockerfile.alpine) * [`19`](https://github.com/cpp-linter/clang-tools-docker/blob/master/Dockerfile) diff --git a/docker-bake.hcl b/docker-bake.hcl index 023ae91..6891dc7 100644 --- a/docker-bake.hcl +++ b/docker-bake.hcl @@ -2,6 +2,8 @@ group "default" { targets = [ "all", + "21", + "21-alpine", "20", "20-alpine", "19", From e021bbf2c70b064b8f55e681c266737b2027d280 Mon Sep 17 00:00:00 2001 From: Xianpeng Shen Date: Fri, 19 Sep 2025 06:14:57 +0000 Subject: [PATCH 2/9] feat: add ubuntu:questing to support v21 --- docker-bake.hcl | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/docker-bake.hcl b/docker-bake.hcl index 6891dc7..489c8b2 100644 --- a/docker-bake.hcl +++ b/docker-bake.hcl @@ -50,6 +50,26 @@ target "all" { output = ["type=image"] } +target "clang-tools" { + matrix = { + tgt = ["21"] + } + name = "${tgt}" + dockerfile = "Dockerfile" + context = "." + args = { + # https://packages.ubuntu.com/search?suite=default§ion=all&arch=any&keywords=clang-format-21&searchon=names + BASE_IMAGE="ubuntu:questing" + CLANG_VERSION="${tgt}", + } + tags = [ + "${DOCKER_REPO}:${tgt}", + "${GITHUB_REPO}:${tgt}" + ] + platforms = ["linux/amd64", "linux/arm64"] + output = ["type=image"] +} + target "clang-tools" { matrix = { tgt = ["20"] @@ -169,7 +189,7 @@ target "clang-tools" { target "clang-tools" { matrix = { - tgt = ["16-alpine", "17-alpine", "18-alpine", "19-alpine", "20-alpine"] + tgt = ["16-alpine", "17-alpine", "18-alpine", "19-alpine", "20-alpine", "21-alpine"] } name = "${tgt}" dockerfile = "Dockerfile.alpine" From 3acae17d29d5c7108e771ba8c9bbeee8e1b2cd1d Mon Sep 17 00:00:00 2001 From: Xianpeng Shen Date: Fri, 19 Sep 2025 08:19:59 +0000 Subject: [PATCH 3/9] fix: update ubuntu image from oracular to plucky --- docker-bake.hcl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker-bake.hcl b/docker-bake.hcl index 489c8b2..fa7750e 100644 --- a/docker-bake.hcl +++ b/docker-bake.hcl @@ -99,7 +99,7 @@ target "clang-tools" { context = "." args = { # https://packages.ubuntu.com/search?suite=default§ion=all&arch=any&keywords=clang-format-19&searchon=names - BASE_IMAGE="ubuntu:oracular" + BASE_IMAGE="ubuntu:plucky" CLANG_VERSION="${tgt}", } tags = [ From 9133356e77394c857f8ce01c1859fdf2904f2ab0 Mon Sep 17 00:00:00 2001 From: Xianpeng Shen Date: Fri, 19 Sep 2025 12:48:45 +0300 Subject: [PATCH 4/9] Update docker-bake.hcl --- docker-bake.hcl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker-bake.hcl b/docker-bake.hcl index fa7750e..3181b9b 100644 --- a/docker-bake.hcl +++ b/docker-bake.hcl @@ -99,7 +99,7 @@ target "clang-tools" { context = "." args = { # https://packages.ubuntu.com/search?suite=default§ion=all&arch=any&keywords=clang-format-19&searchon=names - BASE_IMAGE="ubuntu:plucky" + BASE_IMAGE="ubuntu:24.10" CLANG_VERSION="${tgt}", } tags = [ From 94fa6b228c9caea6348666a8f144b7d214032fdb Mon Sep 17 00:00:00 2001 From: shenxianpeng Date: Sat, 20 Sep 2025 00:00:47 +0300 Subject: [PATCH 5/9] fix: move v17 to ubuntu:noble --- docker-bake.hcl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docker-bake.hcl b/docker-bake.hcl index 3181b9b..8953785 100644 --- a/docker-bake.hcl +++ b/docker-bake.hcl @@ -112,7 +112,7 @@ target "clang-tools" { target "clang-tools" { matrix = { - tgt = ["18"] + tgt = ["18", "17"] } name = "${tgt}" dockerfile = "Dockerfile" @@ -132,7 +132,7 @@ target "clang-tools" { target "clang-tools" { matrix = { - tgt = ["17", "16", "15", "14"] + tgt = ["16", "15", "14"] } name = "${tgt}" dockerfile = "Dockerfile" From d54bb33f23f5773aa3f33edd7a09c687c0374d72 Mon Sep 17 00:00:00 2001 From: shenxianpeng Date: Sat, 20 Sep 2025 00:02:50 +0300 Subject: [PATCH 6/9] fix: move v19 to ubuntu:plucky --- docker-bake.hcl | 22 +--------------------- 1 file changed, 1 insertion(+), 21 deletions(-) diff --git a/docker-bake.hcl b/docker-bake.hcl index 8953785..c21148e 100644 --- a/docker-bake.hcl +++ b/docker-bake.hcl @@ -72,7 +72,7 @@ target "clang-tools" { target "clang-tools" { matrix = { - tgt = ["20"] + tgt = ["20", "19"] } name = "${tgt}" dockerfile = "Dockerfile" @@ -90,26 +90,6 @@ target "clang-tools" { output = ["type=image"] } -target "clang-tools" { - matrix = { - tgt = ["19"] - } - name = "${tgt}" - dockerfile = "Dockerfile" - context = "." - args = { - # https://packages.ubuntu.com/search?suite=default§ion=all&arch=any&keywords=clang-format-19&searchon=names - BASE_IMAGE="ubuntu:24.10" - CLANG_VERSION="${tgt}", - } - tags = [ - "${DOCKER_REPO}:${tgt}", - "${GITHUB_REPO}:${tgt}" - ] - platforms = ["linux/amd64", "linux/arm64"] - output = ["type=image"] -} - target "clang-tools" { matrix = { tgt = ["18", "17"] From 1c941f384e0c47fc971dd7b62f245f9dd4b2afcf Mon Sep 17 00:00:00 2001 From: shenxianpeng Date: Sat, 20 Sep 2025 00:04:55 +0300 Subject: [PATCH 7/9] chore: add continue-on-error is true --- .github/workflows/CI.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 0fed73b..c95b3dd 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -54,6 +54,7 @@ jobs: - name: Build image for tag ${{ matrix.target }} run: docker buildx bake --file docker-bake.hcl ${{ matrix.target }} + continue-on-error: true - name: Login container registries if: github.ref == 'refs/heads/master' && github.event_name == 'workflow_dispatch' From 1108bf9fd320c1ca927183786188c219c63ad2ee Mon Sep 17 00:00:00 2001 From: shenxianpeng Date: Sat, 20 Sep 2025 00:09:45 +0300 Subject: [PATCH 8/9] update docker-bake.hcl --- docker-bake.hcl | 21 +-------------------- 1 file changed, 1 insertion(+), 20 deletions(-) diff --git a/docker-bake.hcl b/docker-bake.hcl index c21148e..1bce355 100644 --- a/docker-bake.hcl +++ b/docker-bake.hcl @@ -92,7 +92,7 @@ target "clang-tools" { target "clang-tools" { matrix = { - tgt = ["18", "17"] + tgt = ["18", "17", "16", "15", "14"] } name = "${tgt}" dockerfile = "Dockerfile" @@ -110,25 +110,6 @@ target "clang-tools" { output = ["type=image"] } -target "clang-tools" { - matrix = { - tgt = ["16", "15", "14"] - } - name = "${tgt}" - dockerfile = "Dockerfile" - context = "." - args = { - BASE_IMAGE="ubuntu:24.10" - CLANG_VERSION="${tgt}", - } - tags = [ - "${DOCKER_REPO}:${tgt}", - "${GITHUB_REPO}:${tgt}" - ] - platforms = ["linux/amd64", "linux/arm64"] - output = ["type=image"] -} - target "clang-tools" { matrix = { tgt = ["13", "12", "11"] From 42b7db5bdfaeaf8b9e62615dc6e460387623d363 Mon Sep 17 00:00:00 2001 From: shenxianpeng Date: Sat, 20 Sep 2025 00:22:23 +0300 Subject: [PATCH 9/9] chore: remove continue-on-error: true --- .github/workflows/CI.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index c95b3dd..0fed73b 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -54,7 +54,6 @@ jobs: - name: Build image for tag ${{ matrix.target }} run: docker buildx bake --file docker-bake.hcl ${{ matrix.target }} - continue-on-error: true - name: Login container registries if: github.ref == 'refs/heads/master' && github.event_name == 'workflow_dispatch'