diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS new file mode 100644 index 0000000..1421fd6 --- /dev/null +++ b/.github/CODEOWNERS @@ -0,0 +1,11 @@ +# This file lists the contributors responsible for the +# repository content. They will also be automatically +# asked to review any pull request made in this repository. + +# Each line is a file pattern followed by one or more owners. +# The sequence matters: later patterns take precedence. + +# FILES OWNERS +* @david-waltermire @repo-managers-oscal-server +/.github @repo-managers +/.github/workflows @workflow-managers diff --git a/.github/CONTENTS.md b/.github/CONTENTS.md new file mode 100644 index 0000000..58120c4 --- /dev/null +++ b/.github/CONTENTS.md @@ -0,0 +1,8 @@ +# Metaschema Framework's Supporting Files for GitHub + +This directory contains supporting files for Metaschema GitHub repository use. The structure and contents of the directory are as follows: + +- [ISSUE_TEMPLATE](ISSUE_TEMPLATE): This directory contains several templates for creating new issues in GitHub. +- [issue_template.md](issue_template.md): This file contains a template for creating a new issue in GitHub containing a user story. +- [PULL_REQUEST_TEMPLATE.md](issue_template.md): This file contains a template to be filled out for each GitHub pull request by the person submitting it. +- [dependabot.yml](dependabot.yml): GitHub Dependabot [configuration](https://docs.github.com/en/code-security/dependabot/dependabot-version-updates). diff --git a/.github/ISSUE_TEMPLATE/1-feature_request.yml b/.github/ISSUE_TEMPLATE/1-feature_request.yml new file mode 100644 index 0000000..be7e128 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/1-feature_request.yml @@ -0,0 +1,43 @@ + + +name: Feature Request +description: Suggest an idea for this project +labels: ['User Story', 'enhancement'] +body: + - type: textarea + id: story + attributes: + label: User Story + description: Describe the feature from the user's perspective. + placeholder: | + As a {stakeholder}, I {provide a clear and concise description of what the problem is. Ex. I need to be able to ...} + validations: + required: true + - type: textarea + id: goals + attributes: + label: Goals + description: Describe what you want to happen. This should be outcome focused. Include descriptions of any alternative solutions or features you've considered. Feel free to include any screenshots or examples. + validations: + required: true + - type: textarea + id: dependencies + attributes: + label: Dependencies + description: Describe any previous issues or related work that must be completed to start or complete this issue. + - type: textarea + id: acceptance_criteria + attributes: + label: Acceptance Criteria + description: The items below are general acceptance criteria for all User Stories. Please describe anything else that must be completed for this issue to be considered resolved. + value: | + - [ ] All website and readme documentation affected by the changes in this issue have been updated. + - [ ] A Pull Request (PR) is submitted that fully addresses the goals of this User Story. This issue is referenced in the PR. + - [ ] The CI-CD build process runs without any reported errors on the PR. This can be confirmed by reviewing that all checks have passed in the PR. + validations: + required: true + - type: textarea + id: revisions + attributes: + label: Revisions + description: If you are creating the issue, this field is not required. When working on the issue, this field is for assigned developers to flag any important changes made to the description, goals, or acceptance criteria needed to complete the work. diff --git a/.github/ISSUE_TEMPLATE/2-bug_report.yml b/.github/ISSUE_TEMPLATE/2-bug_report.yml new file mode 100644 index 0000000..db10a75 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/2-bug_report.yml @@ -0,0 +1,44 @@ +name: Bug report +description: Create a report to help us improve +labels: ['bug'] +body: + - type: textarea + id: bug-description + attributes: + label: Describe the bug + description: A clear and concise description of what the bug is + validations: + required: true + - type: textarea + id: bug-affecting-who + attributes: + label: Who is the bug affecting + description: Describe the stakeholders affected by this bug + validations: + required: true + - type: textarea + id: bug-replication + attributes: + label: How do we replicate this issue + description: What are the steps to reproduce this behavior (use screenshots if applicable) + placeholder: | + 1. Do this... + 2. Then this... + 3. See error... + validations: + required: true + - type: textarea + id: bug-solution + attributes: + label: Expected behavior (i.e. solution) + description: A clear and concise description of what you expected to happen + validations: + required: true + - type: textarea + id: bug-comments + attributes: + label: Other comments + description: | + Add any other context about the problem here. + validations: + required: false diff --git a/.github/ISSUE_TEMPLATE/README.md b/.github/ISSUE_TEMPLATE/README.md new file mode 100644 index 0000000..ce1ed4e --- /dev/null +++ b/.github/ISSUE_TEMPLATE/README.md @@ -0,0 +1,6 @@ +# GitHub Issue Template Files + +This directory contains templates for creating new project issues in GitHub. The structure and contents of the directory are as follows: + +* [bug_report.md](bug_report.md): This file contains a template for creating a new issue in GitHub to report a bug. +* [feature_request.md](feature_request.md): This file contains a template for creating a new issue in GitHub containing a user story. diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 0000000..3ba13e0 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1 @@ +blank_issues_enabled: false diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..1dcff5e --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,15 @@ +version: 2 +updates: + # Maintain dependencies for GitHub Actions + - package-ecosystem: "github-actions" + directory: "/" + schedule: + # Check for updates to GitHub Actions every weekday + interval: "daily" + target-branch: "develop" + # Maintain dependencies for Maven + - package-ecosystem: "maven" + directory: "/" + schedule: + interval: "daily" + target-branch: "develop"