build and unit tests
Some checks failed
Bigfoot / build-and-test (Debug, false) (push) Failing after 1m49s
Bigfoot / build-and-test (Debug, true) (push) Failing after 10s
Bigfoot / build-and-test (RelWithDebInfo, false) (push) Failing after 10s
Bigfoot / build-and-test (RelWithDebInfo, true) (push) Failing after 9s
Bigfoot / build-and-test (Release, false) (push) Failing after 9s
Bigfoot / build-and-test (Release, true) (push) Failing after 10s
Some checks failed
Bigfoot / build-and-test (Debug, false) (push) Failing after 1m49s
Bigfoot / build-and-test (Debug, true) (push) Failing after 10s
Bigfoot / build-and-test (RelWithDebInfo, false) (push) Failing after 10s
Bigfoot / build-and-test (RelWithDebInfo, true) (push) Failing after 9s
Bigfoot / build-and-test (Release, false) (push) Failing after 9s
Bigfoot / build-and-test (Release, true) (push) Failing after 10s
This commit is contained in:
4
.devcontainer/devcontainer.json
Normal file
4
.devcontainer/devcontainer.json
Normal file
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"name": "Bigfoot",
|
||||
"image": "git.romainboullard.com/bigfootdev/linuxbigfootbuilder:main"
|
||||
}
|
||||
46
.gitea/workflows/ci.yml
Normal file
46
.gitea/workflows/ci.yml
Normal file
@@ -0,0 +1,46 @@
|
||||
name: Bigfoot
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- '**'
|
||||
workflow_dispatch:
|
||||
|
||||
env:
|
||||
CCACHE_BASEDIR: ${{ github.workspace }}
|
||||
|
||||
jobs:
|
||||
build-and-test:
|
||||
runs-on: ubuntu-latest
|
||||
timeout-minutes: 120
|
||||
container:
|
||||
image: git.romainboullard.com/bigfootdev/linuxbigfootbuilder:main
|
||||
strategy:
|
||||
matrix:
|
||||
build_type: [Debug, RelWithDebInfo, Release]
|
||||
unity_build: [True, False]
|
||||
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: Show ccache stats before
|
||||
run: ccache --zero-stats
|
||||
|
||||
- name: Build
|
||||
run: |
|
||||
conan install . --deployer=full_deploy --deployer-folder=build --remote=bigfootpackages -pr:h=clang -pr:b=clang --build=missing -s build_type=${{ matrix.build_type }} -o bigfoot/*:unity_build=${{ matrix.unity_build }} -o bigfoot/*:build_tests=True -o bigfoot/*:sample_app=True -o bigfoot/*:tracy=False -o bigfoot/*:build_tools=True -o bigfoot/*:vulkan=True -o bigfoot/*:build_benchmarks=True -o bigfoot/*:build_benchmarks_lto=True -o bigfoot/*:render_doc=True
|
||||
cmake -S . -B ./build/${{ matrix.build_type }} --toolchain ./build/${{ matrix.build_type }}/generators/conan_toolchain.cmake -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} -G "Ninja"
|
||||
cmake --build build/${{ matrix.build_type }} --parallel $(nproc)
|
||||
|
||||
- name: Test
|
||||
run: |
|
||||
cd ./build/${{ matrix.build_type }}
|
||||
xvfb-run ctest . --output-on-failure
|
||||
|
||||
- name: Show ccache stats after
|
||||
run: ccache --show-stats
|
||||
@@ -1,79 +0,0 @@
|
||||
include: '/CI/templates.yml'
|
||||
|
||||
variables:
|
||||
SONAR_USER_HOME: "${CI_PROJECT_DIR}/.sonar"
|
||||
GIT_SUBMODULE_STRATEGY: recursive
|
||||
GIT_DEPTH: "0"
|
||||
|
||||
stages:
|
||||
- build
|
||||
- build-unity
|
||||
- unit-tests
|
||||
- sonar
|
||||
|
||||
# ******************************************DEBUG******************************************
|
||||
|
||||
BuildDebug:
|
||||
extends: .Build
|
||||
variables:
|
||||
BUILD_TYPE: 'Debug'
|
||||
|
||||
BuildUnityDebug:
|
||||
extends: .BuildUnity
|
||||
variables:
|
||||
BUILD_TYPE: 'Debug'
|
||||
|
||||
UnitTestsDebug:
|
||||
extends: .UnitTests
|
||||
variables:
|
||||
BUILD_TYPE: 'Debug'
|
||||
needs:
|
||||
- BuildUnityDebug
|
||||
|
||||
# ******************************************RELWITHDEBINFO******************************************
|
||||
|
||||
BuildRelWithDebInfo:
|
||||
extends: .Build
|
||||
variables:
|
||||
BUILD_TYPE: 'RelWithDebInfo'
|
||||
|
||||
BuildUnityRelWithDebInfo:
|
||||
extends: .BuildUnity
|
||||
variables:
|
||||
BUILD_TYPE: 'RelWithDebInfo'
|
||||
|
||||
UnitTestsRelWithDebInfo:
|
||||
extends: .UnitTests
|
||||
variables:
|
||||
BUILD_TYPE: 'RelWithDebInfo'
|
||||
needs:
|
||||
- BuildUnityRelWithDebInfo
|
||||
|
||||
# ******************************************RELEASE******************************************
|
||||
|
||||
BuildRelease:
|
||||
extends: .Build
|
||||
variables:
|
||||
BUILD_TYPE: 'Release'
|
||||
|
||||
BuildUnityRelease:
|
||||
extends: .BuildUnity
|
||||
variables:
|
||||
BUILD_TYPE: 'Release'
|
||||
|
||||
UnitTestsRelease:
|
||||
extends: .UnitTests
|
||||
variables:
|
||||
BUILD_TYPE: 'Release'
|
||||
needs:
|
||||
- BuildUnityRelease
|
||||
|
||||
# ******************************************Sonar******************************************
|
||||
|
||||
SonarCloud:
|
||||
extends: .SonarCloud
|
||||
dependencies: []
|
||||
only:
|
||||
- merge_requests
|
||||
- main
|
||||
- Development
|
||||
121
CI/templates.yml
121
CI/templates.yml
@@ -1,121 +0,0 @@
|
||||
.Build:
|
||||
variables:
|
||||
BUILD_TYPE: 'Release'
|
||||
CCACHE_BASEDIR: $CI_PROJECT_DIR
|
||||
CCACHE_DIR: $CI_PROJECT_DIR/ccache
|
||||
CCACHE_COMPILERCHECK: "content"
|
||||
image: registry.gitlab.com/bigfootdev/docker/linuxbigfootbuilder:main
|
||||
stage: build
|
||||
before_script:
|
||||
- ccache --zero-stats
|
||||
script:
|
||||
- conan install . --deployer=full_deploy --deployer-folder=build --remote=bigfootpackages -pr:h=clang -pr:b=clang --build=missing -s build_type=$BUILD_TYPE -o bigfoot/*:unity_build=False -o bigfoot/*:build_tests=True -o bigfoot/*:sample_app=True -o bigfoot/*:tracy=False -o bigfoot/*:build_tools=True -o bigfoot/*:vulkan=True -o bigfoot/*:build_benchmarks=True -o bigfoot/*:build_benchmarks_lto=True -o bigfoot/*:render_doc=True
|
||||
- cmake -S . -B ./build/$BUILD_TYPE --toolchain ./build/$BUILD_TYPE/generators/conan_toolchain.cmake -DCMAKE_BUILD_TYPE=$BUILD_TYPE -G "Ninja"
|
||||
- cmake --build build/$BUILD_TYPE --parallel $(nproc)
|
||||
after_script:
|
||||
- ccache --show-stats
|
||||
dependencies: []
|
||||
artifacts:
|
||||
when: always
|
||||
name: Build$BUILD_TYPE
|
||||
paths:
|
||||
- build/$BUILD_TYPE
|
||||
expire_in: 1 week
|
||||
cache:
|
||||
- key: "$CI_JOB_NAME"
|
||||
paths:
|
||||
- $CCACHE_DIR
|
||||
tags:
|
||||
- linux
|
||||
- c++
|
||||
- bigfootdev
|
||||
|
||||
.BuildUnity:
|
||||
variables:
|
||||
BUILD_TYPE: 'Release'
|
||||
CCACHE_BASEDIR: $CI_PROJECT_DIR
|
||||
CCACHE_DIR: $CI_PROJECT_DIR/ccache
|
||||
CCACHE_COMPILERCHECK: "content"
|
||||
image: registry.gitlab.com/bigfootdev/docker/linuxbigfootbuilder:main
|
||||
stage: build-unity
|
||||
before_script:
|
||||
- ccache --zero-stats
|
||||
script:
|
||||
- conan install . --deployer=full_deploy --deployer-folder=build --remote=bigfootpackages -pr:h=clang -pr:b=clang --build=missing -s build_type=$BUILD_TYPE -o bigfoot/*:unity_build=True -o bigfoot/*:build_tests=True -o bigfoot/*:sample_app=True -o bigfoot/*:tracy=False -o bigfoot/*:build_tools=True -o bigfoot/*:vulkan=True -o bigfoot/*:build_benchmarks=True -o bigfoot/*:build_benchmarks_lto=True -o bigfoot/*:render_doc=True
|
||||
- cmake -S . -B ./build/$BUILD_TYPE --toolchain ./build/$BUILD_TYPE/generators/conan_toolchain.cmake -DCMAKE_BUILD_TYPE=$BUILD_TYPE -G "Ninja"
|
||||
- cmake --build build/$BUILD_TYPE --parallel $(nproc)
|
||||
after_script:
|
||||
- ccache --show-stats
|
||||
dependencies: []
|
||||
artifacts:
|
||||
when: always
|
||||
name: Build$BUILD_TYPE
|
||||
paths:
|
||||
- build/$BUILD_TYPE
|
||||
expire_in: 1 week
|
||||
cache:
|
||||
- key: "$CI_JOB_NAME"
|
||||
paths:
|
||||
- $CCACHE_DIR
|
||||
tags:
|
||||
- linux
|
||||
- c++
|
||||
- bigfootdev
|
||||
|
||||
.UnitTests:
|
||||
variables:
|
||||
BUILD_TYPE: 'Release'
|
||||
image: registry.gitlab.com/bigfootdev/docker/linuxbigfootbuilder:main
|
||||
stage: unit-tests
|
||||
script:
|
||||
- cd ./build/$BUILD_TYPE
|
||||
- xvfb-run ctest . --output-on-failure
|
||||
artifacts:
|
||||
when: always
|
||||
name: Test$BUILD_TYPE
|
||||
paths:
|
||||
- build/$BUILD_TYPE
|
||||
reports:
|
||||
junit: ./build/$BUILD_TYPE/TestResults/*.xml
|
||||
tags:
|
||||
- linux
|
||||
- c++
|
||||
- bigfootdev
|
||||
|
||||
.SonarCloud:
|
||||
variables:
|
||||
CCACHE_BASEDIR: $CI_PROJECT_DIR
|
||||
CCACHE_DIR: $CI_PROJECT_DIR/ccache
|
||||
CCACHE_COMPILERCHECK: "content"
|
||||
image: registry.gitlab.com/bigfootdev/docker/linuxbigfootcoveragebuilder:main
|
||||
stage: sonar
|
||||
before_script:
|
||||
- ccache --zero-stats
|
||||
- curl -sSLo ./sonar-scanner.zip 'https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-7.2.0.5079-linux-x64.zip'
|
||||
- unzip -o sonar-scanner.zip
|
||||
- mv sonar-scanner-7.2.0.5079-linux-x64 sonar-scanner
|
||||
- curl -sSLo ./build-wrapper-linux-x86.zip "${SONAR_HOST_URL}/static/cpp/build-wrapper-linux-x86.zip"
|
||||
- unzip -oj build-wrapper-linux-x86.zip -d ./build-wrapper
|
||||
script:
|
||||
- conan install . --deployer=full_deploy --deployer-folder=build --remote=bigfootpackages -pr:h=gcc_coverage -pr:b=gcc_coverage --build=missing -s build_type=Debug -o bigfoot/*:unity_build=False -o bigfoot/*:build_tests=True -o bigfoot/*:sample_app=False -o bigfoot/*:tracy=False -o bigfoot/*:build_tools=True -o bigfoot/*:vulkan=True -o bigfoot/*:build_benchmarks=False -o bigfoot/*:build_benchmarks_lto=False -o bigfoot/*:render_doc=False
|
||||
- cmake -S . -B ./build/Debug --toolchain ./build/Debug/generators/conan_toolchain.cmake -DCMAKE_BUILD_TYPE=Debug -G "Ninja"
|
||||
- ./build-wrapper/build-wrapper-linux-x86-64 --out-dir bw-output cmake --build ./build/Debug --parallel $(nproc)
|
||||
- chmod +x sonarqube.sh && xvfb-run ./sonarqube.sh
|
||||
- ./sonar-scanner/bin/sonar-scanner -Dsonar.host.url="${SONAR_HOST_URL}" -Dsonar.token="${SONAR_BIGFOOT2_TOKEN}" -Dsonar.cfamily.compile-commands=bw-output/compile_commands.json -Dsonar.coverageReportPaths=SonarqubeResult/CoverageReport/coverage.xml -Dsonar.cfamily.cppunit.reportsPath=SonarqubeResult/UnitTests/Merged/CPPUnit
|
||||
after_script:
|
||||
- ccache --show-stats
|
||||
artifacts:
|
||||
when: always
|
||||
name: BuildAndCoverage
|
||||
paths:
|
||||
- build/Debug
|
||||
- SonarqubeResult
|
||||
expire_in: 1 week
|
||||
cache:
|
||||
- key: "$CI_JOB_NAME"
|
||||
paths:
|
||||
- $CCACHE_DIR
|
||||
tags:
|
||||
- linux
|
||||
- c++
|
||||
- bigfootdev
|
||||
Reference in New Issue
Block a user