Implementing security gates in release pipelines
Gates are important components of software release pipelines. They act as quality checkpoints that software must pass before moving to the next stage of deployment. Their main objective use case is to reduce the likelihood of deploying poor quality software that fails to meet agreed performance and quality standards.
For example, a development team might deploy software or updates to a test environment, run automated load and functional tests using tools such as Azure Load Testing and Selenium, and review the results in Azure Monitor.
If the software meets the agreed service-level agreements (SLAs), it is deployed to the next stage. If it does not meet the SLAs, the deployment stops, and the telemetry data is collected for the team to investigate and resolve the issues (Figure 7.33).
Figure 7.33 – Sample quality gate testing in a release pipeline
DevSecOps extends the use of gates to include...