Code format split #45
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: "Labelling new pull requests" | |
permissions: | |
contents: read | |
on: | |
# It's safe to use pull_request_target here, because we aren't checking out | |
# code from the pull request branch. | |
# See https://securitylab.github.com/research/github-actions-preventing-pwn-requests/ | |
pull_request_target: | |
types: | |
- opened | |
- reopened | |
- ready_for_review | |
- synchronize | |
jobs: | |
greeter: | |
runs-on: ubuntu-latest | |
permissions: | |
pull-requests: write | |
# Only comment on PRs that have been opened for the first time, by someone | |
# new to LLVM or to GitHub as a whole. Ideally we'd look for FIRST_TIMER | |
# or FIRST_TIME_CONTRIBUTOR, but this does not appear to work. Instead check | |
# that we do not have any of the other author associations. | |
# See https://docs.github.com/en/webhooks/webhook-events-and-payloads?actionType=opened#pull_request | |
# for all the possible values. | |
if: >- | |
(github.repository == 'llvm/llvm-project') && | |
(github.event.action == 'opened') && | |
(github.event.pull_request.author_association != 'COLLABORATOR') && | |
(github.event.pull_request.author_association != 'CONTRIBUTOR') && | |
(github.event.pull_request.author_association != 'MANNEQUIN') && | |
(github.event.pull_request.author_association != 'MEMBER') && | |
(github.event.pull_request.author_association != 'OWNER') | |
steps: | |
- name: Setup Automation Script | |
run: | | |
curl -O -L --fail https://raw.githubusercontent.com/"$GITHUB_REPOSITORY"/main/llvm/utils/git/github-automation.py | |
curl -O -L --fail https://raw.githubusercontent.com/"$GITHUB_REPOSITORY"/main/llvm/utils/git/requirements.txt | |
chmod a+x github-automation.py | |
pip install -r requirements.txt | |
- name: Greet Author | |
run: | | |
./github-automation.py \ | |
--token '${{ secrets.GITHUB_TOKEN }}' \ | |
pr-greeter \ | |
--issue-number "${{ github.event.pull_request.number }}" | |
automate-prs-labels: | |
# Greet first so that only the author gets that notification. | |
needs: greeter | |
runs-on: ubuntu-latest | |
# Ignore PRs with more than 10 commits. Pull requests with a lot of | |
# commits tend to be accidents usually when someone made a mistake while trying | |
# to rebase. We want to ignore these pull requests to avoid excessive | |
# notifications. | |
# always() means that even if greeter is skipped, this job will run. | |
if: > | |
always() && github.repository == 'llvm/llvm-project' && | |
github.event.pull_request.draft == false && | |
github.event.pull_request.commits < 10 | |
steps: | |
- uses: actions/labeler@v4 | |
with: | |
configuration-path: .github/new-prs-labeler.yml | |
# workaround for https://github.com/actions/labeler/issues/112 | |
sync-labels: '' | |
repo-token: ${{ secrets.ISSUE_SUBSCRIBER_TOKEN }} |