From 6f026c4e96b9c5020dbc2bf88a1fd0ec0dee5c51 Mon Sep 17 00:00:00 2001 From: azanello Date: Sun, 20 Oct 2024 14:01:39 -0300 Subject: [PATCH 1/2] Create Issue Template Enforcement This is to close automatically every ticket that bypass the Github Issue Form template like Spamming Bots --- .github/workflows/enforce_issue_template.yml | 53 ++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 .github/workflows/enforce_issue_template.yml diff --git a/.github/workflows/enforce_issue_template.yml b/.github/workflows/enforce_issue_template.yml new file mode 100644 index 0000000..06fa903 --- /dev/null +++ b/.github/workflows/enforce_issue_template.yml @@ -0,0 +1,53 @@ +name: Enforce Issue Template + +on: + issues: + types: [opened] + +permissions: + issues: write + +jobs: + enforce-template: + runs-on: ubuntu-latest + steps: + - name: Check if issue was created via the issue form + uses: actions/github-script@v6 + with: + github-token: ${{ secrets.GITHUB_TOKEN }} + script: | + const issueBody = context.payload.issue.body; + + + // Define required sections for the bug report template + const requiredSections = [ + '### Current Behavior', + '### Expected Behavior', + '### Steps to Reproduce', + '### Bug Report Code (Required)', + '### Visual documentation', + '### Environment' + ]; + + // Check if all required sections are present + const missingSections = requiredSections.filter(section => !issueBody.includes(section)); + + if (missingSections.length > 0) { + // Post a comment explaining why the issue is being closed + await github.rest.issues.createComment({ + owner: context.repo.owner, + repo: context.repo.repo, + issue_number: context.issue.number, + body: `Thank you for opening an issue. However, it appears that you did not use our issue form. Please resubmit your issue using the provided issue form so we have all the necessary information to assist you. This issue will now be closed.`, + }); + + // Close the issue + await github.rest.issues.update({ + owner: context.repo.owner, + repo: context.repo.repo, + issue_number: context.issue.number, + state: 'closed', + }); + } else { + console.log('Issue contains all required sections.'); + } From eb2da03582a4d353aeaa9c380ba19efb20c35aa1 Mon Sep 17 00:00:00 2001 From: azanello Date: Mon, 21 Oct 2024 08:18:47 -0300 Subject: [PATCH 2/2] Opened & Edited issues --- .github/workflows/enforce_issue_template.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/enforce_issue_template.yml b/.github/workflows/enforce_issue_template.yml index 06fa903..e68b555 100644 --- a/.github/workflows/enforce_issue_template.yml +++ b/.github/workflows/enforce_issue_template.yml @@ -2,7 +2,7 @@ name: Enforce Issue Template on: issues: - types: [opened] + types: [opened, edited] permissions: issues: write