Files
Bigfoot/.gitea/workflows/ci.yml
Romain BOULLARD a2136f5367
Some checks failed
Bigfoot / Clang Format Checks (push) Successful in 11s
Bigfoot / Build & Test Debug with ./ConanProfiles/clang (Unity Build: OFF) (push) Has been cancelled
Bigfoot / Build & Test Debug with ./ConanProfiles/clang (Unity Build: ON) (push) Has been cancelled
Bigfoot / Build & Test Debug with ./ConanProfiles/clang_asan (Unity Build: OFF) (push) Has been cancelled
Bigfoot / Build & Test Debug with ./ConanProfiles/clang_asan (Unity Build: ON) (push) Has been cancelled
Bigfoot / Build & Test RelWithDebInfo with ./ConanProfiles/clang (Unity Build: OFF) (push) Has been cancelled
Bigfoot / Build & Test RelWithDebInfo with ./ConanProfiles/clang (Unity Build: ON) (push) Has been cancelled
Bigfoot / Build & Test RelWithDebInfo with ./ConanProfiles/clang_asan (Unity Build: OFF) (push) Has been cancelled
Bigfoot / Build & Test RelWithDebInfo with ./ConanProfiles/clang_asan (Unity Build: ON) (push) Has been cancelled
Bigfoot / Build & Test Release with ./ConanProfiles/clang (Unity Build: OFF) (push) Has been cancelled
Bigfoot / Build & Test Release with ./ConanProfiles/clang (Unity Build: ON) (push) Has been cancelled
Bigfoot / Build & Test Release with ./ConanProfiles/clang_asan (Unity Build: OFF) (push) Has been cancelled
Bigfoot / Build & Test Release with ./ConanProfiles/clang_asan (Unity Build: ON) (push) Has been cancelled
Bigfoot / Build And Upload Conan Dependencies to BigfootPackages (push) Has been cancelled
Remove tools, they will be their own packages
2026-04-14 23:14:17 +02:00

124 lines
4.2 KiB
YAML

name: Bigfoot
on:
push:
branches:
- '**'
workflow_dispatch:
jobs:
conan-dependencies:
runs-on: ubuntu-latest
timeout-minutes: 120
container:
image: git.romainboullard.com/bigfootdev/linuxbigfootbuilder:main
volumes:
- /srv/romainboullard.com/caches/ccache:/ccache
env:
ARTIFACTORY_USER: ${{ secrets.ARTIFACTORY_USER }}
ARTIFACTORY_PASSWORD: ${{ secrets.ARTIFACTORY_PASSWORD }}
CCACHE_DIR: /ccache
CCACHE_MAXSIZE: 10G
CCACHE_BASEDIR: /root/.conan2
CCACHE_NOHASHDIR: "true"
CCACHE_COMPILERCHECK: "%compiler% -dumpversion"
name: "Build And Upload Conan Dependencies to BigfootPackages"
steps:
- name: Install Node.js
run: apt-get update && apt-get install -y nodejs
- name: Checkout repository
uses: actions/checkout@v6
with:
submodules: recursive
- name: Reset ccache stats
run: ccache --zero-stats
- name: Build
run: |
for build_type in Debug RelWithDebInfo Release; do
conan install . --remote=bigfootpackages \
-pr:h=./ConanProfiles/clang -pr:b=./ConanProfiles/clang \
--build=missing \
-s build_type=$build_type \
-o bigfoot/*:build_tests=True \
-o bigfoot/*:tracy=False \
-o bigfoot/*:vulkan=True
done
conan install . --remote=bigfootpackages \
-pr:h=./ConanProfiles/clang_asan -pr:b=./ConanProfiles/clang_asan \
--build=missing \
-s build_type=$build_type \
-o bigfoot/*:build_tests=True \
-o bigfoot/*:tracy=False \
-o bigfoot/*:vulkan=True
- name: Show ccache stats
run: ccache --show-stats
- name: Upload
run: CONAN_LOGIN_USERNAME=${ARTIFACTORY_USER} CONAN_PASSWORD=${ARTIFACTORY_PASSWORD} conan upload "*" -r bigfootpackages --confirm
build-and-test:
needs: conan-dependencies
runs-on: ubuntu-latest
timeout-minutes: 120
container:
image: git.romainboullard.com/bigfootdev/linuxbigfootbuilder:main
volumes:
- /srv/romainboullard.com/caches/ccache:/ccache
env:
CCACHE_DIR: /ccache
CCACHE_MAXSIZE: 10G
CCACHE_COMPILERCHECK: "%compiler% -dumpversion"
strategy:
matrix:
build_type: ["Debug", "RelWithDebInfo", "Release"]
unity_build: ["ON", "OFF"]
conan_profile: ["./ConanProfiles/clang", "./ConanProfiles/clang_asan"]
name: "Build & Test ${{ matrix.build_type }} with ${{ matrix.conan_profile }} (Unity Build: ${{ matrix.unity_build }})"
steps:
- name: Install Node.js
run: apt-get update && apt-get install -y nodejs
- name: Checkout repository
uses: actions/checkout@v6
with:
submodules: recursive
- name: Reset ccache stats
run: ccache --zero-stats
- name: Build
run: |
conan install . --remote=bigfootpackages -pr:h=${{ matrix.conan_profile }} -pr:b=${{ matrix.conan_profile }} --build=never -s build_type=${{ matrix.build_type }} -o bigfoot/*:build_tests=True -o bigfoot/*:tracy=False -o bigfoot/*:vulkan=True
cmake -S . -B ./build/${{ matrix.build_type }} --toolchain ./build/${{ matrix.build_type }}/generators/conan_toolchain.cmake -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} -DCMAKE_UNITY_BUILD=${{ matrix.unity_build }} -G "Ninja"
cmake --build build/${{ matrix.build_type }} --parallel $(nproc)
- name: Show ccache stats
run: ccache --show-stats
- name: Unit Tests
run: |
cd ./build/${{ matrix.build_type }}
xvfb-run ctest . --output-on-failure
clang-format:
runs-on: ubuntu-latest
timeout-minutes: 120
container:
image: git.romainboullard.com/bigfootdev/linuxbigfootbuilder:main
name: "Clang Format Checks"
steps:
- name: Install Node.js
run: apt-get update && apt-get install -y nodejs
- name: Checkout repository
uses: actions/checkout@v6
with:
submodules: recursive
- name: Clang Format Checks
run: chmod +x format.sh && ./format.sh --check Bigfoot