-
Paul Gessinger authoredPaul Gessinger authored
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
stages:
- build
- test
- analysis
- deploy
variables:
# everything on except legacy, dd4hp, tgeo
COMMON_BUILD_OPTIONS: -DACTS_BUILD_EXAMPLES=on -DACTS_BUILD_TESTS=on -DACTS_BUILD_INTEGRATION_TESTS=on -DACTS_BUILD_DIGITIZATION_PLUGIN=on -DACTS_BUILD_IDENTIFICATION_PLUGIN=on -DACTS_BUILD_JSON_PLUGIN=on -DACTS_BUILD_MATERIAL_PLUGIN=on
before_script:
# CI executor uses fail on error by default
# setup scripts do not like that
- set +e && source CI/setup_lcg94.sh; set -e
# pre-build checks
format:
stage: build
image: gitlab-registry.cern.ch/acts/machines/check:latest
before_script: []
script:
- CI/check_format .
artifacts:
paths:
- changed
when: on_failure
license:
stage: build
image: python:alpine3.6
before_script: []
script:
- apk add --no-cache git
- CI/check_license.py . --check-years
include_guards:
stage: build
image: python:alpine3.6
before_script: []
script:
- CI/check_include_guards.py . --fail-global
# job templates w/ default settings
#
# the build directory is always `build`. To select a specific build version
# you always have to define the correct `dependencies` settings to only
# load the artifacts from one build.
.build: &template_build
stage: build
tags:
- cvmfs
variables:
BUILD_TYPE: Release
BUILD_OPTIONS: ${COMMON_BUILD_OPTIONS} -DACTS_BUILD_LEGACY=on -DACTS_BUILD_DD4HEP_PLUGIN=on -DACTS_BUILD_TGEO_PLUGIN=on
script:
- mkdir build
- cd build
- cmake -GNinja -DCMAKE_BUILD_TYPE=${BUILD_TYPE} -DCMAKE_CXX_FLAGS="-Werror" ${BUILD_OPTIONS} ..
- cmake --build . -- -j${ACTS_NCPUS}
- find . -name "*.o" -delete
artifacts:
paths:
- build
expire_in: 6 hours
.unit_tests: &template_unit_tests
stage: test
tags: