Commit Graph

39 Commits

Author SHA1 Message Date
Ben Boeckel f1e8762a8b ci: support valgrind memcheck runs 2025-10-07 10:47:42 -04:00
Brad King 8f166fa51e ci: Add jobs to perform coverage with BullseyeCoverage on Linux 2025-10-05 07:04:03 -04:00
Ben Boeckel da4a1ec2ff gitlab-ci: add support for running gcov-based coverage 2025-09-29 11:11:07 -04:00
Brad King ce6b0f9e10 ci: Drop unused build artifact
KWSys no longer has a `testConsoleBufChild.exe`.
2025-05-14 09:05:21 -04:00
Brad King 1f46bc299b ci: Extend packaging pipeline to sign Windows binaries automatically
Split packaging on Windows into dedicated jobs that run with access to
an EV signing certificate.

Prior to commit 0929221ca3 (gitlab-ci: Simplify Windows packaging
pipeline, 2023-02-28, v3.26.0-rc5~3^2~3) we had separate packaging jobs,
but they did not run in release packaging pipelines.  Restore them, and
run them in both nightly and release packaging pipelines.
2025-03-19 11:22:30 -04:00
Brad King 5dd973f900 ci: Convert sunos packaging jobs to build sunos-{x86_64,sparc64} binaries 2025-02-27 16:35:09 -05:00
Brad King 28f1da4b25 ci: Add jobs to build sunos-{i386,sparc} binaries 2025-02-15 07:28:07 -05:00
Alex Turbov bc8621d999 Fix: A lot of typos in code found by typos
Yet another great code spellchecker: https://github.com/crate-ci/typos/

(Will be added later as a `pre-commit` hook)
2025-01-12 18:49:34 +04:00
Kyle Edwards 1f0c28c840 ci: export clang-tidy fixes as an artifact 2023-12-05 11:53:35 -05:00
Brad King 52274549dd Merge topic 'ci-release-no-cdash'
31620b2bf8 gitlab-ci: drop cdash-build-id from release packaging artifacts

Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !8988
2023-11-20 08:09:09 -05:00
Brad King 31620b2bf8 gitlab-ci: drop cdash-build-id from release packaging artifacts
This was accidentally added by commit 06661b1e4c (gitlab-ci: pull
annotations for CDash from the jobs, 2023-11-01, v3.28.0-rc4~1^2).
2023-11-19 12:02:08 -05:00
Kyle Edwards 7073a6d278 ci/sphinx: Add html output as artifacts 2023-11-09 09:55:22 -05:00
Ben Boeckel 06661b1e4c gitlab-ci: pull annotations for CDash from the jobs
Only move `cdash-build-id` between stages that make sense.
2023-11-02 15:24:45 -04:00
Kyle Edwards 25d7843955 ci: Factor out build directory for finding artifacts
Some jobs will run in a build directory other than
$CI_PROJECT_DIR/build, and will produce artifacts in a different
directory. Add a variable specifying where to find the artifacts, and
set it to build/ by default.
2023-09-22 09:30:52 -04:00
Brad King 1c1f67a77e Merge topic 'ci-package-pipeline'
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
2023-03-01 09:12:53 -05:00
Brad King f73649823b gitlab-ci: Stage unsigned release package artifacts in a dedicated directory
These artifacts need to be manually signed before distribution.
Move them to a dedicated `unsigned/` directory to avoid accidental
distribution without signing.
2023-02-28 13:39:52 -05:00
Brad King 0929221ca3 gitlab-ci: Simplify Windows packaging pipeline
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.
2023-02-28 13:39:44 -05:00
Brad King 0787148785 gitlab-ci: Report sphinx logs as artifacts of its lint job 2023-02-17 08:45:01 -05:00
Brad King 7a21173b0e gitlab-ci: Add job to build Windows arm64 binaries
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
2022-06-13 15:04:24 -04:00
Brad King 6cef17bc6e gitlab-ci: name artifacts produced by release package jobs
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.
2022-06-01 12:29:21 -04:00
Brad King 4c7c66dcf5 gitlab-ci: Add jobs to make Windows x86_64 and i386 packages
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.
2022-05-19 15:25:55 -04:00
Brad King 729ee30c2e gitlab-ci: Simplify collection of CTestTestfile artifacts
gitlab-runner 13.0 and above support `**` to match arbitrary
directory paths.
2022-05-19 15:25:55 -04:00
Brad King 1ceec19c20 gitlab-ci: Add objects.inv to cmake.org html documentation 2022-04-06 09:24:48 -04:00
Craig Scott a742088472 Tests: Add support for testing Qt6
The minimum CMake version for Qt6 is 3.16, so all the calls to
cmake_minimum_required() are updated here to enforce that
minimum. This will avoid any CMake version-related warnings
from Qt.

Avoid hard-coding Qt5 where the tests could now be using
Qt5 or Qt6.

Fixes: #22188
2021-10-04 22:10:57 +11:00
Ben Boeckel cb5c03ed04 gitlab-ci: upload JUnit reports for builds
GitLab can render test results which come from JUnit files and inform
which tests have started failing on an MR.
2021-06-30 11:56:05 -04:00
Brad King 354ae6fe2e gitlab-ci: add jobs to build cmake.org/cmake/help/git-{master,stage} docs 2021-05-07 09:52:59 -04:00
Ben Boeckel 18d6737e96 gitlab-ci: always upload test and release artifacts 2021-03-01 15:51:07 -05:00
Brad King dc9340dbc4 Utilities/Release: Rename Linux packages to 'linux-$arch' 2021-01-25 13:53:40 -05:00
Brad King 6410425e5b ci: build separate macOS packages for macOS 10.13+ and macOS 10.10+
In order to support modern macOS features like Dark Mode, we need to use
Qt 5.15, which requires macOS 10.13.  However, we still want to support
macOS 10.10 as well, for which we need to use Qt 5.9.  Build separate
macOS packages for these use cases.

Fixes: #21606
Issue: #20825
2021-01-07 16:56:05 -05:00
Hi Key 76742c4cbe gitlab-ci: add jobs to make Linux release packages for aarch64 on 3.19 branch 2020-12-22 14:04:39 -05:00
Brad King 56a075eb5d ci: update macOS package to produce universal binaries
Update our deployment target to macOS 10.10.
This is required by Qt 5.9.

Fixes: #21565
Issue: #20825
2020-12-10 10:55:17 -05:00
Ben Boeckel 39da646238 gitlab-ci: add FortranC test directory to the artifacts 2020-10-06 09:55:40 -04:00
Brad King 45633a6297 gitlab-ci: add a job to make source packages 2020-09-29 11:18:45 -04:00
Kyle Edwards 1dcc569828 gitlab-ci: Add GUI testing to each OS 2020-09-23 14:10:40 -04:00
Ben Boeckel 8ff3ce730d gitlab-ci: add a job to make macOS packages 2020-09-16 14:03:31 -04:00
Ben Boeckel 7d4ec05c6f gitlab-ci: add a job to make a doc "bundle"
This can be added to any other platform's package by reusing the
artifact.
2020-09-16 13:35:53 -04:00
Tobias Ribizel f38e4a1871 Tests: Add cases for CTest cuda-memcheck parser 2020-07-09 19:08:34 +02:00
Ben Boeckel a1fe6ad621 gitlab-ci: use extends
YAML anchors are not supported across include files.
2020-06-12 12:56:03 -04:00
Ben Boeckel d6fe877cf9 gitlab-ci: split into multiple files
Also add comments for sections to make it easier to figure out what's
going on.

Also rename the `cmake_test_unix_package` to be Linux-specific since it
actually is.
2020-06-12 12:28:29 -04:00