From db772a058ce0b95e91314933bcae48c169dd1092 Mon Sep 17 00:00:00 2001 From: Elliot DeNolf Date: Wed, 22 May 2024 09:09:52 -0400 Subject: [PATCH] chore: add label-author.yml --- .github/workflows/label-author.yml | 50 ++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 .github/workflows/label-author.yml diff --git a/.github/workflows/label-author.yml b/.github/workflows/label-author.yml new file mode 100644 index 000000000..84ba98322 --- /dev/null +++ b/.github/workflows/label-author.yml @@ -0,0 +1,50 @@ +name: label-author + +on: + pull_request: + types: [opened] + issues: + types: [opened] + +permissions: + contents: read + pull-requests: write + issues: write + +jobs: + debug-context: + runs-on: ubuntu-latest + steps: + - name: View context attributes + uses: actions/github-script@v7 + with: + script: console.log(context) + + label-created-by: + name: Label pr/issue on opening + runs-on: ubuntu-latest + steps: + - name: Tag with 'created-by' + uses: actions/github-script@v7 + if: github.event.action == 'opened' + with: + github-token: ${{ secrets.GITHUB_TOKEN }} + script: | + const type = context.payload.pull_request ? 'pull_request' : 'issue'; + const association = context.payload[type].author_association; + let label = '' + if (association === 'MEMBER' || association === 'OWNER') { + label = 'created-by: Payload team'; + } else if (association === 'CONTRIBUTOR') { + label = 'created-by: Contributor'; + } + + if (!label) return; + + github.rest.issues.addLabels({ + issue_number: context.issue.number, + owner: context.repo.owner, + repo: context.repo.repo, + labels: [label], + }); + console.log('Added created-by: Payload team label');