2024-01-30 12:30:55 -05:00
|
|
|
name: Hold Label Check
|
|
|
|
|
|
|
|
on:
|
|
|
|
pull_request:
|
|
|
|
types: [labeled, unlabeled, opened, reopened, synchronize]
|
|
|
|
|
2024-02-01 10:08:41 -05:00
|
|
|
# cancel previous workflow jobs for PRs
|
|
|
|
concurrency:
|
|
|
|
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.run_id }}
|
|
|
|
cancel-in-progress: true
|
|
|
|
|
2024-01-30 12:30:55 -05:00
|
|
|
jobs:
|
|
|
|
check-hold-label:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: Check for 'hold' label
|
2024-02-01 10:09:10 -05:00
|
|
|
uses: actions/github-script@v7
|
2024-01-30 12:30:55 -05:00
|
|
|
with:
|
|
|
|
github-token: ${{secrets.GITHUB_TOKEN}}
|
|
|
|
script: |
|
|
|
|
const payload = context.payload.pull_request
|
|
|
|
const holdLabelPresent = !!payload.labels.find(label => label.name.includes('hold'))
|
|
|
|
if (holdLabelPresent) {
|
|
|
|
core.setFailed('Hold label is present, merge is blocked.')
|
|
|
|
}
|