xref: /petsc/.gitlab-ci.yml (revision 1702e2853844cb8832bb226e8392f3714e39654a)
1stages:
2  - test
3  - ci-status
4
5variables:
6  GIT_STRATEGY: fetch
7  GIT_DEPTH: 1
8
9.test:
10  stage: test
11  image: jedbrown/mpich
12  before_script:
13    - echo nproc=$(nproc)
14    - cat /proc/cpuinfo
15  script:
16    - python3 ./configure --with-debugging=0 COPTFLAGS='-O -march=native' CXXOPTFLAGS='-O -march=native' FOPTFLAGS='-O -march=native' ${CONFIG_OPTS}
17    - make -j$(nproc) -l$(nproc)
18    - make -j$(nproc) -l$(nproc) -f gmakefile test search="${TEST_SEARCH}"
19
20mpich:
21  extends: .test
22  variables:
23    CONFIG_OPTS: --with-mpi-dir=/usr/local --with-fc=0
24    TEST_SEARCH: snes_tutorials-ex48%
25
26uni-complex-float-int64:
27  extends: .test
28  variables:
29    CONFIG_OPTS: <
30      --with-mpi=0
31      --with-scalar-type=complex --with-precision=single --with-64-bit-indices
32    TEST_SEARCH: ts_tutorials-ex11_adv_2d_quad_%
33
34.mcs_test:
35  stage: test
36  script:
37    - ./config/examples/${TEST_ARCH}.py
38    - make
39    - make check
40    - make cleantest allgtests-tap TIMEOUT=300
41
42.linux_mcs_test:
43  extends: .mcs_test
44  tags:
45    - mcs
46    - linux
47  before_script:
48    - hostname
49    - grep PRETTY_NAME /etc/os-release
50    - echo $(nproc)
51
52.freebsd_mcs_test:
53  extends: .mcs_test
54  tags:
55    - mcs
56    - freebsd
57  before_script:
58    - hostname
59    - freebsd-version
60    - echo $(sysctl -n hw.ncpu)
61
62linux-gcc-complex-opt:
63  extends: .linux_mcs_test
64  variables:
65    TEST_ARCH: arch-jenkins-linux-gcc-complex-opt
66
67linux-gcc-pkgs-opt:
68  extends: .linux_mcs_test
69  variables:
70    TEST_ARCH: arch-jenkins-linux-gcc-pkgs-opt
71
72linux-gcc-quad-64idx-dbg:
73  extends: .linux_mcs_test
74  variables:
75    TEST_ARCH: arch-jenkins-linux-gcc-quad-64idx-dbg
76
77freebsd-c-single-opt:
78  extends: .freebsd_mcs_test
79  variables:
80    TEST_ARCH: arch-jenkins-freebsd-c-single-opt
81
82freebsd-cxx-cmplx-64idx-dbg:
83  extends: .freebsd_mcs_test
84  stage: test
85  variables:
86    TEST_ARCH: arch-jenkins-freebsd-cxx-cmplx-64idx-dbg
87
88.status:
89  stage: ci-status
90  image: jedbrown/alpine-curl
91  script:
92    - BUILD_KEY=push BITBUCKET_NAMESPACE=petsc ./.gitlab-build-status.sh
93
94success:
95  extends: .status
96  variables:
97    BUILD_STATUS: passed
98  when: on_success
99
100failure:
101  extends: .status
102  variables:
103    BUILD_STATUS: failed
104  when: on_failure
105