The customer portal of Nordlicht Reisen GmbH, a fictional travel agency, has so far been deployed by hand: at night, with downtime, and afterward nobody knows for sure what is different in production compared with the test environment. With the summer wave (G-09) that is no longer acceptable. This lesson chooses how the application arrives in Azure in an automated way: from which template, through which pipeline, with which rollout and with which protection against manual intervention.
Prior knowledge. Bicep, modules, what-if and environments are taught in "K3, lesson 3.2.2" to "3.2.6"; pipelines with GitHub Actions and Azure Pipelines, tests in the build, approvals and deploying without a secret are taught in "K3, lesson 3.7.1" to "3.7.7". ARM templates and Bicep as a tool of operations are shown in "AZ-104, lesson 3.1" and "3.2", App Service slots in "AZ-104, lesson 3.8". None of that is repeated here. What is new is the choice: which form of template, which rollout technique, and which limit tips the choice.
The requirement
All numbers are assumptions of the exercise, not measured. G-01 to G-10 apply (lesson 0.2). In this example the portal runs on App Service (assumption of the exercise).
| No. | Requirement | Type | Metric | Weight | Source |
|---|---|---|---|---|---|
| 4.7-01 | Test, acceptance and production are created from the same template. | F | three environments, one template; assumption | Must | Operations |
| 4.7-02 | A delivery does not interrupt booking. | Q | no dropped request during the switch; assumption | Must | Sales (G-09) |
| 4.7-03 | A failed release can be rolled back quickly. | Q | way back in under 5 minutes; assumption | Must | Management |
| 4.7-04 | The pipeline holds no secrets that expire or get lost. | R | no stored keys in the pipeline | Must | Data protection |
| 4.7-05 | Operations approves before production. | F | one approval per release; assumption | Should | Operations |
| 4.7-06 | Production resources cannot be deleted by hand by accident. | Q | deletion only by the pipeline; assumption | Should | Management |
| 4.7-07 | Portal and partner API share a network template from the platform group. | F | one template, two teams; assumption | Could | Operations |
| 4.7-08 | Everything stays in the EU (G-08). | R | region in the EU | Must | Data protection |