summaryrefslogtreecommitdiffstats
path: root/.gitlab-ci.yml
diff options
context:
space:
mode:
authorPatrick Steinhardt <ps@pks.im>2024-10-09 15:25:26 +0200
committerJunio C Hamano <gitster@pobox.com>2024-10-09 20:33:05 +0200
commit05a928a93e1a6a46902fca76a37c7876ace7f87e (patch)
tree19f7e611d40234a76d9c45398169d1d73cbcc053 /.gitlab-ci.yml
parentci: handle Windows-based CI jobs in GitLab CI (diff)
downloadgit-05a928a93e1a6a46902fca76a37c7876ace7f87e.tar.xz
git-05a928a93e1a6a46902fca76a37c7876ace7f87e.zip
gitlab-ci: introduce stages and dependencies
We're about to add a couple of jobs for Windows. As the Windows runners are quite slow, we will split those up across two stages: one stage to build the artifacts, and one stage that runs test slices in parallel. Introduce stages and "needs" dependencies for the preexisting jobs as a preparatory step. The stages will lead to a more natural representation of jobs in the UI, whereas the "needs" dependency ensures that jobs do not have to wait for all jobs in the preceding stage to finish. Signed-off-by: Patrick Steinhardt <ps@pks.im> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to '.gitlab-ci.yml')
-rw-r--r--.gitlab-ci.yml18
1 files changed, 18 insertions, 0 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 4abfbc3e20..e13e8b3866 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,6 +1,10 @@
default:
timeout: 2h
+stages:
+ - test
+ - analyze
+
workflow:
rules:
- if: $CI_PIPELINE_SOURCE == "merge_request_event"
@@ -9,6 +13,8 @@ workflow:
test:linux:
image: $image
+ stage: test
+ needs: [ ]
tags:
- saas-linux-medium-amd64
variables:
@@ -67,6 +73,8 @@ test:linux:
test:osx:
image: $image
+ stage: test
+ needs: [ ]
tags:
- saas-macos-medium-m1
variables:
@@ -102,6 +110,8 @@ test:osx:
test:fuzz-smoke-tests:
image: ubuntu:latest
+ stage: test
+ needs: [ ]
variables:
CC: clang
before_script:
@@ -111,6 +121,8 @@ test:fuzz-smoke-tests:
static-analysis:
image: ubuntu:22.04
+ stage: analyze
+ needs: [ ]
variables:
jobname: StaticAnalysis
before_script:
@@ -121,6 +133,8 @@ static-analysis:
check-whitespace:
image: ubuntu:latest
+ stage: analyze
+ needs: [ ]
before_script:
- ./ci/install-dependencies.sh
# Since $CI_MERGE_REQUEST_TARGET_BRANCH_SHA is only defined for merged
@@ -135,6 +149,8 @@ check-whitespace:
check-style:
image: ubuntu:latest
+ stage: analyze
+ needs: [ ]
allow_failure: true
variables:
CC: clang
@@ -153,6 +169,8 @@ check-style:
documentation:
image: ubuntu:latest
+ stage: analyze
+ needs: [ ]
variables:
jobname: Documentation
before_script: