summaryrefslogtreecommitdiff
path: root/.github
diff options
context:
space:
mode:
authorMarc Hoersken <info@marc-hoersken.de>2022-09-17 23:45:32 +0200
committerMarc Hoersken <info@marc-hoersken.de>2022-09-19 21:21:04 +0200
commit4e6893307b0f0d8723c8136748ef76040e3a1991 (patch)
treec6526805f8f0785eac322eabeb55a2edb8cac529 /.github
parentfda897f5a17adda3250e069bfb43b2392bd8c7e8 (diff)
downloadcurl-4e6893307b0f0d8723c8136748ef76040e3a1991.tar.gz
CI/GHA: cancel outdated CI runs on new PR changes
Avoid letting outdated CI runs continue if a PR receives new changes. Outside a PR we let them continue running by tying the concurrency to the commit hash instead. Also only let one CodeQL or Hacktoberfest job run at a time. Other CI platforms we use have this build in, but GitHub unfortunately neither by default nor with a simple option. This saves CI resources and therefore a little energy. Approved-by: Daniel Stenberg Approved-by: Max Dymond Closes #9533
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/codeql-analysis.yml5
-rw-r--r--.github/workflows/fuzz.yml6
-rw-r--r--.github/workflows/hacktoberfest-accepted.yml6
-rw-r--r--.github/workflows/linkcheck.yml4
-rw-r--r--.github/workflows/linux.yml6
-rw-r--r--.github/workflows/macos.yml6
-rw-r--r--.github/workflows/msh3.yml7
-rw-r--r--.github/workflows/ngtcp2-gnutls.yml7
-rw-r--r--.github/workflows/ngtcp2-wolfssl.yml7
-rw-r--r--.github/workflows/openssl3.yml7
-rw-r--r--.github/workflows/proselint.yml4
-rw-r--r--.github/workflows/reuse.yml6
-rw-r--r--.github/workflows/torture.yml7
-rw-r--r--.github/workflows/wolfssl.yml7
14 files changed, 62 insertions, 23 deletions
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index 7309753bb..1d2792242 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -5,8 +5,6 @@
name: CodeQL
on:
- # Trigger the workflow on push or pull requests, but only for the
- # master branch
push:
branches:
- master
@@ -17,6 +15,9 @@ on:
schedule:
- cron: '0 0 * * 4'
+concurrency:
+ group: ${{ github.workflow }}
+
permissions:
security-events: write
diff --git a/.github/workflows/fuzz.yml b/.github/workflows/fuzz.yml
index c6512faf0..ca07fa699 100644
--- a/.github/workflows/fuzz.yml
+++ b/.github/workflows/fuzz.yml
@@ -5,8 +5,6 @@
name: Fuzzer
on:
- # Trigger the workflow on push or pull requests, but only for the
- # master branch
push:
branches:
- master
@@ -15,6 +13,10 @@ on:
branches:
- master
+concurrency:
+ group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}
+ cancel-in-progress: true
+
jobs:
fuzzing:
runs-on: ubuntu-latest
diff --git a/.github/workflows/hacktoberfest-accepted.yml b/.github/workflows/hacktoberfest-accepted.yml
index cb84ed989..59aca1218 100644
--- a/.github/workflows/hacktoberfest-accepted.yml
+++ b/.github/workflows/hacktoberfest-accepted.yml
@@ -5,11 +5,15 @@
name: Hacktoberfest
on:
- # run for all pushes to master branch
+ # this must not ever run on any other branch than master
push:
branches:
- master
+concurrency:
+ # this should not run in parallel, so just run one at a time
+ group: ${{ github.workflow }}
+
permissions:
# requires issues AND pull-requests write permissions to edit labels on PRs!
issues: write
diff --git a/.github/workflows/linkcheck.yml b/.github/workflows/linkcheck.yml
index 4517ef7c0..9ee7f04e1 100644
--- a/.github/workflows/linkcheck.yml
+++ b/.github/workflows/linkcheck.yml
@@ -19,6 +19,10 @@ on:
- '.github/workflows/linkcheck.yml'
- '**.md'
+concurrency:
+ group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}
+ cancel-in-progress: true
+
jobs:
# Docs: https://github.com/marketplace/actions/markdown-link-check
check:
diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml
index b2397f3cc..959e2bc1b 100644
--- a/.github/workflows/linux.yml
+++ b/.github/workflows/linux.yml
@@ -5,8 +5,6 @@
name: Linux
on:
- # Trigger the workflow on push or pull requests, but only for the
- # master branch
push:
branches:
- master
@@ -15,6 +13,10 @@ on:
branches:
- master
+concurrency:
+ group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}
+ cancel-in-progress: true
+
jobs:
autotools:
name: ${{ matrix.build.name }}
diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml
index ea87b8425..6fa5bfbe8 100644
--- a/.github/workflows/macos.yml
+++ b/.github/workflows/macos.yml
@@ -5,8 +5,6 @@
name: macOS
on:
- # Trigger the workflow on push or pull requests, but only for the
- # master branch
push:
branches:
- master
@@ -15,6 +13,10 @@ on:
branches:
- master
+concurrency:
+ group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}
+ cancel-in-progress: true
+
jobs:
autotools:
name: ${{ matrix.build.name }}
diff --git a/.github/workflows/msh3.yml b/.github/workflows/msh3.yml
index 6a061c701..b58be815a 100644
--- a/.github/workflows/msh3.yml
+++ b/.github/workflows/msh3.yml
@@ -5,8 +5,6 @@
name: Linux
on:
- # Trigger the workflow on push or pull requests, but only for the
- # master branch
push:
branches:
- master
@@ -15,6 +13,11 @@ on:
branches:
- master
+concurrency:
+ # Hardcoded workflow filename as workflow name above is just Linux again
+ group: msh3-${{ github.event.pull_request.number || github.sha }}
+ cancel-in-progress: true
+
jobs:
autotools:
name: ${{ matrix.build.name }}
diff --git a/.github/workflows/ngtcp2-gnutls.yml b/.github/workflows/ngtcp2-gnutls.yml
index fcd209f4b..41a414981 100644
--- a/.github/workflows/ngtcp2-gnutls.yml
+++ b/.github/workflows/ngtcp2-gnutls.yml
@@ -5,8 +5,6 @@
name: ngtcp2
on:
- # Trigger the workflow on push or pull requests, but only for the
- # master branch
push:
branches:
- master
@@ -15,6 +13,11 @@ on:
branches:
- master
+concurrency:
+ # Hardcoded workflow filename as workflow name above is just Linux again
+ group: ngtcp2-gnutls-${{ github.event.pull_request.number || github.sha }}
+ cancel-in-progress: true
+
jobs:
autotools:
name: ${{ matrix.build.name }}
diff --git a/.github/workflows/ngtcp2-wolfssl.yml b/.github/workflows/ngtcp2-wolfssl.yml
index 1c25283bb..da6594aa2 100644
--- a/.github/workflows/ngtcp2-wolfssl.yml
+++ b/.github/workflows/ngtcp2-wolfssl.yml
@@ -5,8 +5,6 @@
name: ngtcp2
on:
- # Trigger the workflow on push or pull requests, but only for the
- # master branch
push:
branches:
- master
@@ -15,6 +13,11 @@ on:
branches:
- master
+concurrency:
+ # Hardcoded workflow filename as workflow name above is just Linux again
+ group: ngtcp2-wolfssl-${{ github.event.pull_request.number || github.sha }}
+ cancel-in-progress: true
+
jobs:
autotools:
name: ${{ matrix.build.name }}
diff --git a/.github/workflows/openssl3.yml b/.github/workflows/openssl3.yml
index 783810407..a0881722d 100644
--- a/.github/workflows/openssl3.yml
+++ b/.github/workflows/openssl3.yml
@@ -5,8 +5,6 @@
name: Linux
on:
- # Trigger the workflow on push or pull requests, but only for the
- # master branch
push:
branches:
- master
@@ -15,6 +13,11 @@ on:
branches:
- master
+concurrency:
+ # Hardcoded workflow filename as workflow name above is just Linux again
+ group: openssl3-${{ github.event.pull_request.number || github.sha }}
+ cancel-in-progress: true
+
jobs:
autotools:
name: ${{ matrix.build.name }}
diff --git a/.github/workflows/proselint.yml b/.github/workflows/proselint.yml
index 3152a48d0..c7b32ccae 100644
--- a/.github/workflows/proselint.yml
+++ b/.github/workflows/proselint.yml
@@ -19,6 +19,10 @@ on:
- '.github/workflows/proselint.yml'
- '**.md'
+concurrency:
+ group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}
+ cancel-in-progress: true
+
jobs:
check:
runs-on: ubuntu-latest
diff --git a/.github/workflows/reuse.yml b/.github/workflows/reuse.yml
index 23e019fc8..c9fb48ca6 100644
--- a/.github/workflows/reuse.yml
+++ b/.github/workflows/reuse.yml
@@ -6,8 +6,6 @@
name: REUSE compliance
on:
- # Trigger the workflow on push or pull requests, but only for the
- # master branch
push:
branches:
- master
@@ -16,6 +14,10 @@ on:
branches:
- master
+concurrency:
+ group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}
+ cancel-in-progress: true
+
jobs:
check:
runs-on: ubuntu-latest
diff --git a/.github/workflows/torture.yml b/.github/workflows/torture.yml
index c73a4aee5..706f5530e 100644
--- a/.github/workflows/torture.yml
+++ b/.github/workflows/torture.yml
@@ -5,8 +5,6 @@
name: Linux
on:
- # Trigger the workflow on push or pull requests, but only for the
- # master branch
push:
branches:
- master
@@ -15,6 +13,11 @@ on:
branches:
- master
+concurrency:
+ # Hardcoded workflow filename as workflow name above is just Linux again
+ group: torture-${{ github.event.pull_request.number || github.sha }}
+ cancel-in-progress: true
+
jobs:
autotools:
name: ${{ matrix.build.name }}
diff --git a/.github/workflows/wolfssl.yml b/.github/workflows/wolfssl.yml
index aa08a7901..d6bd0aded 100644
--- a/.github/workflows/wolfssl.yml
+++ b/.github/workflows/wolfssl.yml
@@ -5,8 +5,6 @@
name: Linux
on:
- # Trigger the workflow on push or pull requests, but only for the
- # master branch
push:
branches:
- master
@@ -15,6 +13,11 @@ on:
branches:
- master
+concurrency:
+ # Hardcoded workflow filename as workflow name above is just Linux again
+ group: wolfssl-${{ github.event.pull_request.number || github.sha }}
+ cancel-in-progress: true
+
jobs:
autotools:
name: ${{ matrix.build.name }}