From cd94462f71992ce4e2ea09d658218beeea0475e0 Mon Sep 17 00:00:00 2001 From: "Hunter T." Date: Tue, 22 Sep 2026 12:16:07 -0700 Subject: [PATCH] chore(issue-templates): implement structured issue forms Migrate bug report and feature request templates to YAML-based GitHub Forms. This change introduces structured forms for bug reports, feature requests, and a new template for documentation suggestions. It provides specific input fields, dropdowns, and guidance to improve the issue reporting experience and ensure necessary information is captured upfront. Blank issues are now disabled, and a direct link to the script documentation has been added to the issue template chooser. --- .github/ISSUE_TEMPLATE/bug_report.md | 32 --------- .github/ISSUE_TEMPLATE/bug_report.yml | 82 ++++++++++++++++++++++ .github/ISSUE_TEMPLATE/config.yml | 5 ++ .github/ISSUE_TEMPLATE/documentation.yml | 46 ++++++++++++ .github/ISSUE_TEMPLATE/feature_request.md | 20 ------ .github/ISSUE_TEMPLATE/feature_request.yml | 64 +++++++++++++++++ 6 files changed, 197 insertions(+), 52 deletions(-) delete mode 100644 .github/ISSUE_TEMPLATE/bug_report.md create mode 100644 .github/ISSUE_TEMPLATE/bug_report.yml create mode 100644 .github/ISSUE_TEMPLATE/config.yml create mode 100644 .github/ISSUE_TEMPLATE/documentation.yml delete mode 100644 .github/ISSUE_TEMPLATE/feature_request.md create mode 100644 .github/ISSUE_TEMPLATE/feature_request.yml diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md deleted file mode 100644 index 9176b45..0000000 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ /dev/null @@ -1,32 +0,0 @@ ---- -name: Bug report -about: Create a report to help us improve -title: '' -labels: awaiting review, bug -assignees: StrangeRanger - ---- - -**Describe the bug** -A clear and concise description of what the bug is. - -**To Reproduce** -Steps to reproduce the behavior: -1. Go to '...' -2. Click on '....' -3. Scroll down to '....' -4. See error - -**Expected behavior** -A clear and concise description of what you expected to happen. - -**Screenshots** -If applicable, add screenshots to help explain your problem. - -**Setup (please complete the following information):** -- Linux Distro/Version: [e.g. Ubuntu 24.04] -- Script(s) Name: [e.g. `sshd.bash`] -- Script(s) Version: [e.g. v1.0.0] - -**Additional context** -Add any other context about the problem here. diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml new file mode 100644 index 0000000..e96d507 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -0,0 +1,82 @@ +name: Bug Report +description: Report a problem with an auditing or hardening script. +labels: ["awaiting review", "bug"] + +body: + - type: dropdown + id: component + attributes: + label: Affected Script + description: Select the script involved. + options: + - Lynis Installer + - Root Locker + - SSHD Hardening + - UFW Cloudflare + - Nginx WAF + validations: + required: true + + - type: textarea + id: problem + attributes: + label: Bug Description + description: Describe the problem and its impact. + validations: + required: true + + - type: textarea + id: reproduction + attributes: + label: Steps to Reproduce + description: Describe the steps that led to the problem. Include the command you ran, relevant configuration details, and your responses to any prompts. + placeholder: | + 1. + 2. + 3. + validations: + required: true + + - type: textarea + id: expected-behavior + attributes: + label: Expected Behavior + description: Describe what you expected to happen. + validations: + required: true + + - type: textarea + id: actual-behavior + attributes: + label: Actual Behavior + description: Describe what actually happened, including any changes to configurations, system access, or service availability. + validations: + required: true + + - type: textarea + id: logs + attributes: + label: Relevant Output + description: Paste relevant output, including the first error and surrounding lines. + render: text + + - type: textarea + id: environment + attributes: + label: Environment + description: | + Include details relevant to the failure. You can find the script version in its `# Version:` header. + Describe any local changes to the script. Include the versions of affected software, such as OpenSSH, UFW, or Nginx. + For Nginx build failures, include sanitized `nginx -V` output. Specify how Nginx was installed. + placeholder: | + Linux distribution and release: + Bash version (bash --version): + Script version: + Repository commit (if known): + Relevant software versions: + Local script changes: + + - type: textarea + id: context + attributes: + label: Additional Context diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 0000000..06fdc3f --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,5 @@ +blank_issues_enabled: false +contact_links: + - name: Script documentation + url: https://github.com/StrangeRanger/linux-security-scripts#tools-and-scripts + about: Review requirements, usage, and compatibility for each script. diff --git a/.github/ISSUE_TEMPLATE/documentation.yml b/.github/ISSUE_TEMPLATE/documentation.yml new file mode 100644 index 0000000..7f651b2 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/documentation.yml @@ -0,0 +1,46 @@ +name: Documentation +description: Suggest corrections, clarifications, or additions to the documentation. +labels: ["awaiting review", "documentation"] + +body: + - type: dropdown + id: scope + attributes: + label: Scope + description: Select the type of change you are requesting. + options: + - Correct existing information + - Clarify existing instructions + - Add missing content + validations: + required: true + + - type: textarea + id: location + attributes: + label: Affected Documentation + description: Identify the section that needs attention, including its file path. For new documentation, describe the topic it should cover. + placeholder: "For example: hardening/SSHD Hardening/README.md, Usage section." + validations: + required: true + + - type: textarea + id: problem + attributes: + label: Reason for the Change + description: Explain why the documentation needs updating. Describe what you were trying to accomplish. If you followed the instructions, explain where you got stuck. + validations: + required: true + + - type: textarea + id: proposal + attributes: + label: Proposed Solution + description: Describe the changes you suggest. Include a draft revision if you have one. + validations: + required: true + + - type: textarea + id: context + attributes: + label: Additional Context diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md deleted file mode 100644 index a703c23..0000000 --- a/.github/ISSUE_TEMPLATE/feature_request.md +++ /dev/null @@ -1,20 +0,0 @@ ---- -name: Feature request -about: Suggest an idea for this project -title: '' -labels: awaiting review, enhancement -assignees: '' - ---- - -**Is your feature request related to a problem? Please describe.** -A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] - -**Describe the solution you'd like** -A clear and concise description of what you want to happen. - -**Describe alternatives you've considered** -A clear and concise description of any alternative solutions or features you've considered. - -**Additional context** -Add any other context or screenshots about the feature request here. diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml new file mode 100644 index 0000000..393294b --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -0,0 +1,64 @@ +name: Feature Request +description: Propose a new script or improvements to an existing one. +labels: ["awaiting review", "enhancement"] + +body: + - type: dropdown + id: scope + attributes: + label: Scope + options: + - Improve an existing script + - Add a new standalone script + validations: + required: true + + - type: dropdown + id: component + attributes: + label: Affected Script + description: Select the affected script. Choose 'N/A' if you are requesting a new script. + options: + - Lynis Installer + - Root Locker + - SSHD Hardening + - UFW Cloudflare + - Nginx WAF + - N/A + validations: + required: true + + - type: textarea + id: problem + attributes: + label: Problem or Use Case + description: Describe the task you need to accomplish. Explain who would benefit from the change and why the current scripts do not meet their needs. + validations: + required: true + + - type: textarea + id: proposal + attributes: + label: Proposed Solution + description: Describe your proposed change. For a new script, explain the auditing or hardening task it should perform. + validations: + required: true + + - type: textarea + id: requirements + attributes: + label: Target Environment and Requirements + description: List the Linux distributions, releases, and software versions the change should support, if known. Note any required privileges and dependencies. Identify any existing configuration that must be preserved. + validations: + required: true + + - type: textarea + id: alternatives + attributes: + label: Alternatives Considered + description: Describe the alternatives you considered, such as workarounds, manual steps, or existing tools. Explain why they do not meet your needs. + + - type: textarea + id: context + attributes: + label: Additional Context