Skip to content

Commit b88976b

Browse files
committed
Make remove-label workflow boxes more clear
1 parent 8285152 commit b88976b

3 files changed

Lines changed: 16 additions & 28 deletions

File tree

.github/workflows/remove-labels.yml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,27 +4,27 @@ on:
44
workflow_dispatch:
55
inputs:
66
run_on_issues:
7-
description: "Remove the label from issues in the configured repository set"
7+
description: "Remove from Issues"
88
required: true
99
type: boolean
1010
default: true
11-
closed_only:
12-
description: "When Run on Issues is enabled, only target closed issues"
11+
target_only_closed_issues:
12+
description: "Target Only Closed Issues"
1313
required: true
1414
type: boolean
1515
default: false
1616
run_on_pull_requests:
17-
description: "Remove the label from pull requests in the configured repository set"
17+
description: "Remove from Pull Requests"
1818
required: true
1919
type: boolean
2020
default: false
21-
merged_only:
22-
description: "When Run on Pull Requests is enabled, only target merged pull requests"
21+
target_only_closed_pull_requests:
22+
description: "Target Only Closed Pull Requests"
2323
required: true
2424
type: boolean
2525
default: false
2626
label_name:
27-
description: "Exact label name to remove"
27+
description: "Exact Name of Label:"
2828
required: true
2929
type: string
3030

@@ -59,8 +59,8 @@ jobs:
5959
env:
6060
LABEL_SYNC_TOKEN: ${{ secrets[steps.properties.outputs.label_sync_token_secret_name] }}
6161
RUN_ON_ISSUES: ${{ inputs.run_on_issues }}
62-
CLOSED_ONLY: ${{ inputs.closed_only }}
62+
TARGET_ONLY_CLOSED_ISSUES: ${{ inputs.target_only_closed_issues }}
6363
RUN_ON_PULL_REQUESTS: ${{ inputs.run_on_pull_requests }}
64-
MERGED_ONLY: ${{ inputs.merged_only }}
64+
TARGET_ONLY_CLOSED_PULL_REQUESTS: ${{ inputs.target_only_closed_pull_requests }}
6565
LABEL_NAME: ${{ inputs.label_name }}
6666
run: node scripts/remove-labels.mjs

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -236,9 +236,9 @@ Trigger:
236236
Inputs:
237237

238238
- `run_on_issues`: remove the label from matching issues
239-
- `closed_only`: when `run_on_issues` is enabled, only target closed issues
239+
- `target_only_closed_issues`: when `run_on_issues` is enabled, only target closed issues
240240
- `run_on_pull_requests`: remove the label from matching pull requests
241-
- `merged_only`: when `run_on_pull_requests` is enabled, only target merged pull requests
241+
- `target_only_closed_pull_requests`: when `run_on_pull_requests` is enabled, only target closed pull requests
242242
- `label_name`: exact label name to remove
243243

244244
What it does:
@@ -252,7 +252,7 @@ What it does:
252252

253253
Notes:
254254

255-
- GitHub Actions does not currently support conditionally hiding or nesting `workflow_dispatch` inputs, so `closed_only` and `merged_only` can be described as dependent toggles but not visually tucked under their parent checkboxes.
255+
- GitHub Actions does not currently support conditionally hiding or nesting `workflow_dispatch` inputs, so the closed-only toggles can be described as dependent but not visually tucked under their parent checkboxes.
256256

257257
## Token Requirements
258258

scripts/remove-labels.mjs

Lines changed: 4 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,9 @@ const repositoryFilterPath = path.join(workspaceRoot, "config", "repository-filt
77

88
const validateOnly = process.argv.includes("--validate-only");
99
const runOnIssues = parseBoolean(process.env.RUN_ON_ISSUES);
10-
const closedOnly = parseBoolean(process.env.CLOSED_ONLY) ?? false;
10+
const targetOnlyClosedIssues = parseBoolean(process.env.TARGET_ONLY_CLOSED_ISSUES) ?? false;
1111
const runOnPullRequests = parseBoolean(process.env.RUN_ON_PULL_REQUESTS);
12-
const mergedOnly = parseBoolean(process.env.MERGED_ONLY) ?? false;
12+
const targetOnlyClosedPullRequests = parseBoolean(process.env.TARGET_ONLY_CLOSED_PULL_REQUESTS) ?? false;
1313
const labelName = (process.env.LABEL_NAME ?? "").trim();
1414

1515
function parseBoolean(value) {
@@ -182,10 +182,6 @@ function findMatchingLabel(issueOrPullRequest, requestedLabel) {
182182
return labels.find((label) => label && typeof label.name === "string" && normalizeName(label.name) === requestedKey) ?? null;
183183
}
184184

185-
async function getPullRequestDetails(token, repositoryFullName, number) {
186-
return githubRequest(token, "GET", `/repos/${repositoryFullName}/pulls/${number}`);
187-
}
188-
189185
async function removeLabelFromIssue(token, repositoryFullName, number, actualLabelName) {
190186
await githubRequest(
191187
token,
@@ -195,7 +191,7 @@ async function removeLabelFromIssue(token, repositoryFullName, number, actualLab
195191
}
196192

197193
async function processIssues(token, repository, requestedLabel) {
198-
const state = closedOnly ? "closed" : "all";
194+
const state = targetOnlyClosedIssues ? "closed" : "all";
199195
const candidates = await getLabelledIssues(token, repository.full_name, state, requestedLabel);
200196
const issues = candidates.filter((item) => !item.pull_request);
201197
let removed = 0;
@@ -216,7 +212,7 @@ async function processIssues(token, repository, requestedLabel) {
216212
}
217213

218214
async function processPullRequests(token, repository, requestedLabel) {
219-
const state = mergedOnly ? "closed" : "all";
215+
const state = targetOnlyClosedPullRequests ? "closed" : "all";
220216
const candidates = await getLabelledIssues(token, repository.full_name, state, requestedLabel);
221217
const pullRequests = candidates.filter((item) => item.pull_request);
222218
let removed = 0;
@@ -228,14 +224,6 @@ async function processPullRequests(token, repository, requestedLabel) {
228224
continue;
229225
}
230226

231-
if (mergedOnly) {
232-
const details = await getPullRequestDetails(token, repository.full_name, pullRequest.number);
233-
234-
if (!details.merged_at) {
235-
continue;
236-
}
237-
}
238-
239227
await removeLabelFromIssue(token, repository.full_name, pullRequest.number, matchingLabel.name);
240228
removed += 1;
241229
console.log(` Removed "${matchingLabel.name}" from pull request #${pullRequest.number}`);

0 commit comments

Comments
 (0)