|
name: Check labels |
|
|
|
on: |
|
pull_request: |
|
types: [opened, reopened, labeled, unlabeled, synchronize] |
|
|
|
permissions: |
|
contents: read |
|
|
|
jobs: |
|
label-dnm: |
|
name: DO-NOT-MERGE |
|
if: github.repository_owner == 'python' |
|
runs-on: ubuntu-slim |
|
permissions: |
|
pull-requests: read |
|
timeout-minutes: 10 |
|
|
|
steps: |
|
- name: Check there's no DO-NOT-MERGE |
|
uses: mheap/github-action-required-labels@0ac283b4e65c1fb28ce6079dea5546ceca98ccbe # v5.5.2 |
|
with: |
|
mode: exactly |
|
count: 0 |
|
labels: | |
|
DO-NOT-MERGE |
|
|
|
label-reviews: |
|
name: Unresolved review |
|
if: github.repository_owner == 'python' |
|
runs-on: ubuntu-slim |
|
permissions: |
|
pull-requests: read |
|
timeout-minutes: 10 |
|
|
|
steps: |
|
# Check that the PR is not awaiting changes from the author due to previous review. |
|
- name: Check there's no required changes |
|
uses: mheap/github-action-required-labels@0ac283b4e65c1fb28ce6079dea5546ceca98ccbe # v5.5.2 |
|
with: |
|
mode: exactly |
|
count: 0 |
|
labels: | |
|
awaiting changes |
|
awaiting change review |
|
- id: is-feature |
|
name: Check whether this PR is a feature (contains a "type-feature" label) |
|
uses: mheap/github-action-required-labels@0ac283b4e65c1fb28ce6079dea5546ceca98ccbe # v5.5.2 |
|
with: |
|
mode: exactly |
|
count: 1 |
|
labels: | |
|
type-feature |
|
exit_type: success # don't fail the check if the PR is not a feature, just record the result |
|
# In case of a feature PR, check for a complete review (contains an "awaiting merge" label). |
|
- id: awaiting-merge |
|
if: steps.is-feature.outputs.status == 'success' |
|
name: Check for complete review |
|
uses: mheap/github-action-required-labels@0ac283b4e65c1fb28ce6079dea5546ceca98ccbe # v5.5.2 |
|
with: |
|
mode: exactly |
|
count: 1 |
|
labels: | |
|
awaiting merge |