summaryrefslogtreecommitdiff
path: root/.gitlab-ci.yml
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'ci-package-pipeline'Brad King2023-03-011-55/+11
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | 7c60a2625d gitlab-ci: Optionally upload release packages to custom URL fc8a981893 gitlab-ci: Generalize package and help upload URLs f73649823b gitlab-ci: Stage unsigned release package artifacts in a dedicated directory 0929221ca3 gitlab-ci: Simplify Windows packaging pipeline ce2e825306 gitlab-ci: Simplify macOS packaging jobs 05531a7c4e gitlab-ci: add pre-build and post-build steps to Windows 5ab92d8e71 gitlab-ci: add pre-build and post-build steps to macOS Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Ben Boeckel <ben.boeckel@kitware.com> Merge-request: !8266
| * gitlab-ci: Simplify Windows packaging pipelineBrad King2023-02-281-53/+9
| | | | | | | | | | | | | | | | | | | | | | | | In commit 4c7c66dcf5 (gitlab-ci: Add jobs to make Windows x86_64 and i386 packages, 2022-05-19, v3.24.0-rc1~112^2) we used a separate Windows packaging job in nightly packaging pipelines. It did not run in release pipelines, where we need to run the final packaging step manually with signing. Simplify nightly packaging pipelines by running `cpack` at the end of the build job as we do for other platforms. For release packaging pipelines, create an archive of the files needed to build a package, and present this as the built "package" on Windows.
| * gitlab-ci: Simplify macOS packaging jobsBrad King2023-02-281-2/+2
| | | | | | | | Run cpack in a post-build step instead of duplicating the job script.
* | gitlab-ci: Add nightly jobs covering macOS universal binaries on x86_64Brad King2023-02-211-0/+28
| |
* | gitlab-ci: Report sphinx logs as artifacts of its lint jobBrad King2023-02-171-0/+1
|/
* gitlab-ci: add jobs testing Intel 2023.0.0 compilers on LinuxBrad King2023-01-271-0/+14
| | | | | Note that the classic compiler version is 2021.8.0, but we still have it in the 2023.0.0 base image.
* Merge topic 'ci-nvhpc'Brad King2022-12-071-1/+1
|\ | | | | | | | | | | | | 12d032b265 gitlab-ci: Update NVHPC to version 22.11 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7994
| * gitlab-ci: Update NVHPC to version 22.11Brad King2022-12-061-1/+1
| | | | | | | | Fixes: #24225
* | Merge topic 'ci-cuda-no-static'Brad King2022-12-071-0/+10
|\ \ | |/ |/| | | | | | | | | 004f954401 ci: Add job to test minimal CUDA install (no static libs) Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7996
| * ci: Add job to test minimal CUDA install (no static libs)Robert Maynard2022-12-061-0/+10
| | | | | | | | | | | | | | Some package managers provide a minimal set of static libraries, which historically has caused problems for FindCUDAToolkit. Resolve this issue by creating a CUDA image with only the minimal set of static libraries.
* | gitlab-ci: add CI jobs for Clang with C++20 modulesBen Boeckel2022-12-021-0/+20
|/
* gitlab-ci: drop unnecessary linux kernel version tagBrad King2022-11-301-16/+16
| | | | | All our CI hosts now have Linux kernel version 3.17 or higher, so we no longer need a dedicated tag.
* gitlab-ci: rename tag configuration entries to start in '$os_$arch_tags'Brad King2022-11-301-62/+62
| | | | | This groups their definitions nicely, and makes their purpose more clear from reference sites.
* gitlab-ci: remove unnecessary component of configuration entry namesBrad King2022-11-301-48/+48
| | | | | The '_builder' part of tag entry names is not useful with our current naming conventions.
* gitlab-ci: add nightly job testing NVHPC with Ninja on LinuxBrad King2022-11-281-0/+10
|
* gitlab-ci: add jobs to test with Clang and LLVMFlang on FedoraBrad King2022-11-181-0/+20
| | | | | | | | | | | | We already have `t:debian10-{makefiles,ninja}-clang` jobs covering old versions of Clang with Makefile and Ninja generators. Complement them with new `t:fedora37-{makefiles,ninja}-clang` jobs covering recent versions of Clang. Fedora 37 now packages LLVMFlang, so enable Fortran tests with that compiler too. Issue: #22387
* gitlab-ci: use Fedora 37 images and environmentsBrad King2022-11-171-30/+30
|
* gitlab-ci: Fix rules for running two dependent test jobsBrad King2022-11-171-2/+2
|
* ci: add macos-x86_64-ninja build and test jobs to continuous pipelineBrad King2022-11-151-0/+3
|
* gitlab-ci: Add windows-arm64 native jobs for Ninja and VSBrad King2022-11-111-1/+43
| | | | | | | Add Windows ARM64 native CI jobs to build and test with Ninja, and to test with VS. Issue: #23624
* Merge topic 'ci-msvc-14.34'Brad King2022-11-111-6/+6
|\ | | | | | | | | | | | | | | bd5176abac gitlab-ci: Update Windows packaging builds to MSVC 14.34 toolset ccdff280f4 gitlab-ci: Update Windows non-packaging builds to MSVC 14.34 toolset Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7891
| * gitlab-ci: Update Windows packaging builds to MSVC 14.34 toolsetBrad King2022-11-101-6/+6
| | | | | | | | | | | | | | | | | | | | Problems with `cmake-gui` when compiled with the MSVC 14.33 toolset, that did not occur with the MSVC 14.32 toolset, no longer occur with the MSVC 14.34 toolset. Revert commit cb8b27a901 (gitlab-ci: Use separate MSVC toolset specification for packaging jobs, 2022-08-18, v3.24.2~24^2~1) and update the remaining toolset version references. Fixes: #23859
* | Merge topic 'ci-clang15-windows'Brad King2022-11-111-12/+12
|\ \ | |/ | | | | | | | | | | | | | | | | | | 46b2849550 ci: Update LLVM/Clang to 15.0 in nightly CI jobs on Windows 3eb94e4d51 ci: Simplify LLVM/Clang CI job specs on Windows 8ba5835c8d ci: Factor out helper to load clang into environment on Windows bf2e4a2e85 ci: Factor out helper to load ninja into environment on Windows 93ff726114 Tests: Fix TryCompile bad source case for clang-cl 15 on Windows Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7897
| * ci: Update LLVM/Clang to 15.0 in nightly CI jobs on WindowsBrad King2022-11-101-8/+8
| |
| * ci: Simplify LLVM/Clang CI job specs on WindowsBrad King2022-11-101-4/+4
| | | | | | | | | | Move environment setup to job-specific scripts so we can reuse the common `.cmake_test_windows_external` code path.
* | ci: add MSYS Makefiles nightly CI jobBrad King2022-11-021-0/+14
| | | | | | | | Use the MinGW/MSYS 1.0 distribution from `mingw.osdn.io`.
* | ci: add MinGW Makefiles nightly CI jobBrad King2022-11-021-0/+14
|/ | | | Use the MinGW/MSYS 1.0 distribution from `mingw.osdn.io`.
* gitlab-ci: add jobs testing Intel 2022.2.0 compilers on LinuxBrad King2022-10-031-0/+14
| | | | | Note that the classic compiler version is 2021.7.0, but we still have it in the 2022.2.0 base image.
* Merge topic 'ci-msvc-14.33'Brad King2022-08-221-6/+6
|\ | | | | | | | | | | | | | | b87645b6a5 gitlab-ci: Update non-packaging Windows builds to MSVC 14.33 toolset cb8b27a901 gitlab-ci: Use separate MSVC toolset specification for packaging jobs Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7597
| * gitlab-ci: Use separate MSVC toolset specification for packaging jobsBrad King2022-08-191-6/+6
| | | | | | | | | | | | | | This will be useful for testing CMake with one version of MSVC while packaging the official binaries with another version. Issue: #23859
* | gitlab-ci: add jobs to test CMake with external dependencies on LinuxBrad King2022-08-181-0/+27
| | | | | | | | | | Test that CMake works without its bundled dependencies. For some dependencies, test using the minimum supported version.
* | Merge topic 'cpp-named-module-file-sets'Brad King2022-06-171-0/+20
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | 07bc3b07ec gitlab-ci: test C++ modules using GCC 1b2270aa4e ci: add a Docker image to test out C++ modules with GCC 8c5a53096a Tests/RunCMake/CXXModules: add module-using examples 4151547e2f cmGlobalNinjaGenerator: use `cmModuleMapper` implementation b43bdaff3c cmCxxModuleMapper: implement support for GCC's module map format 02d0f0e752 cmCxxModuleMapper: add source to handle module mapper contents a046a45aad cmGlobalNinjaGenerator: add a TODO for header units 386465bf83 cmTarget: add support for C++ module fileset types ... Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !7369
| * gitlab-ci: test C++ modules using GCCBen Boeckel2022-06-161-0/+20
| |
* | gitlab-ci: Add jobs to package and upload Windows arm64 nightly binariesBrad King2022-06-141-0/+23
|/ | | | | | | | | Follow up commit 7a21173b0e (gitlab-ci: Add job to build Windows arm64 binaries, 2022-06-13, v3.24.0-rc1~4^2~1). Base the package and upload jobs on the approach from commit 4c7c66dcf5 (gitlab-ci: Add jobs to make Windows x86_64 and i386 packages, 2022-05-19). Issue: #21902
* gitlab-ci: Add job to build Windows arm64 binariesBrad King2022-06-131-0/+14
| | | | | | | | | | Base it on the approach from commit 4c7c66dcf5 (gitlab-ci: Add jobs to make Windows x86_64 and i386 packages, 2022-05-19). Leave out the packaging and upload steps for now because they are only for the nightly binaries, and will need a new release of CPack to pass the `arm64` architecture to WiX. Issue: #21902
* gitlab-ci: add nightly job testing Ninja Multi-Config on WindowsBrad King2022-06-071-0/+14
|
* gitlab-ci: add nightly job testing Ninja Multi-Config on macOSBrad King2022-06-071-0/+14
|
* gitlab-ci: name artifacts produced by release package jobsBrad King2022-06-011-0/+21
| | | | | | Name the `.zip` file that GitLab CI uses to hold the package artifacts. Use a different name for each platform/architecture combination so that we can download them all to a single local directory without conflicts.
* Merge topic 'ci-fedora-36'Brad King2022-05-241-28/+28
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | ef6a7921e5 gitlab-ci: use Fedora 36 images and environments 483ff3b903 ci: update Linux image to Fedora 36 13c5153ccd ci: make rvm version comments consistent 6c08dd972c clang-tidy: suppress `google-readability-casting` lint 17b7bbf2a0 clang-tidy: suppress new `readability-identifier-length` lint 16e6e4e7dd cmFileCommand: remove an unnecessary cast b89c085237 clang-tidy: fix `readability-static-definition-in-anonymous-namespace` lints c8c9d7de03 clang-tidy: fix `bugprone-exception-escape` lints ... Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7271
| * gitlab-ci: use Fedora 36 images and environmentsBen Boeckel2022-05-241-28/+28
| |
* | gitlab-ci: Add jobs to make Windows x86_64 and i386 packagesBrad King2022-05-191-0/+68
|/ | | | | | | | | | | Run CPack in a separate job for nightly binaries, and not at all for release binaries. Unlike macOS disk images (.dmg), we cannot sign the binaries inside Windows installers (.msi) after-the-fact. Instead, produce enough artifacts from the build job to sign and package release binaries manually. Port build settings from `Utilities/Release/win/x86/Dockerfile` and its helper scripts.
* gitlab-ci: add jobs testing Intel 2022.1.0 compilers on LinuxBrad King2022-05-161-0/+14
| | | | | Note that the classic compiler version is 2021.6.0, but we still have it in the 2022.1.0 base image.
* Merge branch 'backport-ci-cmake.org-help' into ci-cmake.org-helpBrad King2022-04-051-24/+8
|\
| * gitlab-ci: update cmake.org documentation in release package pipelineBrad King2022-04-051-0/+2
| |
| * gitlab-ci: consolidate jobs for cmake.org/cmake/help/git-{master,stage} docsBrad King2022-04-051-24/+6
| |
* | Merge topic 'ci-package-uploads'Brad King2022-04-041-15/+5
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | b20a19fca1 Merge branch 'backport-3.22-ci-package-uploads' into ci-package-uploads cb44e0d47c gitlab-ci: distinguish release and development pipeline schedules 3a9a9a3ace gitlab-ci: clarify name of package upload job template Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7142
| * \ Merge branch 'backport-3.22-ci-package-uploads' into ci-package-uploadsBrad King2022-04-041-20/+10
| |\ \ | | |/
| | * gitlab-ci: distinguish release and development pipeline schedulesBrad King2022-04-041-15/+5
| | | | | | | | | | | | | | | | | | | | | | | | Redefine the `CMAKE_CI_PACKAGE` pipeline schedule variable to indicate whether it is for a development version (`dev`) or a release version (`v[0-9]...`). Use this to automatically turn package upload jobs on or off without having to edit the jobs in `.gitlab-ci.yml` for release branches.
| | * gitlab-ci: clarify name of package upload job templateBrad King2022-04-041-5/+5
| | | | | | | | | | | | The template is used to upload both source and binary packages.
| | * gitlab-ci: shorten job prefixesBen Boeckel2021-11-231-121/+128
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This helps to maximize the amount of information visible in the GitLab web interface. Also document their meaning in the developer documentation and in the CI configuration file directly. See: https://gitlab.com/gitlab-org/gitlab/-/issues/8496