rotgen/.gitlab-ci.yml
Jules Pénuchot 991967761d Added Ubuntu 24.04 tests
Co-authored-by: Jules Pénuchot <jules@penuchot.com>

See merge request oss/rotgen!33
2025-10-06 17:03:54 +02:00

152 lines
3.2 KiB
YAML

# https://docs.gitlab.com/ee/ci/yaml/
.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
# Native (Clang)
test-native-debug:
<<: *test-native
variables:
CXX: clang++
CMAKE_PRESET: debug
test-native-debug-static:
<<: *test-native
variables:
CXX: clang++
CMAKE_PRESET: debug-static
test-native-debug-et:
<<: *test-native
variables:
CXX: clang++
CMAKE_PRESET: debug-et
test-native-release:
<<: *test-native
variables:
CXX: clang++
CMAKE_PRESET: release
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