Closes #18 Co-authored-by: Jules Pénuchot <jules@penuchot.com> See merge request oss/rotgen!50
152 lines
3.2 KiB
YAML
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-fixed:
|
|
<<: *test-native
|
|
variables:
|
|
CXX: clang++
|
|
CMAKE_PRESET: debug-fixed
|
|
|
|
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-fixed:
|
|
<<: *test-native
|
|
variables:
|
|
CXX: clang++
|
|
CMAKE_PRESET: release-fixed
|
|
|
|
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-fixed:
|
|
<<: *test-ubuntu2404
|
|
variables:
|
|
CXX: clang++-14
|
|
CXXFLAGS: --stdlib=libc++
|
|
CMAKE_PRESET: debug-fixed
|
|
|
|
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-fixed:
|
|
<<: *test-ubuntu2404
|
|
variables:
|
|
CXX: clang++-14
|
|
CXXFLAGS: --stdlib=libc++
|
|
CMAKE_PRESET: release-fixed
|
|
|
|
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-fixed:
|
|
<<: *test-ubuntu2404
|
|
variables:
|
|
CXX: g++
|
|
CMAKE_PRESET: debug-fixed
|
|
|
|
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-fixed:
|
|
<<: *test-ubuntu2404
|
|
variables:
|
|
CXX: g++
|
|
CMAKE_PRESET: release-fixed
|
|
|
|
test-ubuntu-gcc-release-et:
|
|
<<: *test-ubuntu2404
|
|
variables:
|
|
CXX: g++
|
|
CMAKE_PRESET: release-et
|