[llvm] workflows/premerge: Cancel in progress jobs when a PR is merged (PR #125329)
via llvm-commits
llvm-commits at lists.llvm.org
Fri Jan 31 19:11:31 PST 2025
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-github-workflow
Author: Tom Stellard (tstellar)
<details>
<summary>Changes</summary>
---
Full diff: https://github.com/llvm/llvm-project/pull/125329.diff
1 Files Affected:
- (modified) .github/workflows/premerge.yaml (+17-3)
``````````diff
diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml
index 91aa3eefde372c..b268f1faab9890 100644
--- a/.github/workflows/premerge.yaml
+++ b/.github/workflows/premerge.yaml
@@ -5,6 +5,15 @@ permissions:
on:
pull_request:
+ types:
+ - opened
+ - synchronize
+ - reopened
+ # When a PR is closed, we still start this workflow, but then skip
+ # all the jobs, which makes it effectively a no-op. The reason to
+ # do this is that it allows us to take advantage of concurrency groups
+ # to cancel in progress CI jobs whenever the PR is closed.
+ - closed
paths:
- .github/workflows/premerge.yaml
push:
@@ -14,7 +23,9 @@ on:
jobs:
premerge-checks-linux:
- if: github.repository_owner == 'llvm'
+ if: >-
+ github.repository_owner == 'llvm' &&
+ (github.event_name != 'pull_request' || github.event.action != 'closed')
runs-on: llvm-premerge-linux-runners
concurrency:
group: ${{ github.workflow }}-linux-${{ github.event.pull_request.number || github.sha }}
@@ -73,7 +84,9 @@ jobs:
./.ci/monolithic-linux.sh "$(echo ${linux_projects} | tr ' ' ';')" "$(echo ${linux_check_targets})" "$(echo ${linux_runtimes} | tr ' ' ';')" "$(echo ${linux_runtime_check_targets})"
premerge-checks-windows:
- if: github.repository_owner == 'llvm'
+ if: >-
+ github.repository_owner == 'llvm' &&
+ (github.event_name != 'pull_request' || github.event.action != 'closed')
runs-on: llvm-premerge-windows-runners
concurrency:
group: ${{ github.workflow }}-windows-${{ github.event.pull_request.number || github.sha }}
@@ -141,7 +154,8 @@ jobs:
if: >-
github.repository_owner == 'llvm' &&
(startswith(github.ref_name, 'release/') ||
- startswith(github.base_ref, 'release/'))
+ startswith(github.base_ref, 'release/')) &&
+ (github.event_name != 'pull_request' || github.event.action != 'closed')
steps:
- name: Checkout LLVM
uses: actions/checkout at v4
``````````
</details>
https://github.com/llvm/llvm-project/pull/125329
More information about the llvm-commits
mailing list