The Production Readiness Review is a process that helps identify the reliability needs of a service, feature, or significant change to infrastructure for GitLab.com. It loosely follows the production readiness review from the SRE book.
The goal of the readiness review is to make sure we have enough documentation, observability, and reliability for the feature, change, or service to run at GitLab.com production scale. The readiness review process should be started as early as possible as features progress through our product maturity levels.
Completing a readiness review doesn't necessarily mean that the Reliability team will take over on-call responsibilities or ownership from the service team. For situations where the Reliability team is taking over ownership and/or on-call responsibilities for a service, a review must be completed.
This review is meant to facilitate collaboration between Service Owners, Security and Infrastructure teams to help bridge any gaps identified for a new service. The review document will serve as a snapshot of what is being deployed and the discussions that surround it. It is not intended to be constantly updated.
The readiness review MR will go through a single review for every maturity level. We require an MR because it allows for inline comments, threaded discussions and explicit approval. Once an MR has been approved by the stakeholders and merged it is considered approved for corresponding level.
The readiness review issue is used to coordinate among stakeholders who will be assigned as reviewers and to track progress using the Readiness Status Issue Board.
Production Readiness should start as early as possible and is required for all product maturity levels that meet any of the following criteria:
If none of the above criteria is met, it will be unlikely that a Production Readiness review is necessary.
The Production Readiness process is authored by the DRI of the work that is being delivered.
Once all discussions have been addressed all mandatory items have satisfactory answers, the author will request approvals from the reviewers. The reviewers should note their approval by approving the merge request. Following this, the issue will be closed and the change can be applied in production.