Files
DockerImages/.gitea/workflows/ci.yaml
Romain BOULLARD 760f1a4f55
Some checks failed
Docker Builders / build-base-builder (push) Successful in 38s
Docker Builders / build-cpp-builder (push) Successful in 5m35s
Docker Builders / build-bigfoot-builder (push) Has been cancelled
RemoveGCCCoverage (#3)
Reviewed-on: #3
Co-authored-by: Romain BOULLARD <romain.boullard@protonmail.com>
Co-committed-by: Romain BOULLARD <romain.boullard@protonmail.com>
2026-01-29 21:50:46 +00:00

126 lines
4.0 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
jobs:
build-base-builder:
runs-on: ubuntu-latest
timeout-minutes: 360
steps:
- 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
- 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 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
- 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 }}
build-bigfoot-builder:
runs-on: ubuntu-latest
timeout-minutes: 360
needs: build-cpp-builder
steps:
- 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
- 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 bigfoot 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 }}
CONAN_RELEASE_PROFILE=clang
CONAN_RELWITHDEBINFO_PROFILE=clangd
CONAN_DEBUG_PROFILE=clangd
- name: Push built packages
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