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