File: .gitlab-ci.yml

package info (click to toggle)
vecgeom 1.2.8%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 24,016 kB
  • sloc: cpp: 88,803; ansic: 6,888; python: 1,035; sh: 582; sql: 538; makefile: 23
file content (79 lines) | stat: -rw-r--r-- 3,586 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
68
69
70
71
72
73
74
75
76
77
78
79
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 git
  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
   before_script:
     - yum install environment-modules -y
     - yum install -y unzip autoconf automake make gcc git
     - eval "$(/cvmfs/alice.cern.ch/bin/alienv printenv ROOT::v6-28-04-9,CMake::v3.27.9-1)"
     - export VC_PATH=/cvmfs/alice.cern.ch/el7-x86_64/Packages/Vc/1.4.1-100
     - export CMAKE_PREFIX_PATH=${VC_PATH}:${CMAKE_PREFIX_PATH}
   script:
     - mkdir build && cd build
     - cmake .. -DVECGEOM_BUILTIN_VECCORE=ON -DVECGEOM_BACKEND=Vc -DVECGEOM_ROOT=ON -DVECGEOM_GDML=OFF
       # 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

# build for USING_NAVINDEX=ON (using the cvmfs ALICE software stack: TODO: convert to project/sft...)
with_NAVINDEX_GDML_ROOT:
   tags:
     - cvmfs
   image: cern/cc7-base
   stage: build
   before_script:
     - yum install environment-modules -y
     - yum install -y unzip autoconf automake make gcc git xerces-c-devel
     - eval "$(/cvmfs/alice.cern.ch/bin/alienv printenv ROOT::v6-28-04-9,CMake::v3.27.9-1)"
     - export VC_PATH=/cvmfs/alice.cern.ch/el7-x86_64/Packages/Vc/1.4.1-100
     - export CMAKE_PREFIX_PATH=${VC_PATH}:${CMAKE_PREFIX_PATH}
   script:
     - mkdir build && cd build
     - cmake .. -DVECGEOM_BUILTIN_VECCORE=ON -DVECGEOM_BACKEND=Vc -DVECGEOM_USE_NAVINDEX=ON -DVECGEOM_ROOT=ON -DVECGEOM_GDML=ON
       # 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

# build for DVECGEOM_GDML=ON (using the cvmfs ALICE software stack: TODO: convert to project/sft...)
with_GDML_ROOT:
   tags:
     - cvmfs
   image: cern/cc7-base
   stage: build
   before_script:
     - yum install environment-modules -y
     - yum install -y unzip autoconf automake make gcc git xerces-c-devel
     - eval "$(/cvmfs/alice.cern.ch/bin/alienv printenv ROOT::v6-28-04-9,CMake::v3.27.9-1)"
     - export VC_PATH=/cvmfs/alice.cern.ch/el7-x86_64/Packages/Vc/1.4.1-100
     - export CMAKE_PREFIX_PATH=${VC_PATH}:${CMAKE_PREFIX_PATH}
   script:
     - mkdir build && cd build
     - cmake .. -DVECGEOM_BUILTIN_VECCORE=ON -DVECGEOM_BACKEND=Vc -DVECGEOM_USE_NAVINDEX=OFF -DVECGEOM_ROOT=ON -DVECGEOM_GDML=ON
       # 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