Files
DockerImages/.gitea/workflows/ci.yaml
Romain BOULLARD e1a0603aad
Some checks failed
Docker Builders / build-base-builder (push) Successful in 34s
Docker Builders / build-cpp-builder (push) Failing after 3m58s
Docker Builders / build-bigfoot-builder (push) Has been skipped
Docker Builders / build-bigfootcoverage-builder (push) Has been skipped
missing channel
2026-01-25 18:04:48 +01:00

158 lines
5.2 KiB
YAML

name: Docker Builders
on:
push:
branches:
- '**'
workflow_dispatch:
env:
BRANCH_NAME: ${{ github.ref_name }}
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:
runs-on: ubuntu-latest
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
- 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 base builder
uses: docker/build-push-action@v5
with:
context: ./Linux/BaseBuilder
push: true
tags: ${{ env.BASE_BUILDER_TAG }}:${{ env.BRANCH_NAME_LOWER }}
build-cpp-builder:
runs-on: ubuntu-latest
timeout-minutes: 360
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
- 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/CPPBuilder
push: true
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 }}
build-bigfoot-builder:
runs-on: ubuntu-latest
timeout-minutes: 360
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: 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 }}:${{ 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
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
timeout-minutes: 360
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: 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 }}:${{ 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
PACKAGES_CHANNEL=${{ env.BRANCH_NAME_LOWER }}