File: .gitlab-ci.yml

package info (click to toggle)
vecgeom 1.2.1%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 23,928 kB
  • sloc: cpp: 88,717; ansic: 6,894; python: 1,035; sh: 582; sql: 538; makefile: 29
file content (67 lines) | stat: -rw-r--r-- 2,896 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
image: ubuntu:jammy

stages:
  - build
    
clang-format:
  stage: build
  before_script:
    - apt-get update -y && apt-get upgrade -y
    - apt-get install -y software-properties-common wget cmake git findutils clang-format-14
  script:
    - ln -s `which clang-format-14` clang-format && PATH=$PATH:$PWD ./scripts/clang-format-test.sh
 
# performing the static analysis code check using a custom docker image with the llvm installation we need
code_checks:
  stage: build
  before_script:
    - apt update -y && apt-get upgrade -y
    - apt install -y software-properties-common wget clang-14 libclang-14-dev clang-tidy-14 python3 python-is-python3 cmake
  script:
    - mkdir build && cd build
    - CXX=clang++-14 cmake .. -DVECGEOM_BUILTIN_VECCORE=ON -DVECGEOM_ROOT=OFF -DVECGEOM_GDML=OFF -DVECGEOM_TEST_STATIC_ANALYSIS=ON -DVECGEOM_BACKEND=Scalar
    - make -j8
    - ctest -j8 -V
     
# normal build against a recent ROOT; using the ALICE software stack
# because it comes fully consistent on cvmfs (including compiler etc)
with_ROOT:
   tags:
     - cvmfs
   image: cern/cc7-base
   stage: build
   script:
     - ls /cvmfs/alice.cern.ch/
     - mkdir build && cd build
       # need C++17 since ROOT was built with C++17
     - cmake .. -DVECGEOM_BUILTIN_VECCORE=ON -DVc_DIR=${VC_ROOT}/lib/cmake -DVECGEOM_ROOT=ON -DVECGEOM_GDML=OFF -DVECGEOM_BACKEND=Vc
       # for the moment exclude the E03 test since downloading E03 root geometry has problems on the CI machine
     - make -j8 VERBOSE=ON && ctest --output-on-failure -j8 -E E03
   before_script:
     - echo $SHELL
     - yum install environment-modules -y
     - yum install -y unzip autoconf automake make gcc
     - eval "$(/cvmfs/alice.cern.ch/bin/alienv printenv CMake::v3.18.2-1)"
     - eval "$(/cvmfs/alice.cern.ch/bin/alienv printenv ROOT::v6-18-04-8)"
     - eval "$(/cvmfs/alice.cern.ch/bin/alienv printenv Vc::1.4.1-6)"

# build for USING_NAVINDEX=ON (using the cvmfs ALICE software stack: TODO: convert to project/sft...)
with_NAVINDEX:
   tags:
     - cvmfs
   image: cern/cc7-base
   stage: build
   script:
     - ls /cvmfs/alice.cern.ch/
     - mkdir build && cd build
       # need C++17 since ROOT was built with C++17
     - cmake .. -DVECGEOM_BUILTIN_VECCORE=ON -DVc_DIR=${VC_ROOT}/lib/cmake -DVECGEOM_USE_NAVINDEX=ON -DVECGEOM_ROOT=ON -DVECGEOM_GDML=OFF -DVECGEOM_BACKEND=Vc
       # for the moment exclude the E03 test since downloading E03 root geometry has problems on the CI machine
     - make -j8 VERBOSE=ON && ctest --output-on-failure -j8 -E E03
   before_script:
     - echo $SHELL
     - yum install environment-modules -y
     - yum install -y unzip autoconf automake make gcc
     - eval "$(/cvmfs/alice.cern.ch/bin/alienv printenv CMake::v3.18.2-1)"
     - eval "$(/cvmfs/alice.cern.ch/bin/alienv printenv ROOT::v6-18-04-8)"
     - eval "$(/cvmfs/alice.cern.ch/bin/alienv printenv Vc::1.4.1-6)"