CI: Add PR label for skipping all CI jobs

This commit is contained in:
Tim Wojtulewicz 2025-05-28 14:29:13 -07:00
parent e9544386fe
commit bc4cf14237
2 changed files with 10 additions and 4 deletions

View file

@ -68,13 +68,13 @@ skip_task_on_pr: &SKIP_TASK_ON_PR
# Skip this task on PRs if it does not have the CI: Full label, # Skip this task on PRs if it does not have the CI: Full label,
# it continues to run for direct pushes to master/release. # it continues to run for direct pushes to master/release.
skip: > skip: >
! ( $CIRRUS_PR == '' || $CIRRUS_PR_LABELS =~ '.*CI: Full.*' ) ( ! ($CIRRUS_PR == '' || $CIRRUS_PR_LABELS =~ '.*CI: Full.*') || $CIRRUS_PR_LABELS =~ '.*CI: Skip All' )
skip_cluster_test_on_pr: &SKIP_CLUSTER_TEST_ON_PR skip_cluster_test_on_pr: &SKIP_CLUSTER_TEST_ON_PR
# Skip this task on PRs if it does not have the CI: Full label, # Skip this task on PRs if it does not have the CI: Full label,
# it continues to run for direct pushes to master/release. # it continues to run for direct pushes to master/release.
skip: > skip: >
! ( $CIRRUS_PR == '' || $CIRRUS_PR_LABELS =~ '.*CI: (Full|Cluster Test).*') ( ! ($CIRRUS_PR == '' || $CIRRUS_PR_LABELS =~ '.*CI: (Full|Cluster Test).*') || $CIRRUS_PR_LABELS =~ '.*CI: Skip All' )
zam_skip_task_on_pr: &ZAM_SKIP_TASK_ON_PR zam_skip_task_on_pr: &ZAM_SKIP_TASK_ON_PR
# Skip this task on PRs unless it has the "CI: Full" or "CI: ZAM" label # Skip this task on PRs unless it has the "CI: Full" or "CI: ZAM" label
@ -82,7 +82,7 @@ zam_skip_task_on_pr: &ZAM_SKIP_TASK_ON_PR
# It continues to run for direct pushes to master/release, as # It continues to run for direct pushes to master/release, as
# CIRRUS_PR will be empty. # CIRRUS_PR will be empty.
skip: > skip: >
! ( $CIRRUS_PR == '' || $CIRRUS_PR_LABELS =~ '.*CI: (Full|ZAM).*' || changesInclude('src/script_opt/**') ) ( ! ($CIRRUS_PR == '' || $CIRRUS_PR_LABELS =~ '.*CI: (Full|ZAM).*' || changesInclude('src/script_opt/**')) || $CIRRUS_PR_LABELS =~ '.*CI: Skip All' )
benchmark_only_if_template: &BENCHMARK_ONLY_IF_TEMPLATE benchmark_only_if_template: &BENCHMARK_ONLY_IF_TEMPLATE
# only_if condition for cron-triggered benchmarking tests. # only_if condition for cron-triggered benchmarking tests.
@ -136,6 +136,10 @@ ci_template: &CI_TEMPLATE
# Evit some of the cached build artifacts not used in this build. # Evit some of the cached build artifacts not used in this build.
CCACHE_MAXSIZE=${ZEEK_CCACHE_PRUNE_SIZE} ccache -c CCACHE_MAXSIZE=${ZEEK_CCACHE_PRUNE_SIZE} ccache -c
# Always skip all tasks on a PR if the "CI: Skip All" label is applied.
skip: >
$CIRRUS_PR != '' && $CIRRUS_PR_LABELS =~ '.*CI: Skip All.*'
env: env:
CIRRUS_WORKING_DIR: /zeek CIRRUS_WORKING_DIR: /zeek
ZEEK_CI_CPUS: *CPUS ZEEK_CI_CPUS: *CPUS
@ -532,6 +536,8 @@ windows_task:
# Give verbose error output on a test failure. # Give verbose error output on a test failure.
CTEST_OUTPUT_ON_FAILURE: 1 CTEST_OUTPUT_ON_FAILURE: 1
<< : *BUILDS_ONLY_IF_TEMPLATE << : *BUILDS_ONLY_IF_TEMPLATE
skip: >
$CIRRUS_PR != '' && $CIRRUS_PR_LABELS =~ '.*CI: Skip All.*'
# Container images # Container images

View file

@ -16,7 +16,7 @@ jobs:
generate: generate:
permissions: permissions:
contents: write # for Git to git push contents: write # for Git to git push
if: github.repository == 'zeek/zeek' if: "github.repository == 'zeek/zeek' && contains(github.event.pull_request.labels.*.name, 'CI: Skip All') == false"
runs-on: ubuntu-24.04 runs-on: ubuntu-24.04
steps: steps: