From 813cd008781e759bb3439e97560c9a2656ed34ca Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 16:51:42 +0100 Subject: [PATCH 01/46] run on host directly --- .gitea/workflows/ci.yaml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index f10f5cf..f21d59d 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -18,9 +18,6 @@ jobs: build-base-builder: runs-on: ubuntu-latest timeout-minutes: 360 - container: - image: docker:28.5.1 - options: --privileged services: docker: image: docker:28.5.1-dind -- 2.49.1 From 15b886642fa7d49ac0a376ec6a77551d6ac91f89 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 16:52:40 +0100 Subject: [PATCH 02/46] build builder --- .gitea/workflows/ci.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index f21d59d..27a66ca 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -30,8 +30,8 @@ jobs: username: ${{ secrets.CI_USERNAME }} password: ${{ secrets.CI_TOKEN }} - # - name: Build Base Builder - # run: docker build -t "$BASE_BUILDER_TAG" ./Linux/BaseBuilder + - name: Build Base Builder + run: docker build -t "$BASE_BUILDER_TAG" ./Linux/BaseBuilder # - name: Push Base Builder # run: docker push "$BASE_BUILDER_TAG" \ No newline at end of file -- 2.49.1 From c3ccb833cb3399bacab0ab2844ac1fab3e95cdea Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 16:53:30 +0100 Subject: [PATCH 03/46] Update tag --- .gitea/workflows/ci.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index 27a66ca..542a9b6 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -9,10 +9,10 @@ on: env: DOCKER_TLS_CERTDIR: "/certs" - BASE_BUILDER_TAG: ${{ secrets.CI_REGISTRY_IMAGE }}/linuxbasebuilder:${{ github.ref_name }} - CPP_BUILDER_TAG: ${{ secrets.CI_REGISTRY_IMAGE }}/linuxcppbuilder:${{ github.ref_name }} - BIGFOOT_BUILDER_TAG: ${{ secrets.CI_REGISTRY_IMAGE }}/linuxbigfootbuilder:${{ github.ref_name }} - BIGFOOT_COVERAGE_BUILDER_TAG: ${{ secrets.CI_REGISTRY_IMAGE }}/linuxbigfootcoveragebuilder:${{ github.ref_name }} + BASE_BUILDER_TAG: ${{ secrets.CI_REGISTRY }}/linuxbasebuilder:${{ github.ref_name }} + CPP_BUILDER_TAG: ${{ secrets.CI_REGISTRY }}/linuxcppbuilder:${{ github.ref_name }} + BIGFOOT_BUILDER_TAG: ${{ secrets.CI_REGISTRY }}/linuxbigfootbuilder:${{ github.ref_name }} + BIGFOOT_COVERAGE_BUILDER_TAG: ${{ secrets.CI_REGISTRY }}/linuxbigfootcoveragebuilder:${{ github.ref_name }} jobs: build-base-builder: -- 2.49.1 From 85dd21a21e3f78d2fc3128655c96a8ca35c0febf Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 16:59:10 +0100 Subject: [PATCH 04/46] Run in a container --- .gitea/workflows/ci.yaml | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index 542a9b6..458122f 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -9,20 +9,28 @@ on: env: DOCKER_TLS_CERTDIR: "/certs" - BASE_BUILDER_TAG: ${{ secrets.CI_REGISTRY }}/linuxbasebuilder:${{ github.ref_name }} - CPP_BUILDER_TAG: ${{ secrets.CI_REGISTRY }}/linuxcppbuilder:${{ github.ref_name }} - BIGFOOT_BUILDER_TAG: ${{ secrets.CI_REGISTRY }}/linuxbigfootbuilder:${{ github.ref_name }} - BIGFOOT_COVERAGE_BUILDER_TAG: ${{ secrets.CI_REGISTRY }}/linuxbigfootcoveragebuilder:${{ github.ref_name }} + BASE_BUILDER_TAG: ${{ variables.CI_REGISTRY_IMAGE }}/linuxbasebuilder:${{ github.ref_name }} + CPP_BUILDER_TAG: ${{ variables.CI_REGISTRY_IMAGE }}/linuxcppbuilder:${{ github.ref_name }} + BIGFOOT_BUILDER_TAG: ${{ variables.CI_REGISTRY_IMAGE }}/linuxbigfootbuilder:${{ github.ref_name }} + BIGFOOT_COVERAGE_BUILDER_TAG: ${{ variables.CI_REGISTRY_IMAGE }}/linuxbigfootcoveragebuilder:${{ github.ref_name }} jobs: build-base-builder: - runs-on: ubuntu-latest + runs-on: self-hosted timeout-minutes: 360 + container: + image: node:20-bullseye + options: --privileged services: docker: image: docker:28.5.1-dind options: --privileged steps: + - name: Install Docker CLI + run: | + apt-get update + apt-get install -y docker.io + - name: Login to the Container registry uses: docker/login-action@v2 with: -- 2.49.1 From 625fcc75d2d51a446589942a0c5b7e15d023f692 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 17:01:06 +0100 Subject: [PATCH 05/46] run on host --- .gitea/workflows/ci.yaml | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index 458122f..be79457 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -16,21 +16,13 @@ env: jobs: build-base-builder: - runs-on: self-hosted + runs-on: ubuntu-latest timeout-minutes: 360 - container: - image: node:20-bullseye - options: --privileged services: docker: image: docker:28.5.1-dind options: --privileged steps: - - name: Install Docker CLI - run: | - apt-get update - apt-get install -y docker.io - - name: Login to the Container registry uses: docker/login-action@v2 with: -- 2.49.1 From bcb4ee700b79920f4c3bd024c8a9cf5e84fc86e1 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 17:04:56 +0100 Subject: [PATCH 06/46] fix typo --- .gitea/workflows/ci.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index be79457..f205758 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -26,7 +26,7 @@ jobs: - name: Login to the Container registry uses: docker/login-action@v2 with: - registry: ${{ secrets.CI_REGISTRY }} + registry: ${{ variables.CI_REGISTRY }} username: ${{ secrets.CI_USERNAME }} password: ${{ secrets.CI_TOKEN }} -- 2.49.1 From 6c50c2a232a85b0c976e8f3c3445fbeb53dc8643 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 17:08:08 +0100 Subject: [PATCH 07/46] fix typo --- .gitea/workflows/ci.yaml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index f205758..e4e688c 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -9,10 +9,10 @@ on: env: DOCKER_TLS_CERTDIR: "/certs" - BASE_BUILDER_TAG: ${{ variables.CI_REGISTRY_IMAGE }}/linuxbasebuilder:${{ github.ref_name }} - CPP_BUILDER_TAG: ${{ variables.CI_REGISTRY_IMAGE }}/linuxcppbuilder:${{ github.ref_name }} - BIGFOOT_BUILDER_TAG: ${{ variables.CI_REGISTRY_IMAGE }}/linuxbigfootbuilder:${{ github.ref_name }} - BIGFOOT_COVERAGE_BUILDER_TAG: ${{ variables.CI_REGISTRY_IMAGE }}/linuxbigfootcoveragebuilder:${{ github.ref_name }} + BASE_BUILDER_TAG: ${{ vars.CI_REGISTRY_IMAGE }}/linuxbasebuilder:${{ github.ref_name }} + CPP_BUILDER_TAG: ${{ vars.CI_REGISTRY_IMAGE }}/linuxcppbuilder:${{ github.ref_name }} + BIGFOOT_BUILDER_TAG: ${{ vars.CI_REGISTRY_IMAGE }}/linuxbigfootbuilder:${{ github.ref_name }} + BIGFOOT_COVERAGE_BUILDER_TAG: ${{ vars.CI_REGISTRY_IMAGE }}/linuxbigfootcoveragebuilder:${{ github.ref_name }} jobs: build-base-builder: @@ -26,7 +26,7 @@ jobs: - name: Login to the Container registry uses: docker/login-action@v2 with: - registry: ${{ variables.CI_REGISTRY }} + registry: ${{ vars.CI_REGISTRY }} username: ${{ secrets.CI_USERNAME }} password: ${{ secrets.CI_TOKEN }} -- 2.49.1 From 04830e523477f208209f026c8a598a10f8f74188 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 17:10:28 +0100 Subject: [PATCH 08/46] Checkout code --- .gitea/workflows/ci.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index e4e688c..3a04f05 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -23,6 +23,9 @@ jobs: image: docker:28.5.1-dind options: --privileged steps: + - name: Checkout repository + uses: actions/checkout@v3 + - name: Login to the Container registry uses: docker/login-action@v2 with: -- 2.49.1 From 59ae99ca04e8a32653995b657df0f107153585d3 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 17:15:49 +0100 Subject: [PATCH 09/46] ensure nodejs installed --- .gitea/workflows/ci.yaml | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index 3a04f05..b042a28 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -18,14 +18,20 @@ jobs: build-base-builder: runs-on: ubuntu-latest timeout-minutes: 360 + container: + image: docker:29.1.5-dind + options: --privileged services: docker: - image: docker:28.5.1-dind + image: docker:29.1.5-dind options: --privileged steps: - name: Checkout repository uses: actions/checkout@v3 + - name: Install Node.js + run: apt-get install -y nodejs + - name: Login to the Container registry uses: docker/login-action@v2 with: @@ -36,5 +42,5 @@ jobs: - name: Build Base Builder run: docker build -t "$BASE_BUILDER_TAG" ./Linux/BaseBuilder - # - name: Push Base Builder - # run: docker push "$BASE_BUILDER_TAG" \ No newline at end of file + - name: Push Base Builder + run: docker push "$BASE_BUILDER_TAG" \ No newline at end of file -- 2.49.1 From 780bfdcd6e4abf3e880e12c939e1fba968eb9e02 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 17:17:38 +0100 Subject: [PATCH 10/46] install nodejs before --- .gitea/workflows/ci.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index b042a28..bb3c632 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -26,12 +26,12 @@ jobs: image: docker:29.1.5-dind options: --privileged steps: - - name: Checkout repository - uses: actions/checkout@v3 - - name: Install Node.js run: apt-get install -y nodejs + - name: Checkout repository + uses: actions/checkout@v3 + - name: Login to the Container registry uses: docker/login-action@v2 with: -- 2.49.1 From 01e99445775f7e575a6805386657aaf0ad5f5f1e Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 17:19:30 +0100 Subject: [PATCH 11/46] typo --- .gitea/workflows/ci.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index bb3c632..d037c31 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -27,7 +27,7 @@ jobs: options: --privileged steps: - name: Install Node.js - run: apt-get install -y nodejs + run: apk add --no-cache nodejs npm - name: Checkout repository uses: actions/checkout@v3 -- 2.49.1 From 1d6805722151e6461587aeca9f090f166ab64f70 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 17:22:46 +0100 Subject: [PATCH 12/46] CPP builder --- .gitea/workflows/ci.yaml | 36 +++++++++++++++++++++++++++++++++--- 1 file changed, 33 insertions(+), 3 deletions(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index d037c31..0ace91a 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -39,8 +39,38 @@ jobs: username: ${{ secrets.CI_USERNAME }} password: ${{ secrets.CI_TOKEN }} - - name: Build Base Builder + - name: Build Builder run: docker build -t "$BASE_BUILDER_TAG" ./Linux/BaseBuilder - - name: Push Base Builder - run: docker push "$BASE_BUILDER_TAG" \ No newline at end of file + - name: Push Builder + run: docker push "$BASE_BUILDER_TAG" + + build-base-builder: + runs-on: ubuntu-latest + timeout-minutes: 360 + container: + image: docker:29.1.5-dind + options: --privileged + services: + docker: + image: docker:29.1.5-dind + options: --privileged + steps: + - name: Install Node.js + run: apk add --no-cache nodejs npm + + - name: Checkout repository + uses: actions/checkout@v3 + + - name: Login to the Container registry + uses: docker/login-action@v2 + with: + registry: ${{ vars.CI_REGISTRY }} + username: ${{ secrets.CI_USERNAME }} + password: ${{ secrets.CI_TOKEN }} + + - name: Build Builder + run: docker build -t "$CPP_BUILDER_TAG" ./Linux/CPPBuilder --build-arg BASE_BUILDER="$BASE_BUILDER_TAG" + + - name: Push Builder + run: docker push "$CPP_BUILDER_TAG" \ No newline at end of file -- 2.49.1 From f9bd5e6e1ca93c23efb0894c3dc7b1c2afc31c50 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 17:23:59 +0100 Subject: [PATCH 13/46] typo --- .gitea/workflows/ci.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index 0ace91a..56a7e83 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -45,7 +45,7 @@ jobs: - name: Push Builder run: docker push "$BASE_BUILDER_TAG" - build-base-builder: + build-cpp-builder: runs-on: ubuntu-latest timeout-minutes: 360 container: -- 2.49.1 From a6ebe56c9488835f8d9f6bd03f99586efe786f75 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 17:27:07 +0100 Subject: [PATCH 14/46] DRY --- .gitea/workflows/ci.yaml | 52 +++++++++++++--------------------------- 1 file changed, 16 insertions(+), 36 deletions(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index 56a7e83..e4e17b6 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -8,19 +8,29 @@ on: env: DOCKER_TLS_CERTDIR: "/certs" - BASE_BUILDER_TAG: ${{ vars.CI_REGISTRY_IMAGE }}/linuxbasebuilder:${{ github.ref_name }} CPP_BUILDER_TAG: ${{ vars.CI_REGISTRY_IMAGE }}/linuxcppbuilder:${{ github.ref_name }} BIGFOOT_BUILDER_TAG: ${{ vars.CI_REGISTRY_IMAGE }}/linuxbigfootbuilder:${{ github.ref_name }} BIGFOOT_COVERAGE_BUILDER_TAG: ${{ vars.CI_REGISTRY_IMAGE }}/linuxbigfootcoveragebuilder:${{ github.ref_name }} jobs: - build-base-builder: + docker-build: runs-on: ubuntu-latest timeout-minutes: 360 + strategy: + matrix: + builder: + - name: base + path: ./Linux/BaseBuilder + tag: ${{ env.BASE_BUILDER_TAG }} + build_args: "" + - name: cpp + path: ./Linux/CPPBuilder + tag: ${{ env.CPP_BUILDER_TAG }} + build_args: "--build-arg BASE_BUILDER=${{ env.BASE_BUILDER_TAG }}" container: - image: docker:29.1.5-dind - options: --privileged + image: docker:29.1.5-dind + options: --privileged services: docker: image: docker:29.1.5-dind @@ -40,37 +50,7 @@ jobs: password: ${{ secrets.CI_TOKEN }} - name: Build Builder - run: docker build -t "$BASE_BUILDER_TAG" ./Linux/BaseBuilder + run: docker build -t "${{ matrix.builder.tag }}" ${{ matrix.builder.build_args }} "${{ matrix.builder.path }}" - name: Push Builder - run: docker push "$BASE_BUILDER_TAG" - - build-cpp-builder: - runs-on: ubuntu-latest - timeout-minutes: 360 - container: - image: docker:29.1.5-dind - options: --privileged - services: - docker: - image: docker:29.1.5-dind - options: --privileged - steps: - - name: Install Node.js - run: apk add --no-cache nodejs npm - - - name: Checkout repository - uses: actions/checkout@v3 - - - name: Login to the Container registry - uses: docker/login-action@v2 - with: - registry: ${{ vars.CI_REGISTRY }} - username: ${{ secrets.CI_USERNAME }} - password: ${{ secrets.CI_TOKEN }} - - - name: Build Builder - run: docker build -t "$CPP_BUILDER_TAG" ./Linux/CPPBuilder --build-arg BASE_BUILDER="$BASE_BUILDER_TAG" - - - name: Push Builder - run: docker push "$CPP_BUILDER_TAG" \ No newline at end of file + run: docker push "${{ matrix.builder.tag }}" -- 2.49.1 From 784a8fd106ad3b68b9a4a06e04fc85b36994c733 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 17:29:11 +0100 Subject: [PATCH 15/46] drop DRY --- .gitea/workflows/ci.yaml | 52 +++++++++++++++++++++++++++------------- 1 file changed, 36 insertions(+), 16 deletions(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index e4e17b6..56a7e83 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -8,29 +8,19 @@ on: env: DOCKER_TLS_CERTDIR: "/certs" + BASE_BUILDER_TAG: ${{ vars.CI_REGISTRY_IMAGE }}/linuxbasebuilder:${{ github.ref_name }} CPP_BUILDER_TAG: ${{ vars.CI_REGISTRY_IMAGE }}/linuxcppbuilder:${{ github.ref_name }} BIGFOOT_BUILDER_TAG: ${{ vars.CI_REGISTRY_IMAGE }}/linuxbigfootbuilder:${{ github.ref_name }} BIGFOOT_COVERAGE_BUILDER_TAG: ${{ vars.CI_REGISTRY_IMAGE }}/linuxbigfootcoveragebuilder:${{ github.ref_name }} jobs: - docker-build: + build-base-builder: runs-on: ubuntu-latest timeout-minutes: 360 - strategy: - matrix: - builder: - - name: base - path: ./Linux/BaseBuilder - tag: ${{ env.BASE_BUILDER_TAG }} - build_args: "" - - name: cpp - path: ./Linux/CPPBuilder - tag: ${{ env.CPP_BUILDER_TAG }} - build_args: "--build-arg BASE_BUILDER=${{ env.BASE_BUILDER_TAG }}" container: - image: docker:29.1.5-dind - options: --privileged + image: docker:29.1.5-dind + options: --privileged services: docker: image: docker:29.1.5-dind @@ -50,7 +40,37 @@ jobs: password: ${{ secrets.CI_TOKEN }} - name: Build Builder - run: docker build -t "${{ matrix.builder.tag }}" ${{ matrix.builder.build_args }} "${{ matrix.builder.path }}" + run: docker build -t "$BASE_BUILDER_TAG" ./Linux/BaseBuilder - name: Push Builder - run: docker push "${{ matrix.builder.tag }}" + run: docker push "$BASE_BUILDER_TAG" + + build-cpp-builder: + runs-on: ubuntu-latest + timeout-minutes: 360 + container: + image: docker:29.1.5-dind + options: --privileged + services: + docker: + image: docker:29.1.5-dind + options: --privileged + steps: + - name: Install Node.js + run: apk add --no-cache nodejs npm + + - name: Checkout repository + uses: actions/checkout@v3 + + - name: Login to the Container registry + uses: docker/login-action@v2 + with: + registry: ${{ vars.CI_REGISTRY }} + username: ${{ secrets.CI_USERNAME }} + password: ${{ secrets.CI_TOKEN }} + + - name: Build Builder + run: docker build -t "$CPP_BUILDER_TAG" ./Linux/CPPBuilder --build-arg BASE_BUILDER="$BASE_BUILDER_TAG" + + - name: Push Builder + run: docker push "$CPP_BUILDER_TAG" \ No newline at end of file -- 2.49.1 From 3074d39213573cb244defa001f8bffe6e092b174 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 17:42:33 +0100 Subject: [PATCH 16/46] setup ConanProfiles + reduce layers --- .gitea/workflows/ci.yaml | 2 +- Linux/BaseBuilder/Dockerfile | 31 +++++++---- Linux/CPPBuilder/Dockerfile | 102 +++++++++++++++++++++-------------- 3 files changed, 85 insertions(+), 50 deletions(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index 56a7e83..21d6588 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -70,7 +70,7 @@ jobs: password: ${{ secrets.CI_TOKEN }} - name: Build Builder - run: docker build -t "$CPP_BUILDER_TAG" ./Linux/CPPBuilder --build-arg BASE_BUILDER="$BASE_BUILDER_TAG" + run: docker build -t "$CPP_BUILDER_TAG" ./Linux/CPPBuilder --build-arg BASE_BUILDER="$BASE_BUILDER_TAG" --build-arg CONAN_PROFILE_BRANCH=${{ github.ref_name }} - name: Push Builder run: docker push "$CPP_BUILDER_TAG" \ No newline at end of file diff --git a/Linux/BaseBuilder/Dockerfile b/Linux/BaseBuilder/Dockerfile index e3de30b..39ceb4b 100644 --- a/Linux/BaseBuilder/Dockerfile +++ b/Linux/BaseBuilder/Dockerfile @@ -1,17 +1,28 @@ FROM ubuntu:24.04 -ENV TZ=Europe/Paris -ENV DEBIAN_FRONTEND=noninteractive -ENV PATH="/root/.local/bin:$PATH" +# Set timezone, noninteractive mode, and pipx path +ENV TZ=Europe/Paris \ + DEBIAN_FRONTEND=noninteractive \ + PATH="/root/.local/bin:$PATH" +# Use build cache for ccache RUN --mount=type=cache,target=/ccache -# Make sudo dummy replacement, so we don't weaken docker security -RUN echo "#!/bin/bash\n\$@" > /usr/bin/sudo -RUN chmod +x /usr/bin/sudo +# Dummy sudo (no security weakening) +RUN echo '#!/bin/bash\n$@' > /usr/bin/sudo \ + && chmod +x /usr/bin/sudo -RUN apt-get update -y -RUN apt-get install -y +# Install base dependencies in one layer +RUN apt-get update && apt-get install -y --no-install-recommends \ + unzip \ + curl \ + wget \ + lsb-release \ + software-properties-common \ + gnupg \ + python3 \ + python3-pip \ + && rm -rf /var/lib/apt/lists/* -RUN apt-get install unzip curl wget lsb-release software-properties-common gnupg -y -RUN apt-get install python3 -y \ No newline at end of file +# Optional: Upgrade pip for Python3 +RUN python3 -m pip install --no-cache-dir --upgrade pip diff --git a/Linux/CPPBuilder/Dockerfile b/Linux/CPPBuilder/Dockerfile index a7b173e..5e05eed 100644 --- a/Linux/CPPBuilder/Dockerfile +++ b/Linux/CPPBuilder/Dockerfile @@ -1,49 +1,73 @@ +# Build arguments ARG BASE_BUILDER +ARG CONAN_PROFILE_BRANCH +# Base image FROM $BASE_BUILDER -ENV CCACHE_DIR=/ccache -ENV CCACHE_COMPRESS=1 -ENV CCACHE_MAXSIZE=10G -ENV CCACHE_COMPILERCHECK=content +# Environment variables for ccache and pipx +ENV CCACHE_DIR=/ccache \ + CCACHE_COMPRESS=1 \ + CCACHE_MAXSIZE=10G \ + CCACHE_COMPILERCHECK=content \ + PATH=/root/.local/bin:$PATH -RUN apt-get install build-essential -y -RUN apt-get install ccache -y -RUN apt-get install cmake -y -RUN apt-get install ninja-build -y -RUN apt-get install git -y -RUN apt-get install pkg-config -y +# Install system dependencies, clang, and pipx +RUN apt-get update && apt-get install -y \ + build-essential \ + ccache \ + cmake \ + ninja-build \ + git \ + pkg-config \ + wget \ + lsb-release \ + software-properties-common \ + python3-pip \ + && rm -rf /var/lib/apt/lists/* \ + \ + # Install LLVM 18 + && wget https://apt.llvm.org/llvm.sh -O /tmp/llvm.sh \ + && chmod +x /tmp/llvm.sh \ + && /tmp/llvm.sh 18 all \ + && apt-get install -y clang-tools-18 \ + \ + # Symlinks for clang 18 tools + && ln -sf /usr/bin/clang-18 /usr/bin/clang \ + && ln -sf /usr/bin/clang++-18 /usr/bin/clang++ \ + && ln -sf /usr/bin/llvm-profdata-18 /usr/bin/llvm-profdata \ + && ln -sf /usr/bin/llvm-cov-18 /usr/bin/llvm-cov \ + && ln -sf /usr/bin/clang-format-18 /usr/bin/clang-format \ + && ln -sf /usr/bin/clang-tidy-18 /usr/bin/clang-tidy \ + && ln -sf /usr/bin/llvm-ar-18 /usr/bin/llvm-ar \ + && ln -sf /usr/bin/llvm-nm-18 /usr/bin/llvm-nm \ + && ln -sf /usr/bin/llvm-ranlib-18 /usr/bin/llvm-ranlib \ + \ + # Reset ccache stats + && ccache --zero-stats -RUN wget https://apt.llvm.org/llvm.sh && \ - chmod +x llvm.sh && \ - ./llvm.sh 18 all -RUN apt-get install clang-tools-18 -y +# Install pipx and Conan +RUN python3 -m pip install --no-cache-dir pipx \ + && pipx ensurepath \ + && pipx install conan -RUN ln -s /bin/clang-18 /bin/clang -RUN ln -s /bin/clang++-18 /bin/clang++ -RUN ln -s /usr/bin/llvm-profdata-18 /usr/bin/llvm-profdata -RUN ln -s /usr/bin/llvm-cov-18 /usr/bin/llvm-cov -RUN ln -s /usr/bin/clang-format-18 /usr/bin/clang-format -RUN ln -s /usr/bin/clang-tidy-18 /usr/bin/clang-tidy -RUN ln -s /usr/bin/llvm-ar-18 /usr/bin/llvm-ar -RUN ln -s /usr/bin/llvm-nm-18 /usr/bin/llvm-nm -RUN ln -s /usr/bin/llvm-ranlib-18 /usr/bin/llvm-ranlib +# Build and install mold +RUN git clone --branch v2.40.4 https://github.com/rui314/mold.git /tmp/mold \ + && cd /tmp/mold \ + && ./install-build-deps.sh \ + && cmake . -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_CXX_COMPILER=clang++ \ + -DCMAKE_CXX_COMPILER_LAUNCHER=ccache \ + -DCMAKE_C_COMPILER_LAUNCHER=ccache \ + -B build \ + && cmake --build build -j$(nproc) \ + && cmake --install build \ + && rm -rf /tmp/mold -RUN ccache --zero-stats +# Configure Conan with custom profiles and remote +RUN conan config install https://git.romainboullard.com/BigfootDev/ConanProfiles.git --args="--branch ${CONAN_PROFILE_BRANCH}" --force \ + && conan remote add bigfootpackages https://conan.romainboullard.com/artifactory/api/conan/bigfootpackages \ + && conan remote disable conancenter +# Show ccache stats (optional, for debugging) RUN ccache --show-stats - -RUN apt-get install pipx -y -RUN pipx ensurepath - -RUN git clone --branch v2.40.4 https://github.com/rui314/mold.git -RUN mold/install-build-deps.sh -RUN cmake mold -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_CXX_COMPILER_LAUNCHER=ccache -DCMAKE_C_COMPILER_LAUNCHER=ccache -B mold/build -RUN cmake --build mold/build -j$(nproc) -RUN cmake --build mold/build --target install - -RUN pipx install conan - -RUN conan config install https://gitlab.com/bigfootdev/config/conan.git -RUN conan remote add bigfootpackages https://packages.bigfootengine.com/artifactory/api/conan/bigfootpackages -RUN conan remote disable conancenter \ No newline at end of file -- 2.49.1 From a1a59cdae3ae4cc3418462d381bff6e0cf6b76d3 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 17:46:22 +0100 Subject: [PATCH 17/46] typo --- Linux/BaseBuilder/Dockerfile | 6 +----- Linux/CPPBuilder/Dockerfile | 5 ++--- 2 files changed, 3 insertions(+), 8 deletions(-) diff --git a/Linux/BaseBuilder/Dockerfile b/Linux/BaseBuilder/Dockerfile index 39ceb4b..d30443f 100644 --- a/Linux/BaseBuilder/Dockerfile +++ b/Linux/BaseBuilder/Dockerfile @@ -13,7 +13,7 @@ RUN echo '#!/bin/bash\n$@' > /usr/bin/sudo \ && chmod +x /usr/bin/sudo # Install base dependencies in one layer -RUN apt-get update && apt-get install -y --no-install-recommends \ +RUN apt-get update && apt-get install -y \ unzip \ curl \ wget \ @@ -21,8 +21,4 @@ RUN apt-get update && apt-get install -y --no-install-recommends \ software-properties-common \ gnupg \ python3 \ - python3-pip \ && rm -rf /var/lib/apt/lists/* - -# Optional: Upgrade pip for Python3 -RUN python3 -m pip install --no-cache-dir --upgrade pip diff --git a/Linux/CPPBuilder/Dockerfile b/Linux/CPPBuilder/Dockerfile index 5e05eed..7bf72ce 100644 --- a/Linux/CPPBuilder/Dockerfile +++ b/Linux/CPPBuilder/Dockerfile @@ -23,7 +23,7 @@ RUN apt-get update && apt-get install -y \ wget \ lsb-release \ software-properties-common \ - python3-pip \ + pipx \ && rm -rf /var/lib/apt/lists/* \ \ # Install LLVM 18 @@ -47,8 +47,7 @@ RUN apt-get update && apt-get install -y \ && ccache --zero-stats # Install pipx and Conan -RUN python3 -m pip install --no-cache-dir pipx \ - && pipx ensurepath \ +RUN pipx ensurepath \ && pipx install conan # Build and install mold -- 2.49.1 From bf46a8c9034d361f23cde14452b89f64ff5ff122 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 17:51:43 +0100 Subject: [PATCH 18/46] typo --- Linux/CPPBuilder/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Linux/CPPBuilder/Dockerfile b/Linux/CPPBuilder/Dockerfile index 7bf72ce..d53898f 100644 --- a/Linux/CPPBuilder/Dockerfile +++ b/Linux/CPPBuilder/Dockerfile @@ -64,7 +64,7 @@ RUN git clone --branch v2.40.4 https://github.com/rui314/mold.git /tmp/mold \ && rm -rf /tmp/mold # Configure Conan with custom profiles and remote -RUN conan config install https://git.romainboullard.com/BigfootDev/ConanProfiles.git --args="--branch ${CONAN_PROFILE_BRANCH}" --force \ +RUN conan config install https://git.romainboullard.com/BigfootDev/ConanProfiles.git --args="--branch ${CONAN_PROFILE_BRANCH}" \ && conan remote add bigfootpackages https://conan.romainboullard.com/artifactory/api/conan/bigfootpackages \ && conan remote disable conancenter -- 2.49.1 From 2b119c471b59c9007dbdd07a1f0b6274e3ec24b3 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 18:01:31 +0100 Subject: [PATCH 19/46] test --- Linux/CPPBuilder/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Linux/CPPBuilder/Dockerfile b/Linux/CPPBuilder/Dockerfile index d53898f..acead7f 100644 --- a/Linux/CPPBuilder/Dockerfile +++ b/Linux/CPPBuilder/Dockerfile @@ -64,7 +64,7 @@ RUN git clone --branch v2.40.4 https://github.com/rui314/mold.git /tmp/mold \ && rm -rf /tmp/mold # Configure Conan with custom profiles and remote -RUN conan config install https://git.romainboullard.com/BigfootDev/ConanProfiles.git --args="--branch ${CONAN_PROFILE_BRANCH}" \ +RUN conan config install https://git.romainboullard.com/BigfootDev/ConanProfiles.git --args=--branch ${CONAN_PROFILE_BRANCH} \ && conan remote add bigfootpackages https://conan.romainboullard.com/artifactory/api/conan/bigfootpackages \ && conan remote disable conancenter -- 2.49.1 From 2f23f56c71b65d09414ad65df1b3f2f9f8fd0cf1 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 18:02:38 +0100 Subject: [PATCH 20/46] test --- .gitea/workflows/ci.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index 21d6588..b9b4357 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -70,7 +70,7 @@ jobs: password: ${{ secrets.CI_TOKEN }} - name: Build Builder - run: docker build -t "$CPP_BUILDER_TAG" ./Linux/CPPBuilder --build-arg BASE_BUILDER="$BASE_BUILDER_TAG" --build-arg CONAN_PROFILE_BRANCH=${{ github.ref_name }} + run: docker build -t "$CPP_BUILDER_TAG" ./Linux/CPPBuilder --build-arg BASE_BUILDER="$BASE_BUILDER_TAG" --build-arg CONAN_PROFILE_BRANCH="${{ github.ref_name }}" - name: Push Builder run: docker push "$CPP_BUILDER_TAG" \ No newline at end of file -- 2.49.1 From c30437cf5296947af09004f2a6b875d09017158e Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 18:03:48 +0100 Subject: [PATCH 21/46] test --- .gitea/workflows/ci.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index b9b4357..308a1e9 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -9,6 +9,8 @@ on: env: DOCKER_TLS_CERTDIR: "/certs" + BRANCH_NAME: ${{ github.ref_name }} + BASE_BUILDER_TAG: ${{ vars.CI_REGISTRY_IMAGE }}/linuxbasebuilder:${{ github.ref_name }} CPP_BUILDER_TAG: ${{ vars.CI_REGISTRY_IMAGE }}/linuxcppbuilder:${{ github.ref_name }} BIGFOOT_BUILDER_TAG: ${{ vars.CI_REGISTRY_IMAGE }}/linuxbigfootbuilder:${{ github.ref_name }} @@ -70,7 +72,7 @@ jobs: password: ${{ secrets.CI_TOKEN }} - name: Build Builder - run: docker build -t "$CPP_BUILDER_TAG" ./Linux/CPPBuilder --build-arg BASE_BUILDER="$BASE_BUILDER_TAG" --build-arg CONAN_PROFILE_BRANCH="${{ github.ref_name }}" + run: docker build -t "$CPP_BUILDER_TAG" ./Linux/CPPBuilder --build-arg BASE_BUILDER="$BASE_BUILDER_TAG" --build-arg CONAN_PROFILE_BRANCH="${BRANCH_NAME}" - name: Push Builder run: docker push "$CPP_BUILDER_TAG" \ No newline at end of file -- 2.49.1 From dd89bdf2dd8a35cea89cccc2cbc26b8179e3a568 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 18:05:03 +0100 Subject: [PATCH 22/46] test --- .gitea/workflows/ci.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index 308a1e9..d36b766 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -71,6 +71,9 @@ jobs: username: ${{ secrets.CI_USERNAME }} password: ${{ secrets.CI_TOKEN }} + - name: echo branhc name + run : echo ${BRANCH_NAME} + - name: Build Builder run: docker build -t "$CPP_BUILDER_TAG" ./Linux/CPPBuilder --build-arg BASE_BUILDER="$BASE_BUILDER_TAG" --build-arg CONAN_PROFILE_BRANCH="${BRANCH_NAME}" -- 2.49.1 From 31ac125053c98e07593263f0e42895034e7f142c Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 18:07:03 +0100 Subject: [PATCH 23/46] test --- .gitea/workflows/ci.yaml | 3 --- Linux/CPPBuilder/Dockerfile | 2 ++ 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index d36b766..308a1e9 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -71,9 +71,6 @@ jobs: username: ${{ secrets.CI_USERNAME }} password: ${{ secrets.CI_TOKEN }} - - name: echo branhc name - run : echo ${BRANCH_NAME} - - name: Build Builder run: docker build -t "$CPP_BUILDER_TAG" ./Linux/CPPBuilder --build-arg BASE_BUILDER="$BASE_BUILDER_TAG" --build-arg CONAN_PROFILE_BRANCH="${BRANCH_NAME}" diff --git a/Linux/CPPBuilder/Dockerfile b/Linux/CPPBuilder/Dockerfile index acead7f..7d00828 100644 --- a/Linux/CPPBuilder/Dockerfile +++ b/Linux/CPPBuilder/Dockerfile @@ -63,6 +63,8 @@ RUN git clone --branch v2.40.4 https://github.com/rui314/mold.git /tmp/mold \ && cmake --install build \ && rm -rf /tmp/mold + RUN echo ${CONAN_PROFILE_BRANCH} + # Configure Conan with custom profiles and remote RUN conan config install https://git.romainboullard.com/BigfootDev/ConanProfiles.git --args=--branch ${CONAN_PROFILE_BRANCH} \ && conan remote add bigfootpackages https://conan.romainboullard.com/artifactory/api/conan/bigfootpackages \ -- 2.49.1 From c03a9b867fc4695981405f6249b16a954ed605fb Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 18:09:09 +0100 Subject: [PATCH 24/46] test --- Linux/CPPBuilder/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Linux/CPPBuilder/Dockerfile b/Linux/CPPBuilder/Dockerfile index 7d00828..2b5d5d3 100644 --- a/Linux/CPPBuilder/Dockerfile +++ b/Linux/CPPBuilder/Dockerfile @@ -66,7 +66,7 @@ RUN git clone --branch v2.40.4 https://github.com/rui314/mold.git /tmp/mold \ RUN echo ${CONAN_PROFILE_BRANCH} # Configure Conan with custom profiles and remote -RUN conan config install https://git.romainboullard.com/BigfootDev/ConanProfiles.git --args=--branch ${CONAN_PROFILE_BRANCH} \ +RUN conan config install https://git.romainboullard.com/BigfootDev/ConanProfiles.git --args=--branch $CONAN_PROFILE_BRANCH \ && conan remote add bigfootpackages https://conan.romainboullard.com/artifactory/api/conan/bigfootpackages \ && conan remote disable conancenter -- 2.49.1 From 42e0b3f7f02419696f72c9ce74cda3153afaee05 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 18:10:01 +0100 Subject: [PATCH 25/46] test --- Linux/CPPBuilder/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Linux/CPPBuilder/Dockerfile b/Linux/CPPBuilder/Dockerfile index 2b5d5d3..a419ad6 100644 --- a/Linux/CPPBuilder/Dockerfile +++ b/Linux/CPPBuilder/Dockerfile @@ -63,7 +63,7 @@ RUN git clone --branch v2.40.4 https://github.com/rui314/mold.git /tmp/mold \ && cmake --install build \ && rm -rf /tmp/mold - RUN echo ${CONAN_PROFILE_BRANCH} + RUN echo $CONAN_PROFILE_BRANCH # Configure Conan with custom profiles and remote RUN conan config install https://git.romainboullard.com/BigfootDev/ConanProfiles.git --args=--branch $CONAN_PROFILE_BRANCH \ -- 2.49.1 From 28d2f95f368c506fa7e9b1adaf4df970af18df50 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 18:10:59 +0100 Subject: [PATCH 26/46] test --- Linux/CPPBuilder/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Linux/CPPBuilder/Dockerfile b/Linux/CPPBuilder/Dockerfile index a419ad6..5529367 100644 --- a/Linux/CPPBuilder/Dockerfile +++ b/Linux/CPPBuilder/Dockerfile @@ -63,7 +63,7 @@ RUN git clone --branch v2.40.4 https://github.com/rui314/mold.git /tmp/mold \ && cmake --install build \ && rm -rf /tmp/mold - RUN echo $CONAN_PROFILE_BRANCH + RUN echo "$CONAN_PROFILE_BRANCH" # Configure Conan with custom profiles and remote RUN conan config install https://git.romainboullard.com/BigfootDev/ConanProfiles.git --args=--branch $CONAN_PROFILE_BRANCH \ -- 2.49.1 From 0092a5d66be4d8b517f0ce898b818c3e5e8266f0 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 18:32:44 +0100 Subject: [PATCH 27/46] test --- Linux/CPPBuilder/Dockerfile | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/Linux/CPPBuilder/Dockerfile b/Linux/CPPBuilder/Dockerfile index 5529367..027fafc 100644 --- a/Linux/CPPBuilder/Dockerfile +++ b/Linux/CPPBuilder/Dockerfile @@ -1,10 +1,11 @@ # Build arguments ARG BASE_BUILDER -ARG CONAN_PROFILE_BRANCH # Base image FROM $BASE_BUILDER +ARG CONAN_PROFILE_BRANCH + # Environment variables for ccache and pipx ENV CCACHE_DIR=/ccache \ CCACHE_COMPRESS=1 \ @@ -63,12 +64,10 @@ RUN git clone --branch v2.40.4 https://github.com/rui314/mold.git /tmp/mold \ && cmake --install build \ && rm -rf /tmp/mold - RUN echo "$CONAN_PROFILE_BRANCH" - # Configure Conan with custom profiles and remote -RUN conan config install https://git.romainboullard.com/BigfootDev/ConanProfiles.git --args=--branch $CONAN_PROFILE_BRANCH \ +RUN conan config install https://git.romainboullard.com/BigfootDev/ConanProfiles.git --args="--branch $CONAN_PROFILE_BRANCH" \ && conan remote add bigfootpackages https://conan.romainboullard.com/artifactory/api/conan/bigfootpackages \ && conan remote disable conancenter # Show ccache stats (optional, for debugging) -RUN ccache --show-stats +RUN ccache --show-stats \ No newline at end of file -- 2.49.1 From 76df9552f13de69217d16403c33518d25db6254e Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 22:03:09 +0100 Subject: [PATCH 28/46] Update CI --- .gitea/workflows/ci.yaml | 67 +++++++++++++++++----------------------- 1 file changed, 28 insertions(+), 39 deletions(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index 308a1e9..bd309d3 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -7,10 +7,7 @@ on: workflow_dispatch: env: - DOCKER_TLS_CERTDIR: "/certs" - BRANCH_NAME: ${{ github.ref_name }} - BASE_BUILDER_TAG: ${{ vars.CI_REGISTRY_IMAGE }}/linuxbasebuilder:${{ github.ref_name }} CPP_BUILDER_TAG: ${{ vars.CI_REGISTRY_IMAGE }}/linuxcppbuilder:${{ github.ref_name }} BIGFOOT_BUILDER_TAG: ${{ vars.CI_REGISTRY_IMAGE }}/linuxbigfootbuilder:${{ github.ref_name }} @@ -20,59 +17,51 @@ jobs: build-base-builder: runs-on: ubuntu-latest timeout-minutes: 360 - container: - image: docker:29.1.5-dind - options: --privileged - services: - docker: - image: docker:29.1.5-dind - options: --privileged - steps: - - name: Install Node.js - run: apk add --no-cache nodejs npm - - name: Checkout repository - uses: actions/checkout@v3 + steps: + - uses: actions/checkout@v6 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 - name: Login to the Container registry - uses: docker/login-action@v2 + uses: docker/login-action@v3 with: registry: ${{ vars.CI_REGISTRY }} username: ${{ secrets.CI_USERNAME }} password: ${{ secrets.CI_TOKEN }} - - name: Build Builder - run: docker build -t "$BASE_BUILDER_TAG" ./Linux/BaseBuilder - - - name: Push Builder - run: docker push "$BASE_BUILDER_TAG" + - name: Build and push base builder + uses: docker/build-push-action@v5 + with: + context: ./Linux/BaseBuilder + push: true + tags: ${{ env.BASE_BUILDER_TAG }} build-cpp-builder: runs-on: ubuntu-latest timeout-minutes: 360 - container: - image: docker:29.1.5-dind - options: --privileged - services: - docker: - image: docker:29.1.5-dind - options: --privileged - steps: - - name: Install Node.js - run: apk add --no-cache nodejs npm + needs: build-base-builder - - name: Checkout repository - uses: actions/checkout@v3 + steps: + - uses: actions/checkout@v6 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 - name: Login to the Container registry - uses: docker/login-action@v2 + uses: docker/login-action@v3 with: registry: ${{ vars.CI_REGISTRY }} username: ${{ secrets.CI_USERNAME }} password: ${{ secrets.CI_TOKEN }} - - name: Build Builder - run: docker build -t "$CPP_BUILDER_TAG" ./Linux/CPPBuilder --build-arg BASE_BUILDER="$BASE_BUILDER_TAG" --build-arg CONAN_PROFILE_BRANCH="${BRANCH_NAME}" - - - name: Push Builder - run: docker push "$CPP_BUILDER_TAG" \ No newline at end of file + - name: Build and push cpp builder + uses: docker/build-push-action@v5 + with: + context: ./Linux/CPPBuilder + push: true + tags: ${{ env.CPP_BUILDER_TAG }} + build-args: | + BASE_BUILDER=${{ env.BASE_BUILDER_TAG }} + CONAN_PROFILE_BRANCH=${{ env.BRANCH_NAME }} -- 2.49.1 From 94befad0fac67e21423f215b8573d9ce2f9b7a7d Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 22:05:29 +0100 Subject: [PATCH 29/46] Update CI --- .gitea/workflows/ci.yaml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index bd309d3..40f51a3 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -19,7 +19,8 @@ jobs: timeout-minutes: 360 steps: - - uses: actions/checkout@v6 + - name: Checkout + uses: actions/checkout@v6 - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 @@ -44,7 +45,8 @@ jobs: needs: build-base-builder steps: - - uses: actions/checkout@v6 + - name: Checkout + uses: actions/checkout@v6 - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 -- 2.49.1 From 3ae222c4bc96be8b1d1668fc59140a20a86be93f Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 22:57:34 +0100 Subject: [PATCH 30/46] Correct endpoint --- Linux/CPPBuilder/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Linux/CPPBuilder/Dockerfile b/Linux/CPPBuilder/Dockerfile index 027fafc..071d5f0 100644 --- a/Linux/CPPBuilder/Dockerfile +++ b/Linux/CPPBuilder/Dockerfile @@ -66,7 +66,7 @@ RUN git clone --branch v2.40.4 https://github.com/rui314/mold.git /tmp/mold \ # Configure Conan with custom profiles and remote RUN conan config install https://git.romainboullard.com/BigfootDev/ConanProfiles.git --args="--branch $CONAN_PROFILE_BRANCH" \ - && conan remote add bigfootpackages https://conan.romainboullard.com/artifactory/api/conan/bigfootpackages \ + && conan remote add bigfootpackages https://conan.romainboullard.com/artifactory/api/conan/BigfootPackages \ && conan remote disable conancenter # Show ccache stats (optional, for debugging) -- 2.49.1 From cb5d500594c9a9e888ce6b3d241021dda3b0dc27 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Sat, 24 Jan 2026 11:02:32 +0100 Subject: [PATCH 31/46] BigfootBuilder --- .gitea/workflows/ci.yaml | 54 +++++++++++++++++++++++++------ Linux/BigfootBuilder/Dockerfile | 37 +++++++++++++-------- Linux/BigfootBuilder/conanfile.py | 33 +++++++++++-------- 3 files changed, 87 insertions(+), 37 deletions(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index 40f51a3..3029dbf 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -8,10 +8,10 @@ on: env: BRANCH_NAME: ${{ github.ref_name }} - BASE_BUILDER_TAG: ${{ vars.CI_REGISTRY_IMAGE }}/linuxbasebuilder:${{ github.ref_name }} - CPP_BUILDER_TAG: ${{ vars.CI_REGISTRY_IMAGE }}/linuxcppbuilder:${{ github.ref_name }} - BIGFOOT_BUILDER_TAG: ${{ vars.CI_REGISTRY_IMAGE }}/linuxbigfootbuilder:${{ github.ref_name }} - BIGFOOT_COVERAGE_BUILDER_TAG: ${{ vars.CI_REGISTRY_IMAGE }}/linuxbigfootcoveragebuilder:${{ github.ref_name }} + BASE_BUILDER_TAG: ${{ vars.DOCKER_IMAGE }}/linuxbasebuilder:${{ github.ref_name }} + CPP_BUILDER_TAG: ${{ vars.DOCKER_IMAGE }}/linuxcppbuilder:${{ github.ref_name }} + BIGFOOT_BUILDER_TAG: ${{ vars.DOCKER_IMAGE }}/linuxbigfootbuilder:${{ github.ref_name }} + BIGFOOT_COVERAGE_BUILDER_TAG: ${{ vars.DOCKER_IMAGE }}/linuxbigfootcoveragebuilder:${{ github.ref_name }} jobs: build-base-builder: @@ -28,9 +28,9 @@ jobs: - name: Login to the Container registry uses: docker/login-action@v3 with: - registry: ${{ vars.CI_REGISTRY }} - username: ${{ secrets.CI_USERNAME }} - password: ${{ secrets.CI_TOKEN }} + registry: ${{ vars.DOCKER_REGISTRY }} + username: ${{ secrets.DOCKER_USERNAME }} + password: ${{ secrets.DOCKER_TOKEN }} - name: Build and push base builder uses: docker/build-push-action@v5 @@ -54,9 +54,9 @@ jobs: - name: Login to the Container registry uses: docker/login-action@v3 with: - registry: ${{ vars.CI_REGISTRY }} - username: ${{ secrets.CI_USERNAME }} - password: ${{ secrets.CI_TOKEN }} + registry: ${{ vars.DOCKER_REGISTRY }} + username: ${{ secrets.DOCKER_USERNAME }} + password: ${{ secrets.DOCKER_TOKEN }} - name: Build and push cpp builder uses: docker/build-push-action@v5 @@ -67,3 +67,37 @@ jobs: build-args: | BASE_BUILDER=${{ env.BASE_BUILDER_TAG }} CONAN_PROFILE_BRANCH=${{ env.BRANCH_NAME }} + + build-bigfoot-builder: + runs-on: ubuntu-latest + timeout-minutes: 360 + needs: build-base-builder + + steps: + - name: Checkout + uses: actions/checkout@v6 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + + - name: Login to the Container registry + uses: docker/login-action@v3 + with: + registry: ${{ vars.DOCKER_REGISTRY }} + username: ${{ secrets.DOCKER_USERNAME }} + password: ${{ secrets.DOCKER_TOKEN }} + + - name: Build and push cpp builder + uses: docker/build-push-action@v5 + with: + context: ./Linux/BigfootBuilder + push: true + tags: ${{ env.BIGFOOT_BUILDER_TAG }} + build-args: | + BASE_BUILDER=${{ env.CPP_BUILDER_TAG }} + ARTIFACTORY_CONAN_USER=${{ secrets.ARTIFACTORY_USER }} + ARTIFACTORY_CONAN_PASSWORD=${{ secrets.ARTIFACTORY_PASSWORD }} + CONAN_RELEASE_PROFILE=clang + CONAN_RELWITHDEBINFO_PROFILE=clangd + CONAN_DEBUG_PROFILE=clangd + PACKAGES_CHANNEL=${{ github.ref_name }} diff --git a/Linux/BigfootBuilder/Dockerfile b/Linux/BigfootBuilder/Dockerfile index f8f3f40..53ebcdc 100644 --- a/Linux/BigfootBuilder/Dockerfile +++ b/Linux/BigfootBuilder/Dockerfile @@ -5,20 +5,31 @@ FROM $BASE_BUILDER ARG CONAN_RELEASE_PROFILE ARG CONAN_RELWITHDEBINFO_PROFILE ARG CONAN_DEBUG_PROFILE +ARG ARTIFACTORY_CONAN_USER +ARG ARTIFACTORY_CONAN_PASSWORD +ARG PACKAGES_CHANNEL -RUN wget -qO - https://packages.lunarg.com/lunarg-signing-key-pub.asc | sudo apt-key add -RUN wget -qO /etc/apt/sources.list.d/lunarg-vulkan-1.4.313-noble.list https://packages.lunarg.com/vulkan/1.4.313/lunarg-vulkan-1.4.313-noble.list -RUN apt-get update -y -RUN apt-get install gcovr -y -RUN apt-get install vulkan-sdk -y -RUN apt-get install xvfb -y +RUN apt-get update \ + && apt-get install -y \ + gcovr \ + xvfb \ + \ + # LunarG Vulkan repo (modern keyring method) + && wget -qO /usr/share/keyrings/lunarg-archive-keyring.gpg https://packages.lunarg.com/lunarg-signing-key-pub.asc; \ + && echo "deb [signed-by=/usr/share/keyrings/lunarg-archive-keyring.gpg] https://packages.lunarg.com/vulkan/1.4.313 noble main" \ + > /etc/apt/sources.list.d/lunarg-vulkan.list \ + \ + && apt-get update \ + && apt-get install -y vulkan-sdk \ + \ + # Cleanup + && rm -rf /var/lib/apt/lists/* COPY conanfile.py BigfootDependencies/conanfile.py -RUN ccache --zero-stats - -RUN CONAN_LOGIN_USERNAME=${GITLAB_CONAN_USER} CONAN_PASSWORD=${GITLAB_CONAN_PASSWORD} conan install ./BigfootDependencies --remote=bigfootpackages --build="*" -pr:h=${CONAN_RELEASE_PROFILE} -pr:b=${CONAN_RELEASE_PROFILE} -s build_type=Release && \ - CONAN_LOGIN_USERNAME=${GITLAB_CONAN_USER} CONAN_PASSWORD=${GITLAB_CONAN_PASSWORD} conan install ./BigfootDependencies --remote=bigfootpackages --build="*" -pr:h=${CONAN_RELWITHDEBINFO_PROFILE} -pr:b=${CONAN_RELWITHDEBINFO_PROFILE} -s build_type=RelWithDebInfo && \ - CONAN_LOGIN_USERNAME=${GITLAB_CONAN_USER} CONAN_PASSWORD=${GITLAB_CONAN_PASSWORD} conan install ./BigfootDependencies --remote=bigfootpackages --build="*" -pr:h=${CONAN_DEBUG_PROFILE} -pr:b=${CONAN_DEBUG_PROFILE} -s build_type=Debug - -RUN ccache --show-stats \ No newline at end of file +RUN ccache --zero-stats \ + && CONAN_LOGIN_USERNAME=${ARTIFACTORY_CONAN_USER} CONAN_PASSWORD=${ARTIFACTORY_CONAN_PASSWORD} conan install ./BigfootDependencies -o Requirements/*:packages_channel=${PACKAGES_CHANNEL} --remote=bigfootpackages --build="*" -pr:h=${CONAN_RELEASE_PROFILE} -pr:b=${CONAN_RELEASE_PROFILE} -s build_type=Release \ + && CONAN_LOGIN_USERNAME=${ARTIFACTORY_CONAN_USER} CONAN_PASSWORD=${ARTIFACTORY_CONAN_PASSWORD} conan install ./BigfootDependencies -o Requirements/*:packages_channel=${PACKAGES_CHANNEL} --remote=bigfootpackages --build="*" -pr:h=${CONAN_RELWITHDEBINFO_PROFILE} -pr:b=${CONAN_RELWITHDEBINFO_PROFILE} -s build_type=RelWithDebInfo \ + && CONAN_LOGIN_USERNAME=${ARTIFACTORY_CONAN_USER} CONAN_PASSWORD=${ARTIFACTORY_CONAN_PASSWORD} conan install ./BigfootDependencies -o Requirements/*:packages_channel=${PACKAGES_CHANNEL} --remote=bigfootpackages --build="*" -pr:h=${CONAN_DEBUG_PROFILE} -pr:b=${CONAN_DEBUG_PROFILE} -s build_type=Debug \ + && ccache --show-stats \ + && CONAN_LOGIN_USERNAME=${ARTIFACTORY_CONAN_USER} CONAN_PASSWORD=${ARTIFACTORY_CONAN_PASSWORD} conan upload "*" --remote=bigfootpackages --force --confirm \ No newline at end of file diff --git a/Linux/BigfootBuilder/conanfile.py b/Linux/BigfootBuilder/conanfile.py index a805470..d3002af 100644 --- a/Linux/BigfootBuilder/conanfile.py +++ b/Linux/BigfootBuilder/conanfile.py @@ -3,6 +3,13 @@ from conan import ConanFile class RequirementsConan(ConanFile): name = "Requirements" + options = { + "packages_channel" + } + default_options = { + "packages_channel": "main" + } + def configure(self): self.options['stduuid'].with_cxx20_span = True self.options['flatbuffers'].header_only = True @@ -15,17 +22,15 @@ class RequirementsConan(ConanFile): self.options["benchmark"].enable_lto = True def requirements(self): - self.requires("eastl/3.27.01") - self.requires("unordered_dense/4.8.1") - self.requires("mimalloc/3.1.5") - self.requires("magic_enum/0.9.7") - self.requires("stduuid/1.2.3") - self.requires("sqlite3/3.51.0") + self.requires(f"eastl/3.27.01@bigfootdev/{self.options['packages_channel']}") + self.requires(f"unordered_dense/4.8.1@bigfootdev/{self.options['packages_channel']}") + self.requires(f"mimalloc/3.1.5@bigfootdev/{self.options['packages_channel']}") + self.requires(f"stduuid/1.2.3@bigfootdev/{self.options['packages_channel']}") + self.requires(f"sqlite3/3.51.0@bigfootdev/{self.options['packages_channel']}") self.requires("cli11/2.6.0") - self.requires("xxhash/0.8.3") + self.requires(f"rapidhash/3.0@bigfootdev/{self.options['packages_channel']}") self.requires("effolkronium-random/1.5.0") - self.requires("zeus_expected/1.3.0") - self.requires("flatbuffers/25.9.23") + self.requires(f"flatbuffers/25.12.19@bigfootdev/{self.options['packages_channel']}") self.requires("quill/11.0.2") self.requires("tracy/0.12.2") @@ -38,17 +43,17 @@ class RequirementsConan(ConanFile): self.requires("glfw/3.4") self.requires("vulkan-headers/1.4.313.0") - self.requires("vulkan-validationlayers/1.4.313.0") + self.requires(f"vulkan-validationlayers/1.4.313.0@bigfootdev/{self.options['packages_channel']}") self.requires("spirv-cross/1.4.313.0") - self.requires("vulkan-memory-allocator/3.3.0") + self.requires(f"vulkan-memory-allocator/3.3.0@bigfootdev/{self.options['packages_channel']}") self.requires("gtest/1.17.0") - self.requires("pixelmatch-cpp17/1.0.3") + self.requires(f"pixelmatch-cpp17/1.0.3@bigfootdev/{self.options['packages_channel']}") self.requires("stb/cci.20240531", override=True) - self.requires("shaderc/2025.3") + self.requires(f"shaderc/2025.3@bigfootdev/{self.options['packages_channel']}") self.requires("assimp/6.0.2") - self.requires("meshoptimizer/1.0") + self.requires(f"meshoptimizer/1.0@bigfootdev/{self.options['packages_channel']}") self.requires("libsquish/1.15") self.requires("benchmark/1.9.4") -- 2.49.1 From 6deda70e216d144a90d74dc34210d0e99c4549a8 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Sat, 24 Jan 2026 11:16:35 +0100 Subject: [PATCH 32/46] fix bigfoot docker --- .gitea/workflows/ci.yaml | 5 ++++- Linux/BigfootBuilder/Dockerfile | 4 +++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index 3029dbf..4777f61 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -74,6 +74,9 @@ jobs: needs: build-base-builder steps: + - name: Set BRANCH_NAME + run: echo "BRANCH_NAME=$(echo $GITHUB_REF_NAME | tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV + - name: Checkout uses: actions/checkout@v6 @@ -100,4 +103,4 @@ jobs: CONAN_RELEASE_PROFILE=clang CONAN_RELWITHDEBINFO_PROFILE=clangd CONAN_DEBUG_PROFILE=clangd - PACKAGES_CHANNEL=${{ github.ref_name }} + PACKAGES_CHANNEL=${{ env.BRANCH_NAME }} diff --git a/Linux/BigfootBuilder/Dockerfile b/Linux/BigfootBuilder/Dockerfile index 53ebcdc..95d58ad 100644 --- a/Linux/BigfootBuilder/Dockerfile +++ b/Linux/BigfootBuilder/Dockerfile @@ -15,7 +15,9 @@ RUN apt-get update \ xvfb \ \ # LunarG Vulkan repo (modern keyring method) - && wget -qO /usr/share/keyrings/lunarg-archive-keyring.gpg https://packages.lunarg.com/lunarg-signing-key-pub.asc; \ + && wget -qO- https://packages.lunarg.com/lunarg-signing-key-pub.asc \ + | gpg --dearmor -o /usr/share/keyrings/lunarg-archive-keyring.gpg \ + \ && echo "deb [signed-by=/usr/share/keyrings/lunarg-archive-keyring.gpg] https://packages.lunarg.com/vulkan/1.4.313 noble main" \ > /etc/apt/sources.list.d/lunarg-vulkan.list \ \ -- 2.49.1 From 3e46076927be55008aade7893c45ea4c97d49193 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Sat, 24 Jan 2026 11:27:07 +0100 Subject: [PATCH 33/46] Fix conan --- Linux/BigfootBuilder/conanfile.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Linux/BigfootBuilder/conanfile.py b/Linux/BigfootBuilder/conanfile.py index d3002af..a9b10d2 100644 --- a/Linux/BigfootBuilder/conanfile.py +++ b/Linux/BigfootBuilder/conanfile.py @@ -4,13 +4,16 @@ class RequirementsConan(ConanFile): name = "Requirements" options = { - "packages_channel" + "packages_channel": [str] } default_options = { "packages_channel": "main" } def configure(self): + self.options['mimalloc'].override = True + self.options['mimalloc'].shared = True + self.options['stduuid'].with_cxx20_span = True self.options['flatbuffers'].header_only = True -- 2.49.1 From 9b7e8fdcf969908bb42b328bc4f79050dae7f131 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Sat, 24 Jan 2026 11:36:51 +0100 Subject: [PATCH 34/46] fix conan --- Linux/BigfootBuilder/conanfile.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Linux/BigfootBuilder/conanfile.py b/Linux/BigfootBuilder/conanfile.py index a9b10d2..7cd7158 100644 --- a/Linux/BigfootBuilder/conanfile.py +++ b/Linux/BigfootBuilder/conanfile.py @@ -4,7 +4,7 @@ class RequirementsConan(ConanFile): name = "Requirements" options = { - "packages_channel": [str] + "packages_channel": ["ANY"] } default_options = { "packages_channel": "main" -- 2.49.1 From a5549dc863eab42fcb6e317f2446c9bd3c256487 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Sat, 24 Jan 2026 11:45:33 +0100 Subject: [PATCH 35/46] fix conan --- Linux/BigfootBuilder/conanfile.py | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/Linux/BigfootBuilder/conanfile.py b/Linux/BigfootBuilder/conanfile.py index 7cd7158..e9d9497 100644 --- a/Linux/BigfootBuilder/conanfile.py +++ b/Linux/BigfootBuilder/conanfile.py @@ -25,15 +25,15 @@ class RequirementsConan(ConanFile): self.options["benchmark"].enable_lto = True def requirements(self): - self.requires(f"eastl/3.27.01@bigfootdev/{self.options['packages_channel']}") - self.requires(f"unordered_dense/4.8.1@bigfootdev/{self.options['packages_channel']}") - self.requires(f"mimalloc/3.1.5@bigfootdev/{self.options['packages_channel']}") - self.requires(f"stduuid/1.2.3@bigfootdev/{self.options['packages_channel']}") - self.requires(f"sqlite3/3.51.0@bigfootdev/{self.options['packages_channel']}") + self.requires(f"eastl/3.27.01@bigfootdev/{self.options.packages_channel}") + self.requires(f"unordered_dense/4.8.1@bigfootdev/{self.options.packages_channel}") + self.requires(f"mimalloc/3.1.5@bigfootdev/{self.options.packages_channel}") + self.requires(f"stduuid/1.2.3@bigfootdev/{self.options.packages_channel}") + self.requires(f"sqlite3/3.51.0@bigfootdev/{self.options.packages_channel}") self.requires("cli11/2.6.0") - self.requires(f"rapidhash/3.0@bigfootdev/{self.options['packages_channel']}") + self.requires(f"rapidhash/3.0@bigfootdev/{self.options.packages_channel}") self.requires("effolkronium-random/1.5.0") - self.requires(f"flatbuffers/25.12.19@bigfootdev/{self.options['packages_channel']}") + self.requires(f"flatbuffers/25.12.19@bigfootdev/{self.options.packages_channel}") self.requires("quill/11.0.2") self.requires("tracy/0.12.2") @@ -46,17 +46,17 @@ class RequirementsConan(ConanFile): self.requires("glfw/3.4") self.requires("vulkan-headers/1.4.313.0") - self.requires(f"vulkan-validationlayers/1.4.313.0@bigfootdev/{self.options['packages_channel']}") + self.requires(f"vulkan-validationlayers/1.4.313.0@bigfootdev/{self.options.packages_channel}") self.requires("spirv-cross/1.4.313.0") - self.requires(f"vulkan-memory-allocator/3.3.0@bigfootdev/{self.options['packages_channel']}") + self.requires(f"vulkan-memory-allocator/3.3.0@bigfootdev/{self.options.packages_channel}") self.requires("gtest/1.17.0") - self.requires(f"pixelmatch-cpp17/1.0.3@bigfootdev/{self.options['packages_channel']}") + self.requires(f"pixelmatch-cpp17/1.0.3@bigfootdev/{self.options.packages_channel}") self.requires("stb/cci.20240531", override=True) - self.requires(f"shaderc/2025.3@bigfootdev/{self.options['packages_channel']}") + self.requires(f"shaderc/2025.3@bigfootdev/{self.options.packages_channel}") self.requires("assimp/6.0.2") - self.requires(f"meshoptimizer/1.0@bigfootdev/{self.options['packages_channel']}") + self.requires(f"meshoptimizer/1.0@bigfootdev/{self.options.packages_channel}") self.requires("libsquish/1.15") self.requires("benchmark/1.9.4") -- 2.49.1 From cebd7c84c64f61b4111265d77b11d475876a1040 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Sat, 24 Jan 2026 12:16:03 +0100 Subject: [PATCH 36/46] correctly point to lodepng --- Linux/BigfootBuilder/conanfile.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Linux/BigfootBuilder/conanfile.py b/Linux/BigfootBuilder/conanfile.py index e9d9497..2a43939 100644 --- a/Linux/BigfootBuilder/conanfile.py +++ b/Linux/BigfootBuilder/conanfile.py @@ -40,7 +40,7 @@ class RequirementsConan(ConanFile): self.requires("cpptrace/1.0.4") self.requires("glm/1.0.1") - self.requires("lodepng/cci.20250727") + self.requires(f"lodepng/cci.20250727@bigfootdev/{self.options.packages_channel}") self.requires("imgui/1.92.5-docking") self.requires("glfw/3.4") -- 2.49.1 From 6f7e2a15b7eef5aa91887f96ecaa26c2e134355e Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Sun, 25 Jan 2026 09:56:03 +0100 Subject: [PATCH 37/46] bigfootcoverage --- .gitea/workflows/ci.yaml | 39 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 38 insertions(+), 1 deletion(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index 4777f61..e7e293f 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -71,7 +71,7 @@ jobs: build-bigfoot-builder: runs-on: ubuntu-latest timeout-minutes: 360 - needs: build-base-builder + needs: build-cpp-builder steps: - name: Set BRANCH_NAME @@ -104,3 +104,40 @@ jobs: CONAN_RELWITHDEBINFO_PROFILE=clangd CONAN_DEBUG_PROFILE=clangd PACKAGES_CHANNEL=${{ env.BRANCH_NAME }} + + build-bigfootcoverage-builder: + runs-on: ubuntu-latest + timeout-minutes: 360 + needs: build-cpp-builder + + steps: + - name: Set BRANCH_NAME + run: echo "BRANCH_NAME=$(echo $GITHUB_REF_NAME | tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV + + - name: Checkout + uses: actions/checkout@v6 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + + - name: Login to the Container registry + uses: docker/login-action@v3 + with: + registry: ${{ vars.DOCKER_REGISTRY }} + username: ${{ secrets.DOCKER_USERNAME }} + password: ${{ secrets.DOCKER_TOKEN }} + + - name: Build and push cpp builder + uses: docker/build-push-action@v5 + with: + context: ./Linux/BigfootBuilder + push: true + tags: ${{ env.BIGFOOT_COVERAGE_BUILDER_TAG }} + build-args: | + BASE_BUILDER=${{ env.CPP_BUILDER_TAG }} + ARTIFACTORY_CONAN_USER=${{ secrets.ARTIFACTORY_USER }} + ARTIFACTORY_CONAN_PASSWORD=${{ secrets.ARTIFACTORY_PASSWORD }} + CONAN_RELEASE_PROFILE=gcc_coverage + CONAN_RELWITHDEBINFO_PROFILE=gcc_coverage + CONAN_DEBUG_PROFILE=gcc_coverage + PACKAGES_CHANNEL=${{ env.BRANCH_NAME }} -- 2.49.1 From 79cde98a23a53674419337eeafe3ec2ab34269ae Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Sun, 25 Jan 2026 14:59:01 +0100 Subject: [PATCH 38/46] push poackages in a separate job --- .gitea/workflows/ci.yaml | 11 +++++++++++ Linux/BigfootBuilder/Dockerfile | 3 +-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index e7e293f..feec33b 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -105,6 +105,17 @@ jobs: CONAN_DEBUG_PROFILE=clangd PACKAGES_CHANNEL=${{ env.BRANCH_NAME }} + bigfoot-builder-push-built-packages: + runs-on: ubuntu-latest + timeout-minutes: 360 + needs: build-bigfoot-builder + container: + image: BIGFOOT_BUILDER_TAG + + steps: + - name: Push built Packages + run: CONAN_LOGIN_USERNAME=${{ secrets.ARTIFACTORY_USER }} CONAN_PASSWORD=${{ secrets.ARTIFACTORY_PASSWORD }} conan upload "*" --remote=bigfootpackages --force --confirm + build-bigfootcoverage-builder: runs-on: ubuntu-latest timeout-minutes: 360 diff --git a/Linux/BigfootBuilder/Dockerfile b/Linux/BigfootBuilder/Dockerfile index 95d58ad..b9a5926 100644 --- a/Linux/BigfootBuilder/Dockerfile +++ b/Linux/BigfootBuilder/Dockerfile @@ -33,5 +33,4 @@ RUN ccache --zero-stats \ && CONAN_LOGIN_USERNAME=${ARTIFACTORY_CONAN_USER} CONAN_PASSWORD=${ARTIFACTORY_CONAN_PASSWORD} conan install ./BigfootDependencies -o Requirements/*:packages_channel=${PACKAGES_CHANNEL} --remote=bigfootpackages --build="*" -pr:h=${CONAN_RELEASE_PROFILE} -pr:b=${CONAN_RELEASE_PROFILE} -s build_type=Release \ && CONAN_LOGIN_USERNAME=${ARTIFACTORY_CONAN_USER} CONAN_PASSWORD=${ARTIFACTORY_CONAN_PASSWORD} conan install ./BigfootDependencies -o Requirements/*:packages_channel=${PACKAGES_CHANNEL} --remote=bigfootpackages --build="*" -pr:h=${CONAN_RELWITHDEBINFO_PROFILE} -pr:b=${CONAN_RELWITHDEBINFO_PROFILE} -s build_type=RelWithDebInfo \ && CONAN_LOGIN_USERNAME=${ARTIFACTORY_CONAN_USER} CONAN_PASSWORD=${ARTIFACTORY_CONAN_PASSWORD} conan install ./BigfootDependencies -o Requirements/*:packages_channel=${PACKAGES_CHANNEL} --remote=bigfootpackages --build="*" -pr:h=${CONAN_DEBUG_PROFILE} -pr:b=${CONAN_DEBUG_PROFILE} -s build_type=Debug \ - && ccache --show-stats \ - && CONAN_LOGIN_USERNAME=${ARTIFACTORY_CONAN_USER} CONAN_PASSWORD=${ARTIFACTORY_CONAN_PASSWORD} conan upload "*" --remote=bigfootpackages --force --confirm \ No newline at end of file + && ccache --show-stats \ No newline at end of file -- 2.49.1 From d1c36757e0caa243ec0cbd170ba59cf759108bbd Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Sun, 25 Jan 2026 17:45:51 +0100 Subject: [PATCH 39/46] reworked tags --- .gitea/workflows/ci.yaml | 33 ++++++++++++++------------------- 1 file changed, 14 insertions(+), 19 deletions(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index feec33b..fafbcc8 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -8,10 +8,10 @@ on: env: BRANCH_NAME: ${{ github.ref_name }} - BASE_BUILDER_TAG: ${{ vars.DOCKER_IMAGE }}/linuxbasebuilder:${{ github.ref_name }} - CPP_BUILDER_TAG: ${{ vars.DOCKER_IMAGE }}/linuxcppbuilder:${{ github.ref_name }} - BIGFOOT_BUILDER_TAG: ${{ vars.DOCKER_IMAGE }}/linuxbigfootbuilder:${{ github.ref_name }} - BIGFOOT_COVERAGE_BUILDER_TAG: ${{ vars.DOCKER_IMAGE }}/linuxbigfootcoveragebuilder:${{ github.ref_name }} + BASE_BUILDER_TAG: ${{ vars.DOCKER_IMAGE }}/linuxbasebuilder:${{ env.BRANCH_NAME_LOWER }} + CPP_BUILDER_TAG: ${{ vars.DOCKER_IMAGE }}/linuxcppbuilder:${{ env.BRANCH_NAME_LOWER }} + BIGFOOT_BUILDER_TAG: ${{ vars.DOCKER_IMAGE }}/linuxbigfootbuilder:${{ env.BRANCH_NAME_LOWER }} + BIGFOOT_COVERAGE_BUILDER_TAG: ${{ vars.DOCKER_IMAGE }}/linuxbigfootcoveragebuilder:${{ env.BRANCH_NAME_LOWER }} jobs: build-base-builder: @@ -19,6 +19,9 @@ jobs: timeout-minutes: 360 steps: + - name: Set BRANCH_NAME_LOWER + run: echo "BRANCH_NAME_LOWER=$(echo $GITHUB_REF_NAME | tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV + - name: Checkout uses: actions/checkout@v6 @@ -45,6 +48,9 @@ jobs: needs: build-base-builder steps: + - name: Set BRANCH_NAME_LOWER + run: echo "BRANCH_NAME_LOWER=$(echo $GITHUB_REF_NAME | tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV + - name: Checkout uses: actions/checkout@v6 @@ -74,8 +80,8 @@ jobs: needs: build-cpp-builder steps: - - name: Set BRANCH_NAME - run: echo "BRANCH_NAME=$(echo $GITHUB_REF_NAME | tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV + - name: Set BRANCH_NAME_LOWER + run: echo "BRANCH_NAME_LOWER=$(echo $GITHUB_REF_NAME | tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV - name: Checkout uses: actions/checkout@v6 @@ -105,25 +111,14 @@ jobs: CONAN_DEBUG_PROFILE=clangd PACKAGES_CHANNEL=${{ env.BRANCH_NAME }} - bigfoot-builder-push-built-packages: - runs-on: ubuntu-latest - timeout-minutes: 360 - needs: build-bigfoot-builder - container: - image: BIGFOOT_BUILDER_TAG - - steps: - - name: Push built Packages - run: CONAN_LOGIN_USERNAME=${{ secrets.ARTIFACTORY_USER }} CONAN_PASSWORD=${{ secrets.ARTIFACTORY_PASSWORD }} conan upload "*" --remote=bigfootpackages --force --confirm - build-bigfootcoverage-builder: runs-on: ubuntu-latest timeout-minutes: 360 needs: build-cpp-builder steps: - - name: Set BRANCH_NAME - run: echo "BRANCH_NAME=$(echo $GITHUB_REF_NAME | tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV + - name: Set BRANCH_NAME_LOWER + run: echo "BRANCH_NAME_LOWER=$(echo $GITHUB_REF_NAME | tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV - name: Checkout uses: actions/checkout@v6 -- 2.49.1 From ed3eff52d9ce55c49470021f785c4c2adc5df9d5 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Sun, 25 Jan 2026 18:02:52 +0100 Subject: [PATCH 40/46] fix CI with lowercase --- .gitea/workflows/ci.yaml | 34 +++++++++++++++++++++------------- 1 file changed, 21 insertions(+), 13 deletions(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index fafbcc8..54045c9 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -8,10 +8,10 @@ on: env: BRANCH_NAME: ${{ github.ref_name }} - BASE_BUILDER_TAG: ${{ vars.DOCKER_IMAGE }}/linuxbasebuilder:${{ env.BRANCH_NAME_LOWER }} - CPP_BUILDER_TAG: ${{ vars.DOCKER_IMAGE }}/linuxcppbuilder:${{ env.BRANCH_NAME_LOWER }} - BIGFOOT_BUILDER_TAG: ${{ vars.DOCKER_IMAGE }}/linuxbigfootbuilder:${{ env.BRANCH_NAME_LOWER }} - BIGFOOT_COVERAGE_BUILDER_TAG: ${{ vars.DOCKER_IMAGE }}/linuxbigfootcoveragebuilder:${{ env.BRANCH_NAME_LOWER }} + BASE_BUILDER_TAG: ${{ vars.DOCKER_IMAGE }}/linuxbasebuilder + CPP_BUILDER_TAG: ${{ vars.DOCKER_IMAGE }}/linuxcppbuilder + BIGFOOT_BUILDER_TAG: ${{ vars.DOCKER_IMAGE }}/linuxbigfootbuilder + BIGFOOT_COVERAGE_BUILDER_TAG: ${{ vars.DOCKER_IMAGE }}/linuxbigfootcoveragebuilder jobs: build-base-builder: @@ -40,7 +40,7 @@ jobs: with: context: ./Linux/BaseBuilder push: true - tags: ${{ env.BASE_BUILDER_TAG }} + tags: ${{ env.BASE_BUILDER_TAG }}:${{ env.BRANCH_NAME_LOWER }} build-cpp-builder: runs-on: ubuntu-latest @@ -69,10 +69,10 @@ jobs: with: context: ./Linux/CPPBuilder push: true - tags: ${{ env.CPP_BUILDER_TAG }} + tags: ${{ env.CPP_BUILDER_TAG }}:${{ env.BRANCH_NAME_LOWER }} build-args: | BASE_BUILDER=${{ env.BASE_BUILDER_TAG }} - CONAN_PROFILE_BRANCH=${{ env.BRANCH_NAME }} + CONAN_PROFILE_BRANCH=${{ env.BRANCH_NAME_LOWER }} build-bigfoot-builder: runs-on: ubuntu-latest @@ -101,15 +101,23 @@ jobs: with: context: ./Linux/BigfootBuilder push: true - tags: ${{ env.BIGFOOT_BUILDER_TAG }} + tags: ${{ env.BIGFOOT_BUILDER_TAG }}:${{ env.BRANCH_NAME_LOWER }} build-args: | - BASE_BUILDER=${{ env.CPP_BUILDER_TAG }} + BASE_BUILDER=${{ env.CPP_BUILDER_TAG }}:${{ env.BRANCH_NAME_LOWER }} ARTIFACTORY_CONAN_USER=${{ secrets.ARTIFACTORY_USER }} ARTIFACTORY_CONAN_PASSWORD=${{ secrets.ARTIFACTORY_PASSWORD }} CONAN_RELEASE_PROFILE=clang CONAN_RELWITHDEBINFO_PROFILE=clangd CONAN_DEBUG_PROFILE=clangd - PACKAGES_CHANNEL=${{ env.BRANCH_NAME }} + PACKAGES_CHANNEL=${{ env.BRANCH_NAME_LOWER }} + + - name: Push built packages + run: | + docker run --rm \ + -e CONAN_LOGIN_USERNAME=${{ secrets.ARTIFACTORY_USER }} \ + -e CONAN_PASSWORD=${{ secrets.ARTIFACTORY_PASSWORD }} \ + ${{ env.BIGFOOT_BUILDER_TAG }}:${{ env.BRANCH_NAME_LOWER }} \ + bash -c "conan upload '*' --remote=bigfootpackages --force --confirm" build-bigfootcoverage-builder: runs-on: ubuntu-latest @@ -138,12 +146,12 @@ jobs: with: context: ./Linux/BigfootBuilder push: true - tags: ${{ env.BIGFOOT_COVERAGE_BUILDER_TAG }} + tags: ${{ env.BIGFOOT_COVERAGE_BUILDER_TAG }}:${{ env.BRANCH_NAME_LOWER }} build-args: | - BASE_BUILDER=${{ env.CPP_BUILDER_TAG }} + BASE_BUILDER=${{ env.CPP_BUILDER_TAG }}:${{ env.BRANCH_NAME_LOWER }} ARTIFACTORY_CONAN_USER=${{ secrets.ARTIFACTORY_USER }} ARTIFACTORY_CONAN_PASSWORD=${{ secrets.ARTIFACTORY_PASSWORD }} CONAN_RELEASE_PROFILE=gcc_coverage CONAN_RELWITHDEBINFO_PROFILE=gcc_coverage CONAN_DEBUG_PROFILE=gcc_coverage - PACKAGES_CHANNEL=${{ env.BRANCH_NAME }} + PACKAGES_CHANNEL=${{ env.BRANCH_NAME_LOWER }} -- 2.49.1 From e1a0603aad3b98538b54837aa9e627825092db89 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Sun, 25 Jan 2026 18:04:48 +0100 Subject: [PATCH 41/46] missing channel --- .gitea/workflows/ci.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index 54045c9..7826620 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -71,7 +71,7 @@ jobs: push: true tags: ${{ env.CPP_BUILDER_TAG }}:${{ env.BRANCH_NAME_LOWER }} build-args: | - BASE_BUILDER=${{ env.BASE_BUILDER_TAG }} + BASE_BUILDER=${{ env.BASE_BUILDER_TAG }}:${{ env.BRANCH_NAME_LOWER }} CONAN_PROFILE_BRANCH=${{ env.BRANCH_NAME_LOWER }} build-bigfoot-builder: -- 2.49.1 From 557031a2a2b3e6e7c8a36f1d134fed1ac6290a27 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Sun, 25 Jan 2026 18:14:16 +0100 Subject: [PATCH 42/46] fix conan clone --- .gitea/workflows/ci.yaml | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index 7826620..df9a8b9 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -19,8 +19,10 @@ jobs: timeout-minutes: 360 steps: - - name: Set BRANCH_NAME_LOWER - run: echo "BRANCH_NAME_LOWER=$(echo $GITHUB_REF_NAME | tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV + - name: Set ENV + run: | + echo "BRANCH_NAME_LOWER=$(echo $GITHUB_REF_NAME | tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV + echo "BRANCH_NAME=$(echo $GITHUB_REF_NAME)" >> $GITHUB_ENV - name: Checkout uses: actions/checkout@v6 @@ -48,9 +50,11 @@ jobs: needs: build-base-builder steps: - - name: Set BRANCH_NAME_LOWER - run: echo "BRANCH_NAME_LOWER=$(echo $GITHUB_REF_NAME | tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV - + - name: Set ENV + run: | + echo "BRANCH_NAME_LOWER=$(echo $GITHUB_REF_NAME | tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV + echo "BRANCH_NAME=$(echo $GITHUB_REF_NAME)" >> $GITHUB_ENV + - name: Checkout uses: actions/checkout@v6 @@ -72,7 +76,7 @@ jobs: tags: ${{ env.CPP_BUILDER_TAG }}:${{ env.BRANCH_NAME_LOWER }} build-args: | BASE_BUILDER=${{ env.BASE_BUILDER_TAG }}:${{ env.BRANCH_NAME_LOWER }} - CONAN_PROFILE_BRANCH=${{ env.BRANCH_NAME_LOWER }} + CONAN_PROFILE_BRANCH=${{ env.BRANCH_NAME }} build-bigfoot-builder: runs-on: ubuntu-latest @@ -80,8 +84,10 @@ jobs: needs: build-cpp-builder steps: - - name: Set BRANCH_NAME_LOWER - run: echo "BRANCH_NAME_LOWER=$(echo $GITHUB_REF_NAME | tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV + - name: Set ENV + run: | + echo "BRANCH_NAME_LOWER=$(echo $GITHUB_REF_NAME | tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV + echo "BRANCH_NAME=$(echo $GITHUB_REF_NAME)" >> $GITHUB_ENV - name: Checkout uses: actions/checkout@v6 @@ -125,8 +131,10 @@ jobs: needs: build-cpp-builder steps: - - name: Set BRANCH_NAME_LOWER - run: echo "BRANCH_NAME_LOWER=$(echo $GITHUB_REF_NAME | tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV + - name: Set ENV + run: | + echo "BRANCH_NAME_LOWER=$(echo $GITHUB_REF_NAME | tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV + echo "BRANCH_NAME=$(echo $GITHUB_REF_NAME)" >> $GITHUB_ENV - name: Checkout uses: actions/checkout@v6 -- 2.49.1 From eac14d4001b0f329de0d5cdd974983e3d006734d Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Sun, 25 Jan 2026 19:11:18 +0100 Subject: [PATCH 43/46] more secure image --- .gitea/workflows/ci.yaml | 6 +----- Linux/BigfootBuilder/Dockerfile | 8 +++----- 2 files changed, 4 insertions(+), 10 deletions(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index df9a8b9..1a02dda 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -110,8 +110,6 @@ jobs: tags: ${{ env.BIGFOOT_BUILDER_TAG }}:${{ env.BRANCH_NAME_LOWER }} build-args: | BASE_BUILDER=${{ env.CPP_BUILDER_TAG }}:${{ env.BRANCH_NAME_LOWER }} - ARTIFACTORY_CONAN_USER=${{ secrets.ARTIFACTORY_USER }} - ARTIFACTORY_CONAN_PASSWORD=${{ secrets.ARTIFACTORY_PASSWORD }} CONAN_RELEASE_PROFILE=clang CONAN_RELWITHDEBINFO_PROFILE=clangd CONAN_DEBUG_PROFILE=clangd @@ -123,7 +121,7 @@ jobs: -e CONAN_LOGIN_USERNAME=${{ secrets.ARTIFACTORY_USER }} \ -e CONAN_PASSWORD=${{ secrets.ARTIFACTORY_PASSWORD }} \ ${{ env.BIGFOOT_BUILDER_TAG }}:${{ env.BRANCH_NAME_LOWER }} \ - bash -c "conan upload '*' --remote=bigfootpackages --force --confirm" + conan upload '*' --remote=bigfootpackages --force --confirm build-bigfootcoverage-builder: runs-on: ubuntu-latest @@ -157,8 +155,6 @@ jobs: tags: ${{ env.BIGFOOT_COVERAGE_BUILDER_TAG }}:${{ env.BRANCH_NAME_LOWER }} build-args: | BASE_BUILDER=${{ env.CPP_BUILDER_TAG }}:${{ env.BRANCH_NAME_LOWER }} - ARTIFACTORY_CONAN_USER=${{ secrets.ARTIFACTORY_USER }} - ARTIFACTORY_CONAN_PASSWORD=${{ secrets.ARTIFACTORY_PASSWORD }} CONAN_RELEASE_PROFILE=gcc_coverage CONAN_RELWITHDEBINFO_PROFILE=gcc_coverage CONAN_DEBUG_PROFILE=gcc_coverage diff --git a/Linux/BigfootBuilder/Dockerfile b/Linux/BigfootBuilder/Dockerfile index b9a5926..1768d4a 100644 --- a/Linux/BigfootBuilder/Dockerfile +++ b/Linux/BigfootBuilder/Dockerfile @@ -5,8 +5,6 @@ FROM $BASE_BUILDER ARG CONAN_RELEASE_PROFILE ARG CONAN_RELWITHDEBINFO_PROFILE ARG CONAN_DEBUG_PROFILE -ARG ARTIFACTORY_CONAN_USER -ARG ARTIFACTORY_CONAN_PASSWORD ARG PACKAGES_CHANNEL RUN apt-get update \ @@ -30,7 +28,7 @@ RUN apt-get update \ COPY conanfile.py BigfootDependencies/conanfile.py RUN ccache --zero-stats \ - && CONAN_LOGIN_USERNAME=${ARTIFACTORY_CONAN_USER} CONAN_PASSWORD=${ARTIFACTORY_CONAN_PASSWORD} conan install ./BigfootDependencies -o Requirements/*:packages_channel=${PACKAGES_CHANNEL} --remote=bigfootpackages --build="*" -pr:h=${CONAN_RELEASE_PROFILE} -pr:b=${CONAN_RELEASE_PROFILE} -s build_type=Release \ - && CONAN_LOGIN_USERNAME=${ARTIFACTORY_CONAN_USER} CONAN_PASSWORD=${ARTIFACTORY_CONAN_PASSWORD} conan install ./BigfootDependencies -o Requirements/*:packages_channel=${PACKAGES_CHANNEL} --remote=bigfootpackages --build="*" -pr:h=${CONAN_RELWITHDEBINFO_PROFILE} -pr:b=${CONAN_RELWITHDEBINFO_PROFILE} -s build_type=RelWithDebInfo \ - && CONAN_LOGIN_USERNAME=${ARTIFACTORY_CONAN_USER} CONAN_PASSWORD=${ARTIFACTORY_CONAN_PASSWORD} conan install ./BigfootDependencies -o Requirements/*:packages_channel=${PACKAGES_CHANNEL} --remote=bigfootpackages --build="*" -pr:h=${CONAN_DEBUG_PROFILE} -pr:b=${CONAN_DEBUG_PROFILE} -s build_type=Debug \ + && conan install ./BigfootDependencies -o Requirements/*:packages_channel=${PACKAGES_CHANNEL} --remote=bigfootpackages --build="*" -pr:h=${CONAN_RELEASE_PROFILE} -pr:b=${CONAN_RELEASE_PROFILE} -s build_type=Release \ + && conan install ./BigfootDependencies -o Requirements/*:packages_channel=${PACKAGES_CHANNEL} --remote=bigfootpackages --build="*" -pr:h=${CONAN_RELWITHDEBINFO_PROFILE} -pr:b=${CONAN_RELWITHDEBINFO_PROFILE} -s build_type=RelWithDebInfo \ + && conan install ./BigfootDependencies -o Requirements/*:packages_channel=${PACKAGES_CHANNEL} --remote=bigfootpackages --build="*" -pr:h=${CONAN_DEBUG_PROFILE} -pr:b=${CONAN_DEBUG_PROFILE} -s build_type=Debug \ && ccache --show-stats \ No newline at end of file -- 2.49.1 From a028b6f7e76d43224b1ad0f9b3ea2c7f26be8b37 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Sun, 25 Jan 2026 19:14:28 +0100 Subject: [PATCH 44/46] test with no line breaks --- .gitea/workflows/ci.yaml | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index 1a02dda..45d79a4 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -116,12 +116,7 @@ jobs: PACKAGES_CHANNEL=${{ env.BRANCH_NAME_LOWER }} - name: Push built packages - run: | - docker run --rm \ - -e CONAN_LOGIN_USERNAME=${{ secrets.ARTIFACTORY_USER }} \ - -e CONAN_PASSWORD=${{ secrets.ARTIFACTORY_PASSWORD }} \ - ${{ env.BIGFOOT_BUILDER_TAG }}:${{ env.BRANCH_NAME_LOWER }} \ - conan upload '*' --remote=bigfootpackages --force --confirm + run: docker run --rm -e CONAN_LOGIN_USERNAME=${{ secrets.ARTIFACTORY_USER }} -e CONAN_PASSWORD=${{ secrets.ARTIFACTORY_PASSWORD }} ${{ env.BIGFOOT_BUILDER_TAG }}:${{ env.BRANCH_NAME_LOWER }} conan upload '*' --remote=bigfootpackages --force --confirm build-bigfootcoverage-builder: runs-on: ubuntu-latest -- 2.49.1 From afb0f73cdb962bab090f7e400f00437240f8460f Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Sun, 25 Jan 2026 20:38:36 +0100 Subject: [PATCH 45/46] fix env --- .gitea/workflows/ci.yaml | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index 45d79a4..003d0f2 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -116,7 +116,17 @@ jobs: PACKAGES_CHANNEL=${{ env.BRANCH_NAME_LOWER }} - name: Push built packages - run: docker run --rm -e CONAN_LOGIN_USERNAME=${{ secrets.ARTIFACTORY_USER }} -e CONAN_PASSWORD=${{ secrets.ARTIFACTORY_PASSWORD }} ${{ env.BIGFOOT_BUILDER_TAG }}:${{ env.BRANCH_NAME_LOWER }} conan upload '*' --remote=bigfootpackages --force --confirm + env: + ARTIFACTORY_USER: ${{ secrets.ARTIFACTORY_USER }} + ARTIFACTORY_PASSWORD: ${{ secrets.ARTIFACTORY_PASSWORD }} + BIGFOOT_BUILDER_TAG: ${{ env.BIGFOOT_BUILDER_TAG }} + BRANCH_NAME_LOWER: ${{ env.BRANCH_NAME_LOWER }} + run: | + docker run --rm \ + -e CONAN_LOGIN_USERNAME=${ARTIFACTORY_USER} \ + -e CONAN_PASSWORD=${ARTIFACTORY_PASSWORD} \ + ${BIGFOOT_BUILDER_TAG}:${BRANCH_NAME_LOWER} \ + conan upload '*' --remote=bigfootpackages --force --confirm build-bigfootcoverage-builder: runs-on: ubuntu-latest -- 2.49.1 From 652495cc5c67b77202746a5223636b189a183e3b Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Sun, 25 Jan 2026 22:13:04 +0100 Subject: [PATCH 46/46] fix name --- .gitea/workflows/ci.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index 003d0f2..855f2c7 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -102,7 +102,7 @@ jobs: username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_TOKEN }} - - name: Build and push cpp builder + - name: Build and push bigfoot builder uses: docker/build-push-action@v5 with: context: ./Linux/BigfootBuilder @@ -152,7 +152,7 @@ jobs: username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_TOKEN }} - - name: Build and push cpp builder + - name: Build and push bigfootcoverage builder uses: docker/build-push-action@v5 with: context: ./Linux/BigfootBuilder -- 2.49.1