diff --git a/.github/ISSUE_TEMPLATE/01-bug_report.md b/.github/ISSUE_TEMPLATE/01-bug_report.md new file mode 100644 index 0000000..f4f03b3 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/01-bug_report.md @@ -0,0 +1,40 @@ +--- +name: Bug report +about: Create a bug report to help us improve Terragrunt IAC Engines. +title: '' +labels: bug +assignees: '' + +--- + +## Describe the bug + +A clear and concise description of what the bug is. + +## Steps To Reproduce + +Steps to reproduce the behavior, code snippets and examples which can be used to reproduce the issue. + +```hcl +// paste code snippets here +``` + +## Expected behavior + +A clear and concise description of what you expected to happen. + +## Nice to haves + +- [ ] Terminal output +- [ ] Screenshots + +## Versions + +- Terragrunt version: +- IAC Engine version: +- OpenTofu/Terraform version: +- Environment details (Ubuntu 20.04, Windows 10, etc.): + +## Additional context + +Add any other context about the problem here. diff --git a/.github/ISSUE_TEMPLATE/02-rfc.yml b/.github/ISSUE_TEMPLATE/02-rfc.yml new file mode 100644 index 0000000..1c3d584 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/02-rfc.yml @@ -0,0 +1,150 @@ +# Inspired by: +# - The previous RFC template. +# - the OpenTofu RFC template: https://raw.githubusercontent.com/opentofu/opentofu/main/.github/ISSUE_TEMPLATE/rfc.yml +# - The Terragrunt RFC template: https://raw.githubusercontent.com/gruntwork-io/terragrunt/master/.github/ISSUE_TEMPLATE/02-rfc.yml + +name: RFC +description: Submit a Request For Comments (RFC). +labels: ["rfc", "pending-decision"] +body: + - type: markdown + attributes: + value: | + # Request For Comments + + This form will guide you through the process for submitting a Request For Comments (RFC) for a change. + + ## Before you start + + - Make sure you search for an issue that would already cover your RFC in the [issues tab](https://github.com/gruntwork-io/terragrunt/issues?q=is%3Aissue). + - Search through [Terragrunt documentation](https://terragrunt.gruntwork.io/docs/) to see if your RFC is already supported. + + ## After you submit + + - Share your RFC with your community for feedback and reactions! The more activity and feedback you get, the more likely it is to be reviewed by the maintainers. + - If your RFC has enough traction, it will be reviewed by the maintainers and a decision will be made. + - Once a decision is made, one of two things will happen: + 1. If the RFC is accepted, the `pending-decision` label will be replaced with the `accepted` label. At this stage, pull requests can be submitted by maintainers or the community to implement the RFC, with a description including `Closes #`. + 2. If the RFC is rejected, the `pending-decision` label will be replaced with the `rejected` label. The maintainers will provide a reason for the rejection. If applicable, it might be made clear that a new RFC with changes is welcome. + + - type: textarea + id: summary + attributes: + label: Summary + description: A brief summary of the RFC. + validations: + required: true + + - type: textarea + id: motivation + attributes: + label: Motivation + description: What is the problem you're trying to solve? What are the goals you're trying to achieve? + validations: + required: true + + - type: textarea + id: proposal + attributes: + label: Proposal + description: | + In a manner that is as specific as possible, describe the proposal you have in mind. This should include: + - As minimally technical a description of the proposal as possible. + - An explanation of how the proposal addresses the motivation above. + - Examples of how the proposal might present itself to a user if implemented. + validations: + required: true + + - type: textarea + id: technical-details + attributes: + label: Technical Details + description: | + Provide technical details for the proposal. This should include: + - List of components that will be affected by the proposal. + - How those components will be affected. + - Any documentation that will help in understanding or developing a solution to the proposal. + validations: + required: true + + - type: textarea + id: press-release + attributes: + label: Press Release + description: If this RFC were implemented, how would you describe it to the community in a mock press release? + validations: + required: true + + - type: textarea + id: drawbacks + attributes: + label: Drawbacks + description: What are the drawbacks of the proposal, if any? + validations: + required: false + + - type: textarea + id: alternatives + attributes: + label: Alternatives + description: What are the alternatives to the proposal, if any? + validations: + required: false + + - type: textarea + id: migration-strategy + attributes: + label: Migration Strategy + description: If this proposal requires a migration strategy for existing code bases, what is it? + validations: + required: false + + - type: textarea + id: unresolved-questions + attributes: + label: Unresolved Questions + description: | + What parts of the proposal are still unresolved? + - Is there anything that you're unsure about? + - Are there any questions that you have that you haven't answered yet? + - Would you like to encourage feedback on any particular part of the proposal you haven't fully fleshed out? + validations: + required: false + + - type: textarea + id: references + attributes: + label: References + description: | + Are there any references that should be linked here? + - Links to other RFCs, issues, or documentation. + validations: + required: false + + - type: textarea + id: poc-pull-request + attributes: + label: Proof of Concept Pull Request + description: If you have a proof of concept or an in-draft pull request that demonstrates the proposal, please link it here. + validations: + required: false + + - type: checkboxes + id: support + attributes: + label: Support Level + description: Please let us know if you are a paying customer. This helps us prioritize RFCs that are important to our customers. + options: + - label: I have Terragrunt Enterprise Support + required: false + - label: I am a paying Gruntwork customer + required: false + + - type: input + id: customer-name + attributes: + label: Customer Name + description: If you are a paying Gruntwork customer, please provide your name. + validations: + required: false + diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 0000000..9bd8411 --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,26 @@ + + +## Description + +Fixes #000. + + + +## TODOs + +Read the [Gruntwork contribution guidelines](https://gruntwork.notion.site/Gruntwork-Coding-Methodology-02fdcd6e4b004e818553684760bf691e). + +- [ ] Update the docs. +- [ ] Run the relevant tests successfully, including pre-commit checks. +- [ ] Ensure any 3rd party code adheres with our [license policy](https://www.notion.so/gruntwork/Gruntwork-licenses-and-open-source-usage-policy-f7dece1f780341c7b69c1763f22b1378) or delete this line if its not applicable. +- [ ] Include release notes. If this PR is backward incompatible, include a migration guide. + +## Release Notes (draft) + + +Added / Removed / Updated [X]. + +### Migration Guide + + +