Browse Source

ci(release): Add killswitch via issues w/ release-blocker label (#20248)

Implements https://app.asana.com/0/1169344595888357/1146357826982899/f which would cancel the workflow (stop the release) when the repo has open issues with the label 'release-blocker'.
Burak Yigit Kaya 4 years ago
parent
commit
6c367c6783
1 changed files with 7 additions and 0 deletions
  1. 7 0
      .github/workflows/release.yml

+ 7 - 0
.github/workflows/release.yml

@@ -22,6 +22,13 @@ jobs:
     runs-on: ubuntu-latest
     name: "Release a new version"
     steps:
+      - id: killswitch
+        if: ${{ !github.event.inputs.force }}
+        run: |
+          if curl -s "https://api.github.com/repos/$GITHUB_REPOSITORY/issues?state=open&labels=release-blocker" | grep -Pzvo '\[[\s\n\r]*\]'; then
+            echo "Open release-blocking issues found, cancelling release...";
+            curl -sf -X POST -H 'Accept: application/vnd.github.v3+json' -H 'Authorization: token ${{ secrets.GITHUB_TOKEN }}' https://api.github.com/repos/$GITHUB_REPOSITORY/actions/runs/${{ github.run_id }}/cancel;
+          fi
       - id: calver
         if: ${{ !github.event.inputs.version }}
         run: |