Added Ubuntu 24.04 tests

Co-authored-by: Jules Pénuchot <jules@penuchot.com>

See merge request oss/rotgen!33
This commit is contained in:
Jules Pénuchot 2025-10-06 17:03:54 +02:00 committed by Joel Falcou
parent 8fcd92ce1a
commit 991967761d
6 changed files with 254 additions and 142 deletions

View file

@ -1,61 +1,152 @@
# https://docs.gitlab.com/ee/ci/yaml/
.native-job: &native-job
.run-tests: &run-tests
stage: test
script:
- echo -e "\e[0Ksection_start:`date +%s`:build-tests[collapsed=true]\r\e[0KBuilding tests for preset $CMAKE_PRESET"
- cmake --preset $CMAKE_PRESET
- cmake --build --preset $CMAKE_PRESET
- cmake --build --preset $CMAKE_PRESET --target rotgen-test
- echo -e "\e[0Ksection_end:`date +%s`:build-tests\r\e[0K"
- echo -e "\e[0Ksection_start:`date +%s`:run-tests[collapsed=false]\r\e[0KRunning tests for preset $CMAKE_PRESET"
- ./ci-cd/test-wrapper.sh
- echo -e "\e[0Ksection_end:`date +%s`:run-tests\r\e[0K"
.test-native: &test-native
tags: ["shell"]
<<: *run-tests
.test-ubuntu2404: &test-ubuntu2404
tags: [docker]
image: ubuntu:24.04
cache:
paths: [/var/cache/apt/, /var/lib/apt/lists/]
before_script:
- echo -e "\e[0Ksection_start:`date +%s`:ci-setup[collapsed=true]\r\e[0KInstall packages"
- ./ci-cd/ci-setup.sh
- echo -e "\e[0Ksection_end:`date +%s`:ci-setup\r\e[0K"
<<: *run-tests
stages:
- test
test-debug:
<<: *native-job
stage: test
script:
- cmake --preset debug -DCMAKE_CXX_COMPILER=clang++
- cmake --build --preset debug
- cmake --build --preset debug --target rotgen-test
- cd build/debug && ctest --output-on-failure --verbose
# Native (Clang)
test-debug-static:
<<: *native-job
stage: test
script:
- cmake --preset debug-static -DCMAKE_CXX_COMPILER=clang++
- cmake --build --preset debug-static
- cmake --build --preset debug-static --target rotgen-test
- cd build/debug-static && ctest --output-on-failure --verbose
test-native-debug:
<<: *test-native
variables:
CXX: clang++
CMAKE_PRESET: debug
test-debug-et:
<<: *native-job
stage: test
script:
- cmake --preset debug-et -DCMAKE_CXX_COMPILER=clang++
- cmake --build --preset debug-et
- cmake --build --preset debug-et --target rotgen-test
- cd build/debug-et && ctest --output-on-failure --verbose
test-native-debug-static:
<<: *test-native
variables:
CXX: clang++
CMAKE_PRESET: debug-static
test-release:
<<: *native-job
stage: test
script:
- cmake --preset release -DCMAKE_CXX_COMPILER=clang++
- cmake --build --preset release
- cmake --build --preset release --target rotgen-test
- cd build/release && ctest --output-on-failure --verbose
test-native-debug-et:
<<: *test-native
variables:
CXX: clang++
CMAKE_PRESET: debug-et
test-release-static:
<<: *native-job
stage: test
script:
- cmake --preset release-static -DCMAKE_CXX_COMPILER=clang++
- cmake --build --preset release-static
- cmake --build --preset release-static --target rotgen-test
- cd build/release-static && ctest --output-on-failure --verbose
test-native-release:
<<: *test-native
variables:
CXX: clang++
CMAKE_PRESET: release
test-release-et:
<<: *native-job
stage: test
script:
- cmake --preset release-et -DCMAKE_CXX_COMPILER=clang++
- cmake --build --preset release-et
- cmake --build --preset release-et --target rotgen-test
- cd build/release-et && ctest --output-on-failure --verbose
test-native-release-static:
<<: *test-native
variables:
CXX: clang++
CMAKE_PRESET: release-static
test-native-release-et:
<<: *test-native
variables:
CXX: clang++
CMAKE_PRESET: release-et
# Ubuntu 24.04 (Clang 14)
test-ubuntu-clang14-debug:
<<: *test-ubuntu2404
variables:
CXX: clang++-14
CXXFLAGS: --stdlib=libc++
CMAKE_PRESET: debug
test-ubuntu-clang14-debug-static:
<<: *test-ubuntu2404
variables:
CXX: clang++-14
CXXFLAGS: --stdlib=libc++
CMAKE_PRESET: debug-static
test-ubuntu-clang14-debug-et:
<<: *test-ubuntu2404
variables:
CXX: clang++-14
CXXFLAGS: --stdlib=libc++
CMAKE_PRESET: debug-et
test-ubuntu-clang14-release:
<<: *test-ubuntu2404
variables:
CXX: clang++-14
CXXFLAGS: --stdlib=libc++
CMAKE_PRESET: release
test-ubuntu-clang14-release-static:
<<: *test-ubuntu2404
variables:
CXX: clang++-14
CXXFLAGS: --stdlib=libc++
CMAKE_PRESET: release-static
test-ubuntu-clang14-release-et:
<<: *test-ubuntu2404
variables:
CXX: clang++-14
CXXFLAGS: --stdlib=libc++
CMAKE_PRESET: release-et
# Ubuntu 24.04 (GCC)
test-ubuntu-gcc-debug:
<<: *test-ubuntu2404
variables:
CXX: g++
CMAKE_PRESET: debug
test-ubuntu-gcc-debug-static:
<<: *test-ubuntu2404
variables:
CXX: g++
CMAKE_PRESET: debug-static
test-ubuntu-gcc-debug-et:
<<: *test-ubuntu2404
variables:
CXX: g++
CMAKE_PRESET: debug-et
test-ubuntu-gcc-release:
<<: *test-ubuntu2404
variables:
CXX: g++
CMAKE_PRESET: release
test-ubuntu-gcc-release-static:
<<: *test-ubuntu2404
variables:
CXX: g++
CMAKE_PRESET: release-static
test-ubuntu-gcc-release-et:
<<: *test-ubuntu2404
variables:
CXX: g++
CMAKE_PRESET: release-et