diff --git a/.github/ISSUE_TEMPLATE/new-environment.yml b/.github/ISSUE_TEMPLATE/new-environment.yml index 6752e6c18..ced0b40b2 100644 --- a/.github/ISSUE_TEMPLATE/new-environment.yml +++ b/.github/ISSUE_TEMPLATE/new-environment.yml @@ -37,6 +37,14 @@ body: value: validations: required: true + - type: input + id: codeowners + attributes: + label: GitHub code owner team slug + description: By default members of the github team/s specified can both access the aws environments and approve pull requests to release changes. If you would like to seperate the permissions so that a different github team acts as a code owner to review changes before they are released then specify this here. + value: + validations: + required: false - type: checkboxes id: environment attributes: diff --git a/source/user-guide/creating-environments.html.md.erb b/source/user-guide/creating-environments.html.md.erb index 2b79dcf47..3724597f5 100644 --- a/source/user-guide/creating-environments.html.md.erb +++ b/source/user-guide/creating-environments.html.md.erb @@ -32,6 +32,12 @@ Users who are not part of the MoJ GitHub organisation will need to be added as c If you wish to add additional deployment reviewers from outside your GitHub team you can specfiy these per an environment in the application.json file (See: "additional_reviewers" in [Another example](#another-example) for an example). +### GitHub code owner team slug + +By default members of the github team/s specified can both access the aws environments and approve pull requests to release changes. + +If required you can seperate the permissions so that a different github team acts as a code owner, this way PRs will require a review from this team before changes are released. + ### Access This is the level of access for the GitHub team to the Modernisation Platform. @@ -168,6 +174,7 @@ Here are some examples of the environments JSON file that the Modernisation Plat ### Schema - `account-type` determines if this is a core modernisation platform account or a user member account - `environments` should be an array of objects for environments required. If the environment is `production`, retention periods, backup frequency, and similar will be different compared to non-production environments +- `codeowners` is an optional list of github slugs if you want specific teams to review code changes before they are released into environments - the `name` key and `access` object are required, see: [Another example](#another-example) - the `nuke` key is optional and is only read if the `access.level` is `sandbox` - `tags` should be an object of the mandatory tags defined in the MoJ [Tagging Guidance](https://ministryofjustice.github.io/technical-guidance/documentation/standards/documenting-infrastructure-owners.html#tagging-your-infrastructure). You can omit `is-production` as we infer this from the environment name @@ -179,6 +186,7 @@ Here are some examples of the environments JSON file that the Modernisation Plat ```json { "account-type": "", + "codeowners": [""], "environments": [ { "name": ""