xref: /petsc/.gitlab-ci.yml (revision e22b09666d7c3790ed2facc0d8b4137292e0560b)
1stages:
2  - test
3  - test-long
4variables:
5  GIT_STRATEGY: fetch
6  GIT_CLEAN_FLAGS: -ffdxq
7  PETSC_OPTIONS: -check_pointer_intensity 0 -error_output_stdout -nox -nox_warning -malloc_dump
8
9.test:
10  stage: test
11  image: jedbrown/mpich
12  variables:
13    GIT_DEPTH: 1
14  before_script:
15    - echo nproc=$(nproc)
16    - cat /proc/cpuinfo
17  script:
18    - ${PYTHON} ./configure --with-debugging=0 COPTFLAGS='-O -march=native' CXXOPTFLAGS='-O -march=native' FOPTFLAGS='-O -march=native' ${CONFIG_OPTS}
19    - make -j$(nproc) -l$(nproc) CFLAGS=-Werror
20    - make -j$(nproc) -l$(nproc) -f gmakefile.test PETSC_DIR=$PWD test search="${TEST_SEARCH}"
21  artifacts:
22    reports:
23      junit: arch-*/tests/testresults.xml
24
25mpich-cxx-py3:
26  extends: .test
27  variables:
28    PYTHON: python3
29    CONFIG_OPTS: --with-mpi-dir=/usr/local --with-clanguage=cxx --with-fc=0
30    TEST_SEARCH: snes_tutorials-ex48%
31
32uni-complex-float-int64:
33  extends: .test
34  variables:
35    PYTHON: python3
36    CONFIG_OPTS: <
37      --with-mpi=0
38      --with-scalar-type=complex --with-precision=single --with-64-bit-indices
39    TEST_SEARCH: ts_tutorials-ex11_adv_2d_quad_%
40
41c89-mlib-static-py2:
42  extends: .test
43  image: jedbrown/mpich:python2
44  variables:
45    PYTHON: python2
46    CONFIG_OPTS: <
47      --with-mpi-dir=/usr/local
48      --with-single-library=0 --with-shared-libraries=0 'CFLAGS=-std=c89 -pedantic -Wno-long-long -Wno-overlength-strings'
49    TEST_SEARCH: snes_tutorials-ex48%
50
51
52.mcs_test:
53  stage: test-long
54  script:
55    - git config user.email "petsc@gitlab.none"
56    - git config user.name "petsc gitlab-ci"
57    - git fetch origin master
58    - git merge -m "test" FETCH_HEAD
59    - ./config/examples/${TEST_ARCH}.py
60    - make
61    - make check
62    - make cleantest allgtests-tap TIMEOUT=300
63
64.linux_mcs_test:
65  extends: .mcs_test
66  tags:
67    - mcs-linux
68  before_script:
69    - hostname
70    - grep PRETTY_NAME /etc/os-release
71    - echo $(nproc)
72
73.freebsd_mcs_test:
74  extends: .mcs_test
75  tags:
76    - mcs-freebsd
77  before_script:
78    - hostname
79    - freebsd-version
80    - echo $(sysctl -n hw.ncpu)
81
82.osx_mcs_test:
83  extends: .mcs_test
84  tags:
85    - mcs-osx
86  variables:
87    PETSC_OPTIONS: -check_pointer_intensity 0 -error_output_stdout -nox -nox_warning -malloc_dump -saws_port_auto_select -saws_port_auto_select_silent -vecscatter_mpi1 false -options_left false
88  before_script:
89    - hostname
90    - sw_vers -productVersion
91    - echo $(sysctl -n hw.ncpu)
92
93.opensolaris_mcs_test:
94  extends: .mcs_test
95  tags:
96    - mcs-opensolaris
97  before_script:
98    - hostname
99    - uname -a
100    - echo $(nproc)
101
102linux-gcc-complex-opt:
103  extends: .linux_mcs_test
104  variables:
105    TEST_ARCH: arch-ci-linux-gcc-complex-opt
106
107linux-gcc-pkgs-opt:
108  extends: .linux_mcs_test
109  variables:
110    TEST_ARCH: arch-ci-linux-gcc-pkgs-opt
111
112linux-gcc-quad-64idx-dbg:
113  extends: .linux_mcs_test
114  variables:
115    TEST_ARCH: arch-ci-linux-gcc-quad-64idx-dbg
116
117freebsd-c-single-opt:
118  extends: .freebsd_mcs_test
119  variables:
120    TEST_ARCH: arch-ci-freebsd-c-single-opt
121
122freebsd-cxx-cmplx-64idx-dbg:
123  extends: .freebsd_mcs_test
124  variables:
125    TEST_ARCH: arch-ci-freebsd-cxx-cmplx-64idx-dbg
126
127osx-cxx-pkgs-opt:
128  extends: .osx_mcs_test
129  variables:
130    TEST_ARCH: arch-ci-osx-cxx-pkgs-opt
131
132opensolaris-cmplx-pkgs-dbg:
133  extends: .opensolaris_mcs_test
134  variables:
135    TEST_ARCH: arch-ci-opensolaris-cmplx-pkgs-dbg
136