From 15c255a2e802609dbc15deedbfb00bf65668594b Mon Sep 17 00:00:00 2001 From: Michael Wilkerson Date: Tue, 7 Mar 2023 20:38:16 -0800 Subject: [PATCH 1/2] added a backport-checker GitHub action --- .github/workflows/backport-checker.yml | 32 ++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 .github/workflows/backport-checker.yml diff --git a/.github/workflows/backport-checker.yml b/.github/workflows/backport-checker.yml new file mode 100644 index 00000000000..88d1f4751df --- /dev/null +++ b/.github/workflows/backport-checker.yml @@ -0,0 +1,32 @@ +# This workflow checks that there is either a 'pr/no-backport' label applied to a PR +# or there is a backport/. label indicating a backport has been set + +name: Backport Checker + +on: + pull_request: + types: [opened, synchronize, labeled] + # Runs on PRs to main and all release branches + branches: + - main + - release/* + +jobs: + # checks that a backport label is present for a PR + backport-check: + # If there's a `pr/no-backport` label we ignore this check. Also, we ignore PRs created by the bot assigned to `backport-assistant` + if: "! ( contains(github.event.pull_request.labels.*.name, 'pr/no-backport') || github.event.pull_request.user.login == 'hc-github-team-consul-core' )" + runs-on: ubuntu-latest + + steps: + - name: Check for Backport Label + run: | + labels="${{join(github.event.pull_request.labels.*.name, ', ') }}" + if [[ "$labels" =~ .*"backport/".* ]]; then + echo "Found backport label!" + exit 0 + fi + # Fail status check when no backport label was found on the PR + echo "Did not find a backport label matching the pattern 'backport/*' and the 'pr/no-backport' label was not applied. Reference - https://github.com/hashicorp/consul/pull/16567" + exit 1 + From 49b51848715b420aab69cd7b9bed61cec04f06cc Mon Sep 17 00:00:00 2001 From: Michael Wilkerson <62034708+wilkermichael@users.noreply.github.com> Date: Wed, 8 Mar 2023 08:24:05 -0800 Subject: [PATCH 2/2] Update .github/workflows/backport-checker.yml Co-authored-by: Chris Thain <32781396+cthain@users.noreply.github.com> --- .github/workflows/backport-checker.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/backport-checker.yml b/.github/workflows/backport-checker.yml index 88d1f4751df..c9af23ea971 100644 --- a/.github/workflows/backport-checker.yml +++ b/.github/workflows/backport-checker.yml @@ -1,5 +1,5 @@ # This workflow checks that there is either a 'pr/no-backport' label applied to a PR -# or there is a backport/. label indicating a backport has been set +# or there is a backport/* label indicating a backport has been set name: Backport Checker