diff options
-rw-r--r-- | .github/CODEOWNERS | 3 | ||||
-rw-r--r-- | .github/workflows/labeler.yml | 65 |
2 files changed, 65 insertions, 3 deletions
diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS deleted file mode 100644 index 7d41c17894..0000000000 --- a/.github/CODEOWNERS +++ /dev/null @@ -1,3 +0,0 @@ -/.github/ @jamessan -/ci/ @jamessan -/scripts/ @jamessan diff --git a/.github/workflows/labeler.yml b/.github/workflows/labeler.yml index 3de0c453a5..7cf6c18aed 100644 --- a/.github/workflows/labeler.yml +++ b/.github/workflows/labeler.yml @@ -32,3 +32,68 @@ jobs: - name: "Extract commit scope and add as label" continue-on-error: true run: gh pr edit "$PR_NUMBER" --add-label "$(echo "$PR_TITLE" | sed -E 's|[[:alpha:]]+\((.+)\)!?:.*|\1|')" + + add-reviewer: + runs-on: ubuntu-latest + needs: ["triage", "type-scope"] + permissions: + contents: write + pull-requests: write + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GH_REPO: ${{ github.repository }} + PR_NUMBER: ${{ github.event.pull_request.number }} + + steps: + - name: Get labels + id: labels + run: echo "::set-output name=labels::$(gh pr view $PR_NUMBER --json labels --jq '.labels.[].name' | tr '\n' '%')" + + # The % at the end of the label is a hack to avoid selecting a label that + # is substring of another label. So if there is a label "cinema" then we + # don't accidentally want to interpret that as the label "ci" + + - if: contains(steps.labels.outputs.labels, 'api%') + run: gh pr edit $PR_NUMBER --add-reviewer bfredl,gpanders,muniter + + - if: contains(steps.labels.outputs.labels, 'ci%') + run: gh pr edit $PR_NUMBER --add-reviewer jamessan + + - if: contains(steps.labels.outputs.labels, 'diagnostic%') + run: gh pr edit $PR_NUMBER --add-reviewer gpanders + + - if: contains(steps.labels.outputs.labels, 'distribution%') + run: gh pr edit $PR_NUMBER --add-reviewer jamessan + + - if: contains(steps.labels.outputs.labels, 'documentation%') + run: gh pr edit $PR_NUMBER --add-reviewer clason + + - if: contains(steps.labels.outputs.labels, 'extmarks%') + run: gh pr edit $PR_NUMBER --add-reviewer bfredl + + - if: contains(steps.labels.outputs.labels, 'filetype%') + run: gh pr edit $PR_NUMBER --add-reviewer clason,gpanders + + - if: contains(steps.labels.outputs.labels, 'gui%') + run: gh pr edit $PR_NUMBER --add-reviewer glacambre,smolck + + - if: contains(steps.labels.outputs.labels, 'platform:windows%') + run: gh pr edit $PR_NUMBER --add-reviewer erw7 + + - if: contains(steps.labels.outputs.labels, 'lsp%') + run: gh pr edit $PR_NUMBER --add-reviewer mfussenegger,mjlbach + + - if: contains(steps.labels.outputs.labels, 'terminal%') + run: gh pr edit $PR_NUMBER --add-reviewer erw7 + + - if: contains(steps.labels.outputs.labels, 'treesitter%') + run: gh pr edit $PR_NUMBER --add-reviewer bfredl,vigoux + + - if: contains(steps.labels.outputs.labels, 'typo%') + run: gh pr edit $PR_NUMBER --add-reviewer dundargoc + + - if: contains(steps.labels.outputs.labels, 'ui%') + run: gh pr edit $PR_NUMBER --add-reviewer bfredl + + - if: contains(steps.labels.outputs.labels, 'vim-patch%') + run: gh pr edit $PR_NUMBER --add-reviewer janlazo,seandewar |