PCL Language regarding deploys is not clear
What level of criticality should we consider code deploys?
The Delivery team made changes prior to the introduction gitlab-com/www-gitlab-com!36735 (diffs), which does not take into account this 'hard' or 'soft' language. Unfortunately, without our knowledge, we are still deploying to canary violating the intent of the PCL. The PCL language as it stands makes it clear that changes of varying levels must not go out. Deploys, in my opinion, vary depending on many factors. Some are the following:
- How many changes are in the candidate package
- What type of changes are in the candidate package
- The ability to rollback a deploy
- The ability to confirm that a deploy works and passes QA in our canary environment
With the soft dates locking the Production as a whole, which includes canary deployments, we cannot accurately asses the level or criticality our deploys fall into.
This also puts a bit of strain on the Delivery team as the next deploy allowed won't be until January 3rd. This brings the total amount of potential changes into .com to be quite massive and removes much of the desire for continuous delivery.
I'm unsure if I should be modifying the dates for the periods for which our deployer prevents deploys, or if the language needs to be updated to be more specific about code deploys. It would be the Delivery team's desire to deploy as frequently as possible, but it would seem the 'soft' PCL dates do not allow such. Can we get some clarification on this?
Source: https://about.gitlab.com/handbook/engineering/infrastructure/change-management/