# 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