Back to Beautiful Delivery Standards index <–
Last update: 16 feb 2021
NOTE: copied and tweaked from gove.uk service manual : https://www.gov.uk/service-manual/service-standard/
Introduction
Bounded context
A team should always be in a deployable state and in control of what can be delivered. For this goal, a branching strategy needs to be selected which fits the characteristics of the business needs and strategy. A service, a deployable component which can evolve independently, will have its own GIT repository. The GIT repository of a service will contain all the resources needed to release the service. This will be the resource template (AWS CloudFormation, Azure Resource Manager or Terraform), the external packages, the configuration and the sources.
Why it’s important
What it means
Version control is used. A system exists of many artifacts, code, configuration, automation scripts, test cases, and run books which all must be under version control. One version is used for all stages. A team should always be in a deployable state and in control what can be delivered. Artifacts which can evolve independently will have its own (GIT)repository. There is only one GIT repository per component. A default branching strategy is selected. This can be GitHub flow, GitLab flow, Centralized Workflow a Feature Branch Workflow or any other workflow as long as the team agrees. No direct commits on master. A master branch is always protected by a Pull request. These 11 GIT rules are followed.