| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752 |
- include:
- # Metadata shared my many jobs
- - local: .gitlab/rules.yml
- - local: .gitlab/artifacts.yml
- # OS builds.
- - local: .gitlab/os-linux.yml
- - local: .gitlab/os-macos.yml
- - local: .gitlab/os-windows.yml
- # Post-build steps
- - local: .gitlab/upload.yml
- stages:
- - prep
- - build
- - test
- - test-ext
- - upload
- ################################################################################
- # Job declarations
- #
- # Each job must pull in each of the following keys:
- #
- # - a "base image"
- # - a build script
- # - tags for the jobs
- # - rules for when to run the job
- #
- # Additionally, jobs may also contain:
- #
- # - artifacts
- # - dependency/needs jobs for required jobs
- ################################################################################
- # Prep jobs
- prep:source-package:
- extends:
- - .linux_prep_source
- - .cmake_prep_source_linux
- - .linux_builder_tags
- - .cmake_release_artifacts
- - .run_only_for_package
- prep:doc-package:
- extends:
- - .fedora34_sphinx_package
- - .cmake_prep_doc_linux
- - .linux_builder_tags_qt
- - .cmake_doc_artifacts
- - .run_only_for_package
- upload:source-package:
- extends:
- - .rsync_upload_binary
- - .run_only_for_package
- dependencies:
- - prep:source-package
- needs:
- - prep:source-package
- variables:
- RSYNC_DESTINATION: dev
- # Documentation builds
- build:help:master:
- extends:
- - .cmake_org_help
- - .run_only_for_continuous_master
- upload:help:master:
- extends:
- - .rsync_upload_help
- - .run_only_for_continuous_master
- variables:
- RSYNC_DESTINATION: git-master
- dependencies:
- - build:help:master
- needs:
- - build:help:master
- build:help:stage:
- extends:
- - .cmake_org_help
- - .run_only_for_continuous_stage
- upload:help:stage:
- extends:
- - .rsync_upload_help
- - .run_only_for_continuous_stage
- variables:
- RSYNC_DESTINATION: git-stage
- dependencies:
- - build:help:stage
- needs:
- - build:help:stage
- # Lint builds
- lint:codespell:
- extends:
- - .cmake_codespell_linux
- - .linux_builder_tags
- - .run_automatically
- lint:debian10-iwyu:
- extends:
- - .debian10_iwyu
- - .cmake_build_linux
- - .linux_builder_tags
- - .run_automatically
- lint:fedora34-tidy:
- extends:
- - .fedora34_tidy
- - .cmake_build_linux
- - .linux_builder_tags_qt
- - .run_automatically
- lint:fedora34-sphinx:
- extends:
- - .fedora34_sphinx
- - .cmake_build_linux
- - .linux_builder_tags_qt
- - .run_automatically
- variables:
- CMAKE_CI_JOB_CONTINUOUS: "true"
- CMAKE_CI_JOB_HELP: "true"
- lint:fedora34-clang-analyzer:
- extends:
- - .fedora34_clang_analyzer
- - .cmake_build_linux
- - .linux_builder_tags_qt
- - .run_automatically
- variables:
- CMAKE_CI_JOB_NIGHTLY: "true"
- # Linux builds
- build:centos6-x86_64:
- extends:
- - .linux_release_x86_64
- - .cmake_build_linux_release
- - .cmake_release_artifacts
- - .linux_builder_tags
- - .run_manually
- build:centos7-aarch64:
- extends:
- - .linux_release_aarch64
- - .cmake_build_linux_release
- - .cmake_release_artifacts
- - .linux_builder_tags_aarch64
- - .run_manually
- variables:
- CMAKE_CI_NO_MR: "true"
- test:debian10-ninja:
- extends:
- - .debian10_ninja
- - .cmake_test_linux_release
- - .linux_builder_tags_qt
- - .cmake_junit_artifacts
- - .run_dependent
- - .needs_centos6_x86_64
- test:debian10-aarch64-ninja:
- extends:
- - .debian10_aarch64_ninja
- - .cmake_test_linux_release
- - .linux_builder_tags_aarch64_qt
- - .cmake_junit_artifacts
- - .run_dependent
- - .needs_centos7_aarch64
- variables:
- CMAKE_CI_NO_MR: "true"
- test:debian10-ninja-clang:
- extends:
- - .debian10_ninja_clang
- - .cmake_test_linux_release
- - .linux_builder_tags_qt
- - .run_manually
- - .needs_centos6_x86_64
- variables:
- CMAKE_CI_JOB_NIGHTLY: "true"
- test:debian10-makefiles-clang:
- extends:
- - .debian10_makefiles_clang
- - .cmake_test_linux_release
- - .linux_builder_tags_qt
- - .run_manually
- - .needs_centos6_x86_64
- variables:
- CMAKE_CI_JOB_NIGHTLY: "true"
- test:fedora34-makefiles:
- extends:
- - .fedora34_makefiles
- - .cmake_test_linux_release
- - .linux_builder_tags_qt
- - .run_dependent
- - .needs_centos6_x86_64
- test:fedora34-makefiles-nospace:
- extends:
- - .fedora34_makefiles
- - .cmake_test_linux_release
- - .linux_builder_tags_qt
- - .cmake_junit_artifacts
- - .run_dependent
- - .needs_centos6_x86_64
- variables:
- GIT_CLONE_PATH: "$CI_BUILDS_DIR/cmake-ci"
- CMAKE_CI_BUILD_NAME: fedora34_makefiles_nospace
- CMAKE_CI_JOB_NIGHTLY: "true"
- test:cuda9.2-nvidia:
- extends:
- - .cuda9.2_nvidia
- - .cmake_test_linux_release
- - .linux_builder_tags_cuda
- - .run_dependent
- - .needs_centos6_x86_64
- variables:
- CMAKE_CI_JOB_NIGHTLY: "true"
- test:cuda10.2-nvidia:
- extends:
- - .cuda10.2_nvidia
- - .cmake_test_linux_release
- - .linux_builder_tags_cuda
- - .cmake_junit_artifacts
- - .run_dependent
- - .needs_centos6_x86_64
- test:cuda10.2-clang:
- extends:
- - .cuda10.2_clang
- - .cmake_test_linux_release
- - .linux_builder_tags_cuda
- - .run_dependent
- - .needs_centos6_x86_64
- variables:
- CMAKE_CI_JOB_NIGHTLY: "true"
- test:hip4.2-radeon:
- extends:
- - .hip4.2_radeon
- - .cmake_test_linux_release
- - .linux_builder_tags_radeon
- - .run_dependent
- - .needs_centos6_x86_64
- variables:
- CMAKE_CI_JOB_NIGHTLY: "true"
- build:fedora34-ninja:
- extends:
- - .fedora34_ninja
- - .cmake_build_linux
- - .cmake_build_artifacts
- - .linux_builder_tags_qt
- - .run_manually
- test:fedora34-ninja:
- extends:
- - .fedora34_ninja
- - .cmake_test_linux
- - .linux_builder_tags_x11
- - .cmake_test_artifacts
- - .run_dependent
- dependencies:
- - build:fedora34-ninja
- needs:
- - build:fedora34-ninja
- test:fedora34-ninja-multi:
- extends:
- - .fedora34_ninja_multi
- - .cmake_test_linux_external
- - .linux_builder_tags_qt
- - .cmake_junit_artifacts
- - .run_dependent
- dependencies:
- - test:fedora34-ninja
- needs:
- - test:fedora34-ninja
- test:intel2016-makefiles:
- extends:
- - .cmake_test_linux_intelclassic_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: intel2016_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2016-el7
- test:intel2016u1-makefiles:
- extends:
- - .cmake_test_linux_intelclassic_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: intel2016u1_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2016u1-el7
- test:intel2016u2-makefiles:
- extends:
- - .cmake_test_linux_intelclassic_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: intel2016u2_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2016u2-el7
- test:intel2017-makefiles:
- extends:
- - .cmake_test_linux_intelclassic_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: intel2017_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2017-el7
- test:intel2017u1-makefiles:
- extends:
- - .cmake_test_linux_intelclassic_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: intel2017u1_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2017u1-el7
- test:intel2017u2-makefiles:
- extends:
- - .cmake_test_linux_intelclassic_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: intel2017u2_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2017u2-el7
- test:intel2017u3-makefiles:
- extends:
- - .cmake_test_linux_intelclassic_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: intel2017u3_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2017u3-el7
- test:intel2017u4-makefiles:
- extends:
- - .cmake_test_linux_intelclassic_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: intel2017u4_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2017u4-el7
- test:intel2017u5-makefiles:
- extends:
- - .cmake_test_linux_intelclassic_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: intel2017u5_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2017u5-el7
- test:intel2017u6-makefiles:
- extends:
- - .cmake_test_linux_intelclassic_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: intel2017u6_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2017u6-el7
- test:intel2017u7-makefiles:
- extends:
- - .cmake_test_linux_intelclassic_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: intel2017u7_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2017u7-el7
- test:intel2017u8-makefiles:
- extends:
- - .cmake_test_linux_intelclassic_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: intel2017u8_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2017u8-el7
- test:intel2018-makefiles:
- extends:
- - .cmake_test_linux_intelclassic_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: intel2018_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2018-el7
- test:intel2018u1-makefiles:
- extends:
- - .cmake_test_linux_intelclassic_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: intel2018u1_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2018u1-el7
- test:intel2018u2-makefiles:
- extends:
- - .cmake_test_linux_intelclassic_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: intel2018u2_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2018u2-el7
- test:intel2018u3-makefiles:
- extends:
- - .cmake_test_linux_intelclassic_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: intel2018u3_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2018u3-el7
- test:intel2018u4-makefiles:
- extends:
- - .cmake_test_linux_intelclassic_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: intel2018u4_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2018u4-el7
- test:intel2019-makefiles:
- extends:
- - .cmake_test_linux_intelclassic_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: intel2019_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2019-el7
- test:intel2019u1-makefiles:
- extends:
- - .cmake_test_linux_intelclassic_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: intel2019u1_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2019u1-el7
- test:intel2019u2-makefiles:
- extends:
- - .cmake_test_linux_intelclassic_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: intel2019u2_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2019u2-el7
- test:intel2019u3-makefiles:
- extends:
- - .cmake_test_linux_intelclassic_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: intel2019u3_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2019u3-el7
- test:intel2019u4-makefiles:
- extends:
- - .cmake_test_linux_intelclassic_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: intel2019u4_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2019u4-el7
- test:intel2020-makefiles:
- extends:
- - .cmake_test_linux_intelclassic_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: intel2020_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2020-el8
- test:intel2020u2-makefiles:
- extends:
- - .cmake_test_linux_intelclassic_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: intel2020u2_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2020u2-el8
- test:intel2020u4-makefiles:
- extends:
- - .cmake_test_linux_intelclassic_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: intel2020u4_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2020u4-el8
- test:intel2021.1.1-makefiles:
- extends:
- - .cmake_test_linux_intelclassic_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: intel2021.1.1_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2021.1.1-el8
- test:intel2021.1.2-makefiles:
- extends:
- - .cmake_test_linux_intelclassic_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: intel2021.1.2_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2021.1.2-el8
- test:intel2021.2.0-makefiles:
- extends:
- - .cmake_test_linux_intelclassic_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: intel2021.2.0_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2021.2.0-el8
- test:oneapi2021.1.1-makefiles:
- extends:
- - .cmake_test_linux_inteloneapi_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: oneapi2021.1.1_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2021.1.1-el8
- test:oneapi2021.1.2-makefiles:
- extends:
- - .cmake_test_linux_inteloneapi_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: oneapi2021.1.2_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2021.1.2-el8
- test:oneapi2021.2.0-makefiles:
- extends:
- - .cmake_test_linux_inteloneapi_makefiles
- variables:
- CMAKE_CI_BUILD_NAME: oneapi2021.2.0_makefiles
- CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2021.2.0-el8
- build:linux-x86_64-package:
- extends:
- - .linux_package
- - .linux_release_x86_64
- - .cmake_build_linux_release
- - .cmake_release_artifacts
- - .linux_builder_tags
- - .run_only_for_package
- dependencies:
- - prep:doc-package
- needs:
- - prep:doc-package
- upload:linux-x86_64-package:
- extends:
- - .rsync_upload_binary
- - .run_only_for_package
- dependencies:
- - build:linux-x86_64-package
- needs:
- - build:linux-x86_64-package
- variables:
- RSYNC_DESTINATION: dev
- build:linux-aarch64-package:
- extends:
- - .linux_package
- - .linux_release_aarch64
- - .cmake_build_linux_release
- - .cmake_release_artifacts
- - .linux_builder_tags_aarch64
- - .run_only_for_package
- dependencies:
- - prep:doc-package
- needs:
- - prep:doc-package
- upload:linux-aarch64-package:
- extends:
- - .rsync_upload_binary
- - .run_only_for_package
- dependencies:
- - build:linux-aarch64-package
- needs:
- - build:linux-aarch64-package
- variables:
- RSYNC_DESTINATION: dev
- ## Sanitizer builds
- build:fedora34-asan:
- extends:
- - .fedora34_asan
- - .cmake_build_linux
- - .cmake_build_artifacts
- - .linux_builder_tags_qt
- - .run_manually
- variables:
- CMAKE_CI_JOB_NIGHTLY: "true"
- test:fedora34-asan:
- extends:
- - .fedora34_asan
- - .cmake_memcheck_linux
- - .linux_builder_tags_qt
- - .run_automatically
- dependencies:
- - build:fedora34-asan
- needs:
- - build:fedora34-asan
- variables:
- CMAKE_CI_JOB_NIGHTLY: "true"
- # macOS builds
- build:macos-x86_64-ninja:
- extends:
- - .macos_x86_64_ninja
- - .cmake_build_macos
- - .cmake_build_artifacts
- - .macos_x86_64_builder_tags
- - .run_manually
- build:macos-arm64-ninja:
- extends:
- - .macos_arm64_ninja
- - .cmake_build_macos
- - .cmake_build_artifacts
- - .macos_arm64_builder_tags
- - .run_manually
- variables:
- CMAKE_CI_NO_MR: "true"
- test:macos-x86_64-ninja:
- extends:
- - .macos_x86_64_ninja
- - .cmake_test_macos
- - .cmake_test_artifacts
- - .macos_x86_64_builder_tags
- - .run_dependent
- dependencies:
- - build:macos-x86_64-ninja
- needs:
- - build:macos-x86_64-ninja
- test:macos-arm64-ninja:
- extends:
- - .macos_arm64_ninja
- - .cmake_test_macos
- - .cmake_test_artifacts
- - .macos_arm64_builder_tags
- - .run_dependent
- dependencies:
- - build:macos-arm64-ninja
- needs:
- - build:macos-arm64-ninja
- variables:
- CMAKE_CI_NO_MR: "true"
- build:macos-x86_64-makefiles:
- extends:
- - .macos_x86_64_makefiles
- - .cmake_build_macos
- - .cmake_build_artifacts
- - .macos_x86_64_builder_tags
- - .run_manually
- test:macos-x86_64-makefiles:
- extends:
- - .macos_x86_64_makefiles
- - .cmake_test_macos
- - .macos_x86_64_builder_tags
- - .run_dependent
- dependencies:
- - build:macos-x86_64-makefiles
- needs:
- - build:macos-x86_64-makefiles
- test:macos-x86_64-xcode:
- extends:
- - .macos_x86_64_xcode
- - .cmake_test_macos_external
- - .macos_x86_64_builder_ext_tags
- - .cmake_junit_artifacts
- - .run_dependent
- dependencies:
- - test:macos-x86_64-ninja
- needs:
- - test:macos-x86_64-ninja
- test:macos-arm64-xcode:
- extends:
- - .macos_arm64_xcode
- - .cmake_test_macos_external
- - .macos_arm64_builder_ext_tags
- - .cmake_junit_artifacts
- - .run_dependent
- dependencies:
- - test:macos-arm64-ninja
- needs:
- - test:macos-arm64-ninja
- variables:
- CMAKE_CI_NO_MR: "true"
- build:macos-package:
- extends:
- - .macos_package
- - .cmake_build_macos_package
- - .cmake_release_artifacts
- - .macos_x86_64_builder_tags_package
- - .run_only_for_package
- dependencies:
- - prep:doc-package
- needs:
- - prep:doc-package
- upload:macos-package:
- extends:
- - .rsync_upload_binary
- - .run_only_for_package
- dependencies:
- - build:macos-package
- needs:
- - build:macos-package
- variables:
- RSYNC_DESTINATION: dev
- build:macos10.10-package:
- extends:
- - .macos10.10_package
- - .cmake_build_macos_package
- - .cmake_release_artifacts
- - .macos_x86_64_builder_tags_package
- - .run_only_for_package
- dependencies:
- - prep:doc-package
- needs:
- - prep:doc-package
- upload:macos10.10-package:
- extends:
- - .rsync_upload_binary
- - .run_only_for_package
- dependencies:
- - build:macos10.10-package
- needs:
- - build:macos10.10-package
- variables:
- RSYNC_DESTINATION: dev
- # Windows builds
- build:windows-vs2019-x64-ninja:
- extends:
- - .windows_vs2019_x64_ninja
- - .cmake_build_windows
- - .cmake_build_artifacts
- - .windows_builder_tags
- - .run_manually
- test:windows-vs2019-x64-ninja:
- extends:
- - .windows_vs2019_x64_ninja
- - .cmake_test_windows
- - .windows_builder_tags
- - .cmake_test_artifacts
- - .run_dependent
- dependencies:
- - build:windows-vs2019-x64-ninja
- needs:
- - build:windows-vs2019-x64-ninja
- test:windows-vs2019-x64:
- extends:
- - .windows_vs2019_x64
- - .cmake_test_windows_external
- - .windows_builder_ext_tags
- - .cmake_junit_artifacts
- - .run_dependent
- dependencies:
- - test:windows-vs2019-x64-ninja
- needs:
- - test:windows-vs2019-x64-ninja
|