Skip to content

Commit 018e39b

Browse files
committed
build: remove review-related labels when marked as ready to merge
1 parent 5a1cea2 commit 018e39b

File tree

1 file changed

+25
-3
lines changed

1 file changed

+25
-3
lines changed

.github/workflows/labeler.yml

Lines changed: 25 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ on:
3131
- review_request_removed
3232
- ready_for_review
3333
- converted_to_draft
34+
- labeled
3435

3536
# Workflow jobs:
3637
jobs:
@@ -75,7 +76,7 @@ jobs:
7576
'owner': context.repo.owner,
7677
'repo': context.repo.repo,
7778
'issue_number': context.payload.pull_request.number,
78-
'labels': ['Needs Review'],
79+
'labels': [ 'Needs Review' ]
7980
})
8081
8182
# Add "Needs Review" label when PR is marked ready for review:
@@ -90,7 +91,7 @@ jobs:
9091
'owner': context.repo.owner,
9192
'repo': context.repo.repo,
9293
'issue_number': context.payload.pull_request.number,
93-
'labels': ['Needs Review'],
94+
'labels': [ 'Needs Review' ]
9495
})
9596
9697
# Remove "Needs Review" label when PR is converted to draft or closed:
@@ -106,8 +107,29 @@ jobs:
106107
'owner': context.repo.owner,
107108
'repo': context.repo.repo,
108109
'issue_number': context.payload.pull_request.number,
109-
'name': 'Needs Review',
110+
'name': 'Needs Review'
110111
})
111112
} catch ( error ) {
112113
console.log( 'Error removing label: %s', error.message );
113114
}
115+
116+
# Remove "Needs Review" and "Needs Changes" labels when "Ready To Merge" is assigned:
117+
- name: 'Remove "Needs Review" and "Needs Changes" labels when "Ready To Merge" is assigned'
118+
if: ${{ github.event.action == 'labeled' && github.event.label.name == 'Ready To Merge' }}
119+
uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1
120+
with:
121+
github-token: ${{ secrets.CHATBOT_GITHUB_TOKEN }}
122+
script: |
123+
const labelsToRemove = [ 'Needs Review', 'Needs Changes' ];
124+
for ( const label of labelsToRemove ) {
125+
try {
126+
await github.rest.issues.removeLabel({
127+
'owner': context.repo.owner,
128+
'repo': context.repo.repo,
129+
'issue_number': context.payload.pull_request.number,
130+
'name': label
131+
})
132+
} catch ( error ) {
133+
console.log( 'Error removing label %s: %s', label, error.message );
134+
}
135+
}

0 commit comments

Comments
 (0)