Skip to content

Commit

Permalink
Explain misconfigured workflow (#405)
Browse files Browse the repository at this point in the history
Fixes #136
  • Loading branch information
jsoref authored Jun 19, 2023
1 parent fe87e60 commit b5ff161
Show file tree
Hide file tree
Showing 3 changed files with 41 additions and 10 deletions.
22 changes: 18 additions & 4 deletions dist/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -76,11 +76,25 @@ function run() {
labelsToRemove.push(label);
}
}
if (labels.length > 0) {
yield addLabels(client, prNumber, labels);
try {
if (labels.length > 0) {
yield addLabels(client, prNumber, labels);
}
if (syncLabels && labelsToRemove.length) {
yield removeLabels(client, prNumber, labelsToRemove);
}
}
if (syncLabels && labelsToRemove.length) {
yield removeLabels(client, prNumber, labelsToRemove);
catch (error) {
if (error.name === 'HttpError' &&
error.message === 'Resource not accessible by integration') {
core.warning(`The action requires write permission to add labels to pull requests. For more information please refer to the action documentation: https://github.com/actions/labeler#permissions`, {
title: `${process.env['GITHUB_ACTION_REPOSITORY']} running under '${github.context.eventName}' is misconfigured`
});
core.setFailed(error.message);
}
else {
throw error;
}
}
}
catch (error) {
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "labeler",
"version": "4.0.1",
"version": "4.1.0",
"description": "Labels pull requests by files altered",
"main": "lib/main.js",
"scripts": {
Expand Down
27 changes: 22 additions & 5 deletions src/labeler.ts
Original file line number Diff line number Diff line change
Expand Up @@ -50,12 +50,29 @@ export async function run() {
}
}

if (labels.length > 0) {
await addLabels(client, prNumber, labels);
}
try {
if (labels.length > 0) {
await addLabels(client, prNumber, labels);
}

if (syncLabels && labelsToRemove.length) {
await removeLabels(client, prNumber, labelsToRemove);
if (syncLabels && labelsToRemove.length) {
await removeLabels(client, prNumber, labelsToRemove);
}
} catch (error: any) {
if (
error.name === 'HttpError' &&
error.message === 'Resource not accessible by integration'
) {
core.warning(
`The action requires write permission to add labels to pull requests. For more information please refer to the action documentation: https://github.com/actions/labeler#permissions`,
{
title: `${process.env['GITHUB_ACTION_REPOSITORY']} running under '${github.context.eventName}' is misconfigured`
}
);
core.setFailed(error.message);
} else {
throw error;
}
}
} catch (error: any) {
core.error(error);
Expand Down

0 comments on commit b5ff161

Please sign in to comment.