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