xref: /petsc/.gitlab-ci.yml (revision ce0938271019e00a5a28287f06e4473afba830c6)
1#
2# stage-1 take only a few minutes and generally run on the cloud; they do not run the full test suite or external packages.
3#
4# stage-2 runs on MCS systems and may take 10 to 15 minutes. They run the full test suite but with limited mixture of external packages
5#
6# stage-3 runs on MCS systems and may take an hour or more. They run the full test suite and heavily test external packages, utilize valgrind etc
7#         (not yet implemented)
8#
9# The stage-(n) tests are only started if all of the stage-(n-1) tests run without error
10#   You can limit the testing by using the variable STAGE with value 1 or 2
11#
12# By default the test branch is merged to master before testing. (not yet implemented)
13#   You can limite this by using the variable MERGETOMASTER with value 0 (not yet implemented)
14#
15
16stages:
17  - stage-1
18  - stage-2
19  - stage-3
20variables:
21  GIT_STRATEGY: fetch
22  GIT_CLEAN_FLAGS: -ffdxq
23  PETSC_OPTIONS: -check_pointer_intensity 0 -error_output_stdout -nox -nox_warning -malloc_dump
24  TIMEOUT: 600
25
26#
27# The most basic template that most tests will expand upon. In particular merge requests and branch pushes DO NOT trigger testing
28#
29
30.test:
31  only:
32    refs:
33#     Set with CI/CD Shedules - New Schedule
34      - schedules
35#     Set with CI/CD Pipelines - Run Pipeline
36      - web
37  dependencies: []
38
39#
40#  This provides the basic order of operations and options template for cloud based stage 1 tests.
41#  Not all test-short need to follow this template but most will.
42#
43
44.stage-1:
45  extends: .test
46  stage: stage-1
47  image: jedbrown/mpich-ccache
48  tags:
49    - docker
50  before_script:
51    - date
52    - echo nproc=$(nproc)
53    - cat /proc/cpuinfo
54    - export CCACHE_COMPILERCHECK=content
55    - export CCACHE_DIR=$(pwd)/.ccache
56    - ccache --show-stats
57    - ccache --zero-stats
58    - echo CONFIG_OPTS=$(CONFIG_OPTS)
59  script:
60    - ${PYTHON} ./configure --with-debugging=0 COPTFLAGS='-O -march=native' CXXOPTFLAGS='-O -march=native' FOPTFLAGS='-O -march=native' ${CONFIG_OPTS}
61    - make CFLAGS=-Werror CXXFLAGS=-Werror FFLAGS=-Werror
62    - make CFLAGS=-Werror CXXFLAGS=-Werror FFLAGS=-Werror allgtests-tap search="${TEST_SEARCH}" TIMEOUT=${TIMEOUT}
63  after_script:
64    - date
65    - CCACHE_DIR=$(pwd)/.ccache ccache --show-stats
66  artifacts:
67    reports:
68      junit: arch-*/tests/testresults.xml
69    name: "$CI_JOB_NAME"
70    when: always
71    paths:
72    - arch-*/lib/petsc/conf/*.log
73    - arch-*/tests/testresults.xml
74    - arch-*/tests/test_*_tap.log
75    - arch-*/tests/test_*_err.log
76    expire_in: 4 days
77  cache:
78    paths:
79      - .ccache/
80    key: "${CI_JOB_NAME}"
81
82#
83# The following tests run on the cloud as part of stage-1.
84#
85
86mpich-cxx-py3:
87  extends: .stage-1
88  variables:
89    PYTHON: python3
90    CONFIG_OPTS: --with-mpi-dir=/usr/local --with-clanguage=cxx --with-fc=0
91    TEST_SEARCH: snes_tutorials-ex48%
92
93uni-complex-float-int64:
94  extends: .stage-1
95  variables:
96    PYTHON: python3
97    CONFIG_OPTS: --with-mpi=0 --with-scalar-type=complex --with-precision=single --with-64-bit-indices
98    TEST_SEARCH: ts_tutorials-ex11_adv_2d_quad_%
99
100c89-mlib-static-py2:
101  extends: .stage-1
102  image: jedbrown/mpich-ccache:python2
103  variables:
104    PYTHON: python2
105    CONFIG_OPTS: --with-mpi-dir=/usr/local --with-single-library=0 --with-shared-libraries=0 CFLAGS=-std=c89
106    TEST_SEARCH: snes_tutorials-ex19%
107
108checksource:
109  extends: .test
110  image: jedbrown/mpich-ccache
111  stage: stage-1
112  script:
113    - python3 ./configure --with-mpi=0 --with-fc=0 --with-cxx=0
114    - make checkbadSource SHELL=bash
115    - make check_output SHELL=bash
116
117#
118# This provides the basic order of operations and options template for stage-2,3 tests.
119# Not all stage-2,3 need to follow this template, but most will.
120#
121.stage-23:
122  extends: .test
123  script:
124    - printf "PATH:$PATH\n"
125    - printf "PETSC_OPTIONS:$PETSC_OPTIONS\n"
126    - printf "./config/examples/${TEST_ARCH}.py\n"
127    - cat ./config/examples/${TEST_ARCH}.py
128    - ./config/examples/${TEST_ARCH}.py
129    - make CFLAGS=${MAKE_CFLAGS} CXXFLAGS=${MAKE_CXXFLAGS} FFLAGS=${MAKE_FFLAGS}
130    - make CFLAGS=${MAKE_CFLAGS} CXXFLAGS=${MAKE_CXXFLAGS} FFLAGS=${MAKE_FFLAGS} check
131    - make updatedatafiles
132    - if [ -z ${DISABLE_TESTS+x} ]; then make CFLAGS=${MAKE_CFLAGS} CXXFLAGS=${MAKE_CXXFLAGS} FFLAGS=${MAKE_FFLAGS} cleantest allgtests-tap TIMEOUT=${TIMEOUT}; fi
133  artifacts:
134    reports:
135      junit: ${TEST_ARCH}/tests/testresults.xml
136    name: "$CI_JOB_NAME"
137    when: always
138    paths:
139    - ${TEST_ARCH}/lib/petsc/conf/*.log
140    - ${TEST_ARCH}/tests/testresults.xml
141    - ${TEST_ARCH}/tests/test_${TEST_ARCH}_tap.log
142    - ${TEST_ARCH}/tests/test_${TEST_ARCH}_err.log
143    expire_in: 4 days
144  variables:
145    OPENBLAS_NUM_THREADS: 1
146
147.stage-2:
148  extends: .stage-23
149  stage: stage-2
150  only:
151    variables:
152      - $STAGE != "1"
153      - $STAGE != "3"
154
155.stage-3:
156  extends: .stage-23
157  stage: stage-3
158  only:
159    variables:
160      - $STAGE != "1"
161      - $STAGE != "2"
162
163#
164# The following provide templates for various OSes for pre/post info
165#
166
167.linux_test_noflags:
168  before_script:
169    - date
170    - hostname
171    - grep PRETTY_NAME /etc/os-release
172    - echo $(nproc)
173    - ccache --zero-stats
174    - if [ ! -z ${LOAD_MODULES+x} ]; then module load ${LOAD_MODULES}; module list; fi
175  after_script:
176    - date
177    - ccache --show-stats
178
179.linux_test:
180  extends: .linux_test_noflags
181  variables:
182    MAKE_CFLAGS: -Werror
183    MAKE_CXXFLAGS: -Werror
184    MAKE_FFLAGS: -Werror
185
186.freebsd_test:
187  variables:
188    MAKE_CFLAGS: -Werror
189    MAKE_CXXFLAGS: -Werror
190    MAKE_FFLAGS: -Werror
191  before_script:
192    - date
193    - hostname
194    - freebsd-version
195    - echo $(sysctl -n hw.ncpu)
196    - ccache --zero-stats
197  after_script:
198    - date
199    - ccache --show-stats
200
201.osx_test:
202  variables:
203    MAKE_CFLAGS: -Werror
204    MAKE_CXXFLAGS: -Werror
205    MAKE_FFLAGS: -Werror
206  before_script:
207    - date
208    - hostname
209    - sw_vers -productVersion
210    - echo $(sysctl -n hw.ncpu)
211    - ccache --zero-stats
212  after_script:
213    - date
214    - ccache --show-stats
215
216.opensolaris_test:
217  before_script:
218    - date
219    - hostname
220    - uname -a
221    - echo $(nproc)
222  after_script:
223    - date
224
225.mswin_test:
226  before_script:
227    - date
228    - hostname
229    - uname -a
230    - echo $(nproc)
231  after_script:
232    - date
233
234#
235# The following tests run as part of stage-2.
236#
237# The tags variable used in the tests below connects the particular test with the runners
238# listed on the left hand side of https://gitlab.com/petsc/petsc/-/settings/ci_cd.
239# For example the test linux-gcc-complex-opt  any runner that has the tag 'name:pj02'
240# (in a blue box beneath it)
241#
242
243linux-gcc-complex-opt:
244  extends:
245    - .stage-2
246    - .linux_test
247  tags:
248    - linux-stage2
249    - ci:2
250  variables:
251    TEST_ARCH: arch-ci-linux-gcc-complex-opt
252
253linux-gcc-pkgs-opt:
254  extends:
255    - .stage-2
256    - .linux_test
257  tags:
258    - linux-stage2
259  variables:
260    TEST_ARCH: arch-ci-linux-gcc-pkgs-opt
261
262linux-gcc-quad-64idx-dbg:
263  extends:
264    - .stage-2
265    - .linux_test
266  tags:
267    - linux-stage2
268  variables:
269    TEST_ARCH: arch-ci-linux-gcc-quad-64idx-dbg
270
271linux-cuda-double:
272  extends:
273    - .stage-2
274    - .linux_test
275  tags:
276    - gpu:nvidia, os:linux, name:p1
277  variables:
278    PETSC_OPTIONS: -check_pointer_intensity 0 -error_output_stdout -nox -nox_warning -malloc_dump -cuda_initialize 0
279    TEST_ARCH: arch-ci-linux-cuda-double
280
281freebsd-c-single-opt:
282  extends:
283    - .stage-2
284    - .freebsd_test
285  tags:
286    - os:fbsd
287  variables:
288    TEST_ARCH: arch-ci-freebsd-c-single-opt
289
290freebsd-cxx-cmplx-64idx-dbg:
291  extends:
292    - .stage-2
293    - .freebsd_test
294  tags:
295    - os:fbsd
296  variables:
297    TEST_ARCH: arch-ci-freebsd-cxx-cmplx-64idx-dbg
298
299opensolaris-misc:
300  extends:
301    - .stage-3
302    - .opensolaris_test
303  tags:
304    - name:n-gage
305  variables:
306    TEST_ARCH: arch-ci-opensolaris-misc
307
308osx-cxx-pkgs-opt:
309  extends:
310    - .stage-3
311    - .osx_test
312  tags:
313    - os:macos
314  variables:
315    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
316    TEST_ARCH: arch-ci-osx-cxx-pkgs-opt
317
318mswin-uni:
319  extends:
320    - .stage-2
321    - .mswin_test
322  tags:
323    - name:ps5-2
324  variables:
325    TEST_ARCH: arch-ci-mswin-uni
326
327mswin-gnu:
328  extends:
329    - .stage-2
330    - .mswin_test
331  tags:
332    - name:ps5-3
333  variables:
334    TEST_ARCH: arch-ci-mswin-gnu
335    MAKE_CFLAGS: -Werror
336    MAKE_CXXFLAGS: -Werror
337    MAKE_FFLAGS: -Werror
338    DISABLE_TESTS: 1
339  artifacts:
340    reports:
341    paths:
342    - arch-*/lib/petsc/conf/*.log
343    expire_in: 4 days
344
345#
346# The following tests run as part of stage-3.
347#
348
349mswin-intel-cxx-cmplx:
350  extends:
351    - .stage-3
352    - .mswin_test
353  tags:
354    - name:ps5
355  variables:
356    TEST_ARCH: arch-ci-mswin-intel-cxx-cmplx
357
358mswin-intel:
359  extends:
360    - .stage-3
361    - .mswin_test
362  tags:
363    - name:ps5
364  variables:
365    TEST_ARCH: arch-ci-mswin-intel
366
367mswin-opt-impi:
368  extends:
369    - .stage-3
370    - .mswin_test
371  tags:
372    - name:ps4
373  variables:
374    TEST_ARCH: arch-ci-mswin-opt-impi
375
376opensolaris-cmplx-pkgs-dbg:
377  extends:
378    - .stage-3
379    - .opensolaris_test
380  tags:
381    - name:n-gage
382  variables:
383    TEST_ARCH: arch-ci-opensolaris-cmplx-pkgs-dbg
384
385opensolaris-pkgs-opt:
386  extends:
387    - .stage-3
388    - .opensolaris_test
389  tags:
390    - name:n-gage
391  variables:
392    TEST_ARCH: arch-ci-opensolaris-pkgs-opt
393
394freebsd-pkgs-opt:
395  extends:
396    - .stage-3
397    - .freebsd_test
398  tags:
399    - os:fbsd
400  variables:
401    TEST_ARCH: arch-ci-freebsd-pkgs-opt
402
403freebsd-cxx-cmplx-pkgs-dbg:
404  extends:
405    - .stage-3
406    - .freebsd_test
407  tags:
408    - os:fbsd
409  variables:
410    TEST_ARCH: arch-ci-freebsd-cxx-cmplx-pkgs-dbg
411
412freebsd-cxx-pkgs-opt:
413  extends:
414    - .stage-3
415    - .freebsd_test
416  tags:
417    - os:fbsd
418  variables:
419    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
420    TEST_ARCH: arch-ci-freebsd-cxx-pkgs-opt
421
422osx-cxx-cmplx-pkgs-dbg:
423  extends:
424    - .stage-3
425    - .osx_test
426  tags:
427    - os:macos
428  variables:
429    TEST_ARCH: arch-ci-osx-cxx-cmplx-pkgs-dbg
430
431osx-dbg:
432  extends:
433    - .stage-3
434    - .osx_test
435  tags:
436    - os:macos
437  variables:
438    TEST_ARCH: arch-ci-osx-dbg
439
440osx-xsdk-opt:
441  extends:
442    - .stage-3
443    - .osx_test
444  tags:
445    - os:macos
446  variables:
447    TEST_ARCH: arch-ci-osx-xsdk-opt
448
449linux-cmplx-gcov:
450  extends:
451    - .stage-3
452    - .linux_test
453  tags:
454    - mcs-nfs
455  variables:
456    PETSC_OPTIONS: -check_pointer_intensity 0 -error_output_stdout -nox -nox_warning -malloc_dump -vecscatter_mpi1 false -options_left false
457    TEST_ARCH: arch-ci-linux-cmplx-gcov
458  after_script:
459    - make gcov
460  artifacts:
461    when: always
462    paths:
463    - ${TEST_ARCH}/lib/petsc/conf/*.log
464    - ${TEST_ARCH}/tests/testresults.xml
465    - ${TEST_ARCH}/tests/test_${TEST_ARCH}_tap.log
466    - ${TEST_ARCH}/tests/test_${TEST_ARCH}_err.log
467    - ${TEST_ARCH}/gcov.tar.gz
468    expire_in: 4 days
469
470
471linux-cmplx-single:
472  extends:
473    - .stage-3
474    - .linux_test
475  tags:
476    - name:si
477  variables:
478    TEST_ARCH: arch-ci-linux-cmplx-single
479
480linux-without-fc:
481  extends:
482    - .stage-3
483    - .linux_test
484  tags:
485    - name:si
486  variables:
487    TEST_ARCH: arch-ci-linux-without-fc
488
489linux-clang-avx:
490  extends:
491    - .stage-3
492    - .linux_test
493  tags:
494    - name:isdp001
495  variables:
496    TEST_ARCH: arch-ci-linux-clang-avx
497
498linux-gcc-cxx-avx2:
499  extends:
500    - .stage-3
501    - .linux_test
502  tags:
503    - name:isdp001
504  variables:
505    TEST_ARCH: arch-ci-linux-gcc-cxx-avx2
506
507linux-knl:
508  extends:
509    - .stage-3
510    - .linux_test
511  tags:
512    - name:isdp001
513  variables:
514    TEST_ARCH: arch-ci-linux-knl
515
516linux-c-exodus-dbg:
517  extends:
518    - .stage-3
519    - .linux_test
520  tags:
521    - gpu:nvidia, os:linux
522  variables:
523    PETSC_OPTIONS: -check_pointer_intensity 0 -error_output_stdout -nox -nox_warning -malloc_dump -cuda_initialize 0
524    TEST_ARCH: arch-ci-linux-c-exodus-dbg
525
526linux-cuda-single:
527  extends:
528    - .stage-3
529    - .linux_test
530  tags:
531    - gpu:nvidia, os:linux
532  variables:
533    PETSC_OPTIONS: -check_pointer_intensity 0 -error_output_stdout -nox -nox_warning -malloc_dump -cuda_initialize 0
534    TEST_ARCH: arch-ci-linux-cuda-single
535
536linux-viennacl:
537  extends:
538    - .stage-3
539    - .linux_test
540  tags:
541    - gpu:nvidia, os:linux, name:frog
542  variables:
543    PETSC_OPTIONS: -check_pointer_intensity 0 -error_output_stdout -nox -nox_warning -malloc_dump -cuda_initialize 0
544    TEST_ARCH: arch-ci-linux-viennacl
545
546linux-opt-misc:
547  extends:
548    - .stage-3
549    - .linux_test
550  tags:
551    - gce-nfs
552  variables:
553    TEST_ARCH: arch-ci-linux-opt-misc
554
555linux-pkgs-cxx-mlib:
556  extends:
557    - .stage-3
558    - .linux_test
559  tags:
560    - name:pj02
561  variables:
562    PETSC_OPTIONS: -check_pointer_intensity 0 -error_output_stdout -nox -nox_warning -malloc_dump -saws_port_auto_select -saws_port_auto_select_silent
563    TEST_ARCH: arch-ci-linux-pkgs-cxx-mlib
564
565linux-cxx-cmplx-pkgs-64idx:
566  extends:
567    - .stage-3
568    - .linux_test
569  tags:
570    - name:pj01
571  variables:
572    TEST_ARCH: arch-ci-linux-cxx-cmplx-pkgs-64idx
573
574linux-pkgs-dbg-ftn-interfaces:
575  extends:
576    - .stage-3
577    - .linux_test
578  tags:
579    - name:pj02
580  variables:
581    TEST_ARCH: arch-ci-linux-pkgs-dbg-ftn-interfaces
582
583linux-analyzer:
584  extends:
585    - .stage-3
586    - .linux_test
587  tags:
588    - mcs-nfs
589  variables:
590    TEST_ARCH: arch-ci-linux-analyzer
591
592linux-gcc-ifc-cmplx:
593  extends:
594    - .stage-3
595    - .linux_test
596  tags:
597    - mcs-nfs
598  variables:
599    TEST_ARCH: arch-ci-linux-gcc-ifc-cmplx
600
601linux-gcov:
602  extends:
603    - .stage-3
604    - .linux_test
605  tags:
606    - mcs-nfs
607  variables:
608    TEST_ARCH: arch-ci-linux-gcov
609  after_script:
610    - make gcov
611  artifacts:
612    when: always
613    paths:
614    - ${TEST_ARCH}/lib/petsc/conf/*.log
615    - ${TEST_ARCH}/tests/testresults.xml
616    - ${TEST_ARCH}/tests/test_${TEST_ARCH}_tap.log
617    - ${TEST_ARCH}/tests/test_${TEST_ARCH}_err.log
618    - ${TEST_ARCH}/gcov.tar.gz
619    expire_in: 4 days
620
621
622linux-ILP64:
623  extends:
624    - .stage-3
625    - .linux_test
626  tags:
627    - gce-nfs
628  variables:
629    TEST_ARCH: arch-ci-linux-ILP64
630
631linux-matlab-ilp64-gcov:
632  extends:
633    - .stage-3
634    - .linux_test
635  tags:
636    - mcs-nfs
637  variables:
638    TEST_ARCH: arch-ci-linux-matlab-ilp64-gcov
639  after_script:
640    - make gcov
641  artifacts:
642    when: always
643    paths:
644    - ${TEST_ARCH}/lib/petsc/conf/*.log
645    - ${TEST_ARCH}/tests/testresults.xml
646    - ${TEST_ARCH}/tests/test_${TEST_ARCH}_tap.log
647    - ${TEST_ARCH}/tests/test_${TEST_ARCH}_err.log
648    - ${TEST_ARCH}/gcov.tar.gz
649    expire_in: 4 days
650
651
652linux-opt-cxx-quad:
653  extends:
654    - .stage-3
655    - .linux_test
656  tags:
657    - mcs-nfs
658  variables:
659    TEST_ARCH: arch-ci-linux-opt-cxx-quad
660
661linux-pgi:
662  extends:
663    - .stage-3
664    - .linux_test_noflags
665  tags:
666    - mcs-nfs,name:petsc
667  variables:
668    TEST_ARCH: arch-ci-linux-pgi
669
670linux-pkgs-64idx:
671  extends:
672    - .stage-3
673    - .linux_test
674  tags:
675    - mcs-nfs
676  variables:
677    TEST_ARCH: arch-ci-linux-pkgs-64idx
678
679linux-pkgs-gcov:
680  extends:
681    - .stage-3
682    - .linux_test
683  tags:
684    - mcs-nfs
685  variables:
686    TEST_ARCH: arch-ci-linux-pkgs-gcov
687  after_script:
688    - make gcov
689  artifacts:
690    when: always
691    paths:
692    - ${TEST_ARCH}/lib/petsc/conf/*.log
693    - ${TEST_ARCH}/tests/testresults.xml
694    - ${TEST_ARCH}/tests/test_${TEST_ARCH}_tap.log
695    - ${TEST_ARCH}/tests/test_${TEST_ARCH}_err.log
696    - ${TEST_ARCH}/gcov.tar.gz
697    expire_in: 4 days
698
699linux-pkgs-opt:
700  extends:
701    - .stage-3
702    - .linux_test
703  tags:
704    - gce-nfs
705  variables:
706    PETSC_OPTIONS: -check_pointer_intensity 0 -error_output_stdout -nox -nox_warning -malloc_dump -saws_port_auto_select -saws_port_auto_select_silent
707    TEST_ARCH: arch-ci-linux-pkgs-opt
708
709linux-pkgs-valgrind:
710  extends:
711    - .stage-3
712    - .linux_test
713  tags:
714    - valgrind
715  variables:
716    TEST_ARCH: arch-ci-linux-pkgs-valgrind
717    TIMEOUT: 7200
718
719linux-xsdk-dbg:
720  extends:
721    - .stage-3
722    - .linux_test
723  tags:
724    - mcs-nfs
725  variables:
726    TEST_ARCH: arch-ci-linux-xsdk-dbg
727
728linux-intel:
729  extends:
730    - .stage-3
731    - .linux_test_noflags
732  tags:
733    - gce-nfs
734  variables:
735    TEST_ARCH: arch-ci-linux-intel
736    LOAD_MODULES: intel-mkl/19.5 intel/19.0
737
738linux-intel-cmplx:
739  extends:
740    - .stage-3
741    - .linux_test_noflags
742  tags:
743    - gce-nfs
744  variables:
745    TEST_ARCH: arch-ci-linux-intel-cmplx
746    LOAD_MODULES: intel-mkl/19.5 intel/19.0
747
748linux-nagfor:
749  extends:
750    - .stage-3
751    - .linux_test
752  tags:
753    - mcs-nfs
754  variables:
755    TEST_ARCH: arch-ci-linux-nagfor
756    MAKE_FFLAGS: -DNO_WERROR_FLAG
757
758linux-64idx-i8:
759  extends:
760    - .stage-3
761    - .linux_test
762  tags:
763    - gce-nfs
764  variables:
765    TEST_ARCH: arch-ci-linux-64idx-i8
766
767linux-64idx-i8-uni:
768  extends:
769    - .stage-3
770    - .linux_test
771  tags:
772    - gce-nfs
773  variables:
774    TEST_ARCH: arch-ci-linux-64idx-i8-uni
775
776# job for analyzing the final coverage results
777analyze-pipeline:
778  stage: .post
779  image: jedbrown/mpich-ccache
780  variables:
781    PYTHON: python3
782    # Need a dummy TEST_ARCH that comes from artifacts
783    TEST_ARCH: arch-ci-linux-pkgs-gcov
784  only:
785    refs:
786#     Set with CI/CD Shedules - New Schedule
787      - schedules
788#     Set with CI/CD Pipelines - Run Pipeline
789      - web
790  allow_failure: true
791  before_script:
792    - date
793  script:
794  - python3 ./configure --with-mpi=0 --with-fc=0 --with-cxx=0
795#  - make mergegcov LOC=$PWD
796  - ${PYTHON} lib/petsc/bin/maint/gcov.py --merge_gcov --loc=${PWD} --petsc_arch ${TEST_ARCH}
797  - ls
798  - ls arch*/*
799  artifacts:
800    name: "$CI_JOB_NAME"
801    when: always
802    paths:
803    - i*.html
804    - arch-*-gcov/*
805    expire_in: 4 days
806#
807#
808# The following tests are experimental; more tests by users at other sites may be added below this.  Experimental test
809# that fail produce a warning, but do not block execution of a pipeline.
810#
811
812.test-experimental:
813  extends: .test
814  allow_failure: true
815
816