SOFTWARE-DELIVERY

CI/CD build, test, and staging pipeline

This CI/CD pipeline diagram focuses on the decisions that make a release repeatable. A code commit produces an application artifact, which must pass automated tests and a security scan before it reaches staging. Smoke tests in staging test the release in a deployed environment. The approval gate keeps a human decision visible where a team needs one. After production deployment, a health check determines whether the release completes or rolls back. Each unsuccessful gate leads to a named next action rather than an implied failure. Teams can adapt the labels for their build system, testing tools, environment names, and release policy while keeping the same release logic.

UPDATED 2026-09-24
EXAMPLECI/CD build, test, and staging pipeline
Make this diagram your own.

Open it in the AI editor with a prompt pre-filled — keep what works, change what doesn't.

CASE ANALYSIS

Scenario

A delivery team needs to show its normal release gates and the route taken when a gate fails.

Key decisions

  • Test gate: Do not deploy an artifact that fails automated tests.
  • Security gate: Remediate a failed scan before continuing the release.
  • Approval gate: Hold a release that has not been approved.
  • Health gate: Roll back if the deployed version fails its production check.

When to reuse this

Use this for services with build, test, staging, production, and rollback stages.

FAQ

Frequently asked questions

Why include a staging environment?01
Staging provides a deployed environment where the team can run checks before exposing the release to production traffic.
What is a smoke test?02
A smoke test is a short check that confirms the main functions of a deployed application are available before deeper use.
Why show rollback in the same pipeline?03
A rollback is part of the release process when production health checks fail, so the response should be visible with the forward path.
Open this example in the editor →

Tweak it with chat, export PNG/SVG, or fork it for your own use case.