tug/.gitlab-ci.yml

72 lines
1.6 KiB
YAML

image: sobc/gitlab-ci
stages:
- build
- test
- run
- static_analyze
- dynamic_analyze
before_script:
- apt-get update && apt-get install -y libeigen3-dev
build_debug:
stage: build
artifacts:
paths:
- debug/app/1D
- debug/app/2D
expire_in: 100s
script:
- mkdir debug && cd debug
- cmake -DCMAKE_BUILD_TYPE=Debug -DENABLE_TESTING=ON ..
- make -j$(nproc)
build_release:
stage: build
artifacts:
paths:
- build/app/1D
- build/app/2D
- build/app/Comp2D
- build/test/test
expire_in: 100s
script:
- mkdir build && cd build
- cmake -DCMAKE_BUILD_TYPE=GenericOpt -DENABLE_TESTING=ON ..
- make -j$(nproc)
test:
stage: test
script:
- ./build/test/test
run_1D:
stage: run
script:
- ./build/app/1D
run_2D:
stage: run
script:
- ./build/app/2D
lint:
stage: static_analyze
script:
- mkdir lint && cd lint
- cmake -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_CXX_CLANG_TIDY="clang-tidy;-checks=cppcoreguidelines-*,clang-analyzer-*,performance-*,readability-*, modernize-*" ..
- make BTCSDiffusion
memcheck_1D:
stage: dynamic_analyze
script:
- cd debug/app
- valgrind --tool=memcheck --leak-check=full --show-leak-kinds=all --track-origins=yes ./1D 1>/dev/null
memcheck_2D:
stage: dynamic_analyze
script:
- cd debug/app
- valgrind --tool=memcheck --leak-check=full --show-leak-kinds=all --track-origins=yes ./2D 1>/dev/null