.gitlab-ci.yml 1.28 KB
Newer Older
Tobias Winchen's avatar
Tobias Winchen committed
1
2
3
4
5
stages:
    - build
    - test
    - deploy

6
image: eddinfra0:5000/eddbase:latest
Tobias Winchen's avatar
Tobias Winchen committed
7

8
9
10
11
12
13
variables:
  PIP_CACHE_DIR: "$CI_PROJECT_DIR/.cache/pip"
cache:
  paths:
    - .cache/pip
    - .cache/apt
Tobias Winchen's avatar
Tobias Winchen committed
14
15
16
17

before_script:
    - git submodule init
    - git submodule update
18
    - apt-get -y update && apt-get install -y python3-pip python3-graphviz doxygen
Tobias Winchen's avatar
Tobias Winchen committed
19
    - pip3 install Sphinx==3.4.3 sphinxcontrib-apidoc==0.3.0 sphinx-rtd-theme==0.5.1 recommonmark==0.7.1 \
Tobias Winchen's avatar
Tobias Winchen committed
20
        sphinxcontrib-napoleon==0.7 sphinx-autoapi==1.7.0 breathe==4.26.1 exhale==0.2.3
Tobias Winchen's avatar
Tobias Winchen committed
21
22
23
24
25
26
27
28
29
30
31
32

build_cuda:
    stage: build
    script:
        - mkdir build
        - cd build
        - cmake .. -DPSRDADA_INCLUDE_DIR=/usr/local/include/psrdada -DENABLE_CUDA=True
        - make -j8
    artifacts:
        paths:
            - build

Tobias Winchen's avatar
Tobias Winchen committed
33

Tobias Winchen's avatar
Tobias Winchen committed
34
35
36
37
run_tests:
    stage: test
    script:
        - cd build
Tobias Winchen's avatar
Tobias Winchen committed
38
        - make CTEST_OUTPUT_ON_FAILURE=1 test
Tobias Winchen's avatar
Tobias Winchen committed
39

Tobias Winchen's avatar
Tobias Winchen committed
40
41
42
43
make_doc:
    stage: test
    script:
        - cd build
Tobias Winchen's avatar
Tobias Winchen committed
44
        - export LC_CTYPE=en_US.UTF-8
Tobias Winchen's avatar
Tobias Winchen committed
45
46
47
48
        - make doc
    artifacts:
        paths:
            - build
Tobias Winchen's avatar
Tobias Winchen committed
49

Tobias Winchen's avatar
Tobias Winchen committed
50
51
52
53
54
pages:
  stage: deploy
  dependencies:
    - make_doc
  script:
55
56
    - mkdir public
    - mv build/doc/* public/
Tobias Winchen's avatar
Tobias Winchen committed
57
58
59
60
  artifacts:
    paths:
      - public
  only:
61
    - devel@mpifr-bdg/psrdada_cpp
62
63
    - cicd@mpifr-bdg/psrdada_cpp
    - doc@mpifr-bdg/psrdada_cpp
Tobias Winchen's avatar
Tobias Winchen committed
64
65
66
67