.gitlab-ci.yml 4.33 KB
Newer Older
1
stages:
Daniel Wortmann's avatar
Daniel Wortmann committed
2 3
   - build
   - test
Daniel Wortmann's avatar
Daniel Wortmann committed
4
   - html
Daniel Wortmann's avatar
Daniel Wortmann committed
5 6
   - deploy

7

Daniel Wortmann's avatar
Daniel Wortmann committed
8
build-gfortran-hdf5:
9
  image: iffregistry.fz-juelich.de/fleur/fleur:latest
Daniel Wortmann's avatar
Daniel Wortmann committed
10
  stage: build
11
  artifacts:
Daniel Wortmann's avatar
Daniel Wortmann committed
12 13
     paths:
       - build
Daniel Wortmann's avatar
Daniel Wortmann committed
14
     expire_in: 1h
Daniel Wortmann's avatar
Daniel Wortmann committed
15
  script:
16
    - cd /builds/fleur/fleur; ./configure.sh GITLAB; cd build; make -j 4
17 18 19 20
#  only:
#    - schedules
#    - triggers
#    - web
21

22
test-gfortran-hdf5:
23
  image: iffregistry.fz-juelich.de/fleur/fleur:latest
Daniel Wortmann's avatar
Daniel Wortmann committed
24 25
  stage: test
  script:
Daniel Wortmann's avatar
Daniel Wortmann committed
26
    - ulimit -s unlimited ;export juDFT_MPI="mpirun -n 2 --allow-run-as-root ";export OMP_NUM_THREADS=4;cd /builds/fleur/fleur/build;ctest
27
  artifacts:
28
    when: on_failure
29
    paths:
30
      - build/Testing/failed
31
      - build/Testing/test.oldlogs
32 33 34 35
#  only:
#    - schedules
#    - triggers
#    - web
Daniel Wortmann's avatar
Daniel Wortmann committed
36

37
pages:
38
  image: iffregistry.fz-juelich.de/fleur/fleur:latest
39
  stage: deploy
Daniel Wortmann's avatar
Daniel Wortmann committed
40
  script:
Daniel Wortmann's avatar
Daniel Wortmann committed
41
    - echo "HTML should be ready from cache..."
Daniel Wortmann's avatar
Daniel Wortmann committed
42
    - mv /builds/fleur/fleur/docs/Docu_main.html /builds/fleur/fleur/public/index.html
Daniel Wortmann's avatar
Daniel Wortmann committed
43
  environment: 
Daniel Wortmann's avatar
Daniel Wortmann committed
44
     name: HTML-Pages
Daniel Wortmann's avatar
Daniel Wortmann committed
45 46 47 48
     url: https://fleur.iffgit.fz-juelich.de/fleur
  artifacts:
    paths:
      - public
Daniel Wortmann's avatar
Daniel Wortmann committed
49 50 51 52
  only:
    - schedules
    - triggers
    - web
Daniel Wortmann's avatar
Daniel Wortmann committed
53 54 55 56
  
doxygen:
  image: iffregistry.fz-juelich.de/fleur/fleur:latest
  stage: html
57 58
  script:
    - cd /builds/fleur/fleur/build ; make doc
Daniel Wortmann's avatar
Daniel Wortmann committed
59
    - mkdir ../public
Daniel Wortmann's avatar
Daniel Wortmann committed
60
    - mv docs/html/ ../public/doxygen
61 62 63
  artifacts:
    paths:
      - public
64 65 66
      - build/fleur
      - build/fleur_MPI
      - build/inpgen
67 68 69
  only:
    - schedules
    - triggers
70 71
    - web

72

73 74
build-pgi:
  image: iffregistry.fz-juelich.de/fleur/fleur:pgi
Daniel Wortmann's avatar
Daniel Wortmann committed
75
  stage: build
76
  artifacts: 
77 78
     paths:
       - build.pgi
79
     expire_in: 1h
80 81
  script:
    - cd /builds/fleur/fleur; ./configure.sh -l pgi ; cd build.pgi; make 
Daniel Wortmann's avatar
Daniel Wortmann committed
82
  allow_failure: true
83 84 85 86
  only:
    - schedules
    - triggers
    - web
87
 
88
    
89 90
test-pgi:
  image: iffregistry.fz-juelich.de/fleur/fleur:pgi
Daniel Wortmann's avatar
Daniel Wortmann committed
91 92 93
  stage: test
  dependencies:
    - build-pgi
94 95
  script:
    - cd /builds/fleur/fleur/build.pgi;ctest
Daniel Wortmann's avatar
Daniel Wortmann committed
96
  allow_failure: true
97 98 99 100
  only:
     - schedules
     - web
     - triggers
101
     
102 103 104

build-intel-static:
  image: iffregistry.fz-juelich.de/fleur/fleur:intel-static
Daniel Wortmann's avatar
Daniel Wortmann committed
105
  stage: build
106
  artifacts: 
107 108
     paths:
       - build.intel-static
109
     expire_in: 1h
110 111 112 113 114 115 116 117 118
  script:
    - set +e && source compilervars.sh intel64 && set -e ; ulimit -s unlimited
    - cd /builds/fleur/fleur; ./configure.sh -l intel-static INTEL_DOCKER_STATIC ; cd build.intel-static; make -j 4
  artifacts:
    when: on_success
    paths:
    - build.intel-static/fleur
    - build.intel-static/fleur_MPI
    - build.intel-static/inpgen
Daniel Wortmann's avatar
Daniel Wortmann committed
119
  allow_failure: true
120 121 122 123 124 125
  only:
    - schedules
    - triggers
    - web
 

126
build-intel:
Daniel Wortmann's avatar
Daniel Wortmann committed
127
  image: iffregistry.fz-juelich.de/fleur/fleur:intel-static
Daniel Wortmann's avatar
Daniel Wortmann committed
128
  stage: build
129
  artifacts: 
130
     paths:
Daniel Wortmann's avatar
Daniel Wortmann committed
131
       - build.intel.debug
132
     expire_in: 1h
133
  script:
134
    - set +e && source compilervars.sh intel64 && set -e ; ulimit -s unlimited
Daniel Wortmann's avatar
Daniel Wortmann committed
135
    - cd /builds/fleur/fleur; CC=gcc FC=mpiifort  FLEUR_LIBRARIES="-lmkl_scalapack_lp64;-lmkl_blacs_intelmpi_lp64" ./configure.sh -t -d -l intel INTEL_MPI ; cd build.intel.debug; make -j 4
Daniel Wortmann's avatar
Daniel Wortmann committed
136
  allow_failure: true
137 138 139 140
  only:
    - schedules
    - triggers
    - web
141 142 143
 
    
test-intel:
Daniel Wortmann's avatar
Daniel Wortmann committed
144
  image: iffregistry.fz-juelich.de/fleur/fleur:intel-static
Daniel Wortmann's avatar
Daniel Wortmann committed
145 146 147
  stage: test
  dependencies:
     - build-intel
148
  script:
149
    - set +e && source compilervars.sh intel64 && set -e; ulimit -s unlimited
Daniel Wortmann's avatar
Daniel Wortmann committed
150
    - cd /builds/fleur/fleur/build.intel.debug;ctest
Daniel Wortmann's avatar
Daniel Wortmann committed
151
  allow_failure: true
152 153 154
  artifacts:
    when: on_failure
    paths:
Daniel Wortmann's avatar
Daniel Wortmann committed
155 156
      - build.intel.debug/Testing/failed
      - build.intel.debug/Testing/test.oldlogs
157 158 159 160
  only:
     - schedules
     - web
     - triggers
161 162 163

gfortran-coverage:
  image: iffregistry.fz-juelich.de/fleur/fleur:latest
Daniel Wortmann's avatar
Daniel Wortmann committed
164
  stage: html
165
  script:
166
      - cd /builds/fleur/fleur; ./configure.sh -l coverage -flags --coverage GITLAB; cd build.coverage; make -j 4
167
      - lcov --capture --initial -d CMakeFiles -o baseline.info
Daniel Wortmann's avatar
Daniel Wortmann committed
168
      - ulimit -s unlimited ;export juDFT_MPI="mpirun -n 2 --allow-run-as-root ";ctest
169 170 171
      - lcov --capture  -d CMakeFiles -o after.info 
      - lcov --add-tracefile baseline.info --add-tracefile after.info -o combined.info
      - genhtml combined.info --output-directory html_out
Daniel Wortmann's avatar
Daniel Wortmann committed
172
      - mkdir ../public;mv html_out ../public/coverage_html
Daniel Wortmann's avatar
Daniel Wortmann committed
173
  allow_failure: true
174 175 176
  artifacts:
    paths:
      - public 
Daniel Wortmann's avatar
Daniel Wortmann committed
177 178 179
  environment:
    name: Coverage
    url: https://fleur.iffgit.fz-juelich.de/fleur/coverage_html
180 181
  only:
      - web
182
      - schedules