.gitlab-ci.yml 2.16 KB
Newer Older
Philipp Arras's avatar
Philipp Arras committed
1
image: $CONTAINER_TEST_IMAGE
Jait Dixit's avatar
Jait Dixit committed
2

Philipp Arras's avatar
Philipp Arras committed
3
variables:
Philipp Arras's avatar
Philipp Arras committed
4
  CONTAINER_TEST_IMAGE: gitlab-registry.mpcdf.mpg.de/$CI_PROJECT_PATH:$CI_BUILD_REF_NAME
Martin Reinecke's avatar
Martin Reinecke committed
5
  OMP_NUM_THREADS: 1
Philipp Arras's avatar
Philipp Arras committed
6

Martin Reinecke's avatar
Martin Reinecke committed
7
stages:
Philipp Arras's avatar
Philipp Arras committed
8
  - build_docker
Philipp Arras's avatar
Philipp Arras committed
9
  - test
Philipp Arras's avatar
Philipp Arras committed
10
  - release
Philipp Arras's avatar
Philipp Arras committed
11
  - demo_runs
Philipp Arras's avatar
Change  
Philipp Arras committed
12

13
build_docker_from_scratch:
Martin Reinecke's avatar
Martin Reinecke committed
14
15
  only:
    - schedules
16
17
  image: docker:stable
  stage: build_docker
Philipp Arras's avatar
Fixup  
Philipp Arras committed
18
19
  before_script:
    - ls
20
21
22
23
24
  script:
    - docker login -u gitlab-ci-token -p $CI_BUILD_TOKEN gitlab-registry.mpcdf.mpg.de
    - docker build -t $CONTAINER_TEST_IMAGE --no-cache .
    - docker push $CONTAINER_TEST_IMAGE

Martin Reinecke's avatar
Martin Reinecke committed
25
26
27
28
29
30
31
32
33
34
35
build_docker_from_cache:
  except:
    - schedules
  image: docker:stable
  stage: build_docker
  before_script:
    - ls
  script:
    - docker login -u gitlab-ci-token -p $CI_BUILD_TOKEN gitlab-registry.mpcdf.mpg.de
    - docker build -t $CONTAINER_TEST_IMAGE .
    - docker push $CONTAINER_TEST_IMAGE
Philipp Arras's avatar
Philipp Arras committed
36

Martin Reinecke's avatar
Martin Reinecke committed
37
test_serial:
Philipp Arras's avatar
Philipp Arras committed
38
39
  stage: test
  script:
Martin Reinecke's avatar
5->6  
Martin Reinecke committed
40
    - pytest-3 -q --cov=nifty6 test
Martin Reinecke's avatar
Martin Reinecke committed
41
    - >
Martin Reinecke's avatar
stage 1  
Martin Reinecke committed
42
      python3 -m coverage report --omit "*plot*" | tee coverage.txt
Martin Reinecke's avatar
Martin Reinecke committed
43
    - >
Martin Reinecke's avatar
Martin Reinecke committed
44
      grep TOTAL coverage.txt | awk '{ print "TOTAL: "$4; }'
Martin Reinecke's avatar
Martin Reinecke committed
45

Philipp Arras's avatar
Philipp Arras committed
46
pages:
47
  stage: release
Philipp Arras's avatar
Philipp Arras committed
48
49
50
51
52
53
  script:
    - sh docs/generate.sh
    - mv docs/build/ public/
  artifacts:
    paths:
    - public
54
  only:
55
  - NIFTy_5
56

Philipp Arras's avatar
Philipp Arras committed
57
58

before_script:
Philipp Arras's avatar
Fixup  
Philipp Arras committed
59
  - python3 setup.py install --user -f
Philipp Arras's avatar
Philipp Arras committed
60
61

run_ipynb:
Philipp Arras's avatar
Philipp Arras committed
62
  stage: demo_runs
Philipp Arras's avatar
Philipp Arras committed
63
  script:
Philipp Arras's avatar
Philipp Arras committed
64
    - jupyter nbconvert --execute --ExecutePreprocessor.timeout=None demos/Wiener_Filter.ipynb
Philipp Arras's avatar
Philipp Arras committed
65
66
67
68
69

run_getting_started_1:
  stage: demo_runs
  script:
    - python3 demos/getting_started_1.py
Martin Reinecke's avatar
fixes  
Martin Reinecke committed
70
    - mpiexec -n 2 --bind-to none python3 demos/getting_started_1.py 2> /dev/null
Philipp Arras's avatar
Philipp Arras committed
71
72
73
  artifacts:
    paths:
      - '*.png'
Philipp Arras's avatar
Philipp Arras committed
74

Martin Reinecke's avatar
Martin Reinecke committed
75
76
77
78
run_getting_started_2:
  stage: demo_runs
  script:
    - python3 demos/getting_started_2.py
Martin Reinecke's avatar
fixes  
Martin Reinecke committed
79
    - mpiexec -n 2 --bind-to none python3 demos/getting_started_2.py 2> /dev/null
Philipp Arras's avatar
Philipp Arras committed
80
81
82
  artifacts:
    paths:
      - '*.png'
Martin Reinecke's avatar
Martin Reinecke committed
83
84
85
86
87

run_getting_started_3:
  stage: demo_runs
  script:
    - python3 demos/getting_started_3.py
Philipp Arras's avatar
Philipp Arras committed
88
89
90
  artifacts:
    paths:
      - '*.png'
Philipp Arras's avatar
Philipp Arras committed
91
92
93
94
95
96
97
98

run_bernoulli:
  stage: demo_runs
  script:
    - python3 demos/bernoulli_demo.py
  artifacts:
    paths:
      - '*.png'
99
100
101
102
103
104
105
106

run_curve_fitting:
  stage: demo_runs
  script:
    - python3 demos/polynomial_fit.py
  artifacts:
    paths:
      - '*.png'