From a6ebe56c9488835f8d9f6bd03f99586efe786f75 Mon Sep 17 00:00:00 2001 From: Romain BOULLARD Date: Fri, 23 Jan 2026 17:27:07 +0100 Subject: [PATCH] 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 }}"