-
Notifications
You must be signed in to change notification settings - Fork 2.3k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* chore: auto close issues Signed-off-by: knqyf263 <[email protected]> * chore: add state_reason * docs: add a warning message about issues Signed-off-by: knqyf263 <[email protected]> --------- Signed-off-by: knqyf263 <[email protected]>
- Loading branch information
Showing
2 changed files
with
50 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
name: Auto-close issues | ||
|
||
on: | ||
issues: | ||
types: [opened] | ||
|
||
jobs: | ||
close_issue: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Close issue if user does not have write or admin permissions | ||
uses: actions/github-script@v6 | ||
with: | ||
script: | | ||
// Get the issue creator's username | ||
const issueCreator = context.payload.issue.user.login; | ||
// Check the user's permissions for the repository | ||
const repoPermissions = await github.rest.repos.getCollaboratorPermissionLevel({ | ||
owner: context.repo.owner, | ||
repo: context.repo.repo, | ||
username: issueCreator | ||
}); | ||
const permission = repoPermissions.data.permission; | ||
// If the user does not have write or admin permissions, leave a comment and close the issue | ||
if (permission !== 'write' && permission !== 'admin') { | ||
const commentBody = "Please see https://aquasecurity.github.io/trivy/latest/community/contribute/issue/"; | ||
await github.rest.issues.createComment({ | ||
owner: context.repo.owner, | ||
repo: context.repo.repo, | ||
issue_number: context.payload.issue.number, | ||
body: commentBody | ||
}); | ||
await github.rest.issues.update({ | ||
owner: context.repo.owner, | ||
repo: context.repo.repo, | ||
issue_number: context.payload.issue.number, | ||
state: 'closed', | ||
state_reason: 'not_planned' | ||
}); | ||
console.log(`Issue #${context.payload.issue.number} closed because ${issueCreator} does not have sufficient permissions.`); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,7 @@ | ||
# Issues | ||
Thank you for taking interest in contributing to Trivy! | ||
|
||
Trivy uses [GitHub Discussion](./discussion.md) for bug reports, feature requests, and questions. | ||
Trivy uses [GitHub Discussion](./discussion.md) for bug reports, feature requests, and questions. | ||
|
||
!!! warning | ||
Issues created by non-maintainers will be immediately closed. |