What is the difference between Continuous Integration and Continuous Delivery/Deployment?
Continuous Integration (CI) is the practice of merging code to a shared branch frequently, with each change automatically built and tested to catch integration problems early. Continuous Delivery extends this so the software is always in a releasable state — every change that passes the pipeline could be deployed, but the actual production release is a deliberate manual decision. Continuous Deployment goes one step further: every change that passes all stages is automatically released to production with no human gate. The acronym CD covers both delivery and deployment.
2 / 5
What is an artifact in a CI/CD pipeline and why build it once?
An artifact is the immutable, versioned output of the build stage — a container image, a JAR/WAR, a binary, a package. The principle "build once, deploy many" means you produce the artifact a single time and then promote that exact artifact through dev → staging → production. Rebuilding per environment risks subtle differences (different dependency versions, build flags) so that what reaches production is not what you tested. Storing artifacts in a registry with version tags also enables fast, reliable rollback to a known-good build.
3 / 5
What is a quality gate in a pipeline?
A quality gate is an automated pass/fail checkpoint embedded in the pipeline that blocks progression unless defined criteria are met: all tests pass, code coverage stays above a threshold, static analysis/SAST finds no critical issues, no high-severity dependency vulnerabilities, lint and formatting are clean. Gates encode the team's definition of "good enough to proceed" so quality is enforced automatically rather than relying on human discipline. A failing gate stops the build and surfaces exactly what must be fixed, shifting quality checks left to where they are cheapest to address.
4 / 5
What is a blue-green deployment?
In a blue-green deployment, you maintain two production environments. "Blue" serves live traffic while you deploy and smoke-test the new version on the idle "green." When green is verified, you flip the router/load balancer to send all traffic to green instantly. The big advantages: near-zero-downtime cutover and instant rollback (flip back to blue if something is wrong). The cost is running double the infrastructure during the switch. It contrasts with a canary release, which shifts traffic gradually rather than all at once.
5 / 5
What is a canary release and how does it reduce risk?
A canary release (named after the "canary in a coal mine") exposes a new version to a small slice of traffic — say 1%, then 5%, then 25% — while closely watching error rates, latency, and business metrics. If the canary stays healthy, you progressively increase its share until it serves everyone; if metrics degrade, you halt and roll back, having affected only a small fraction of users. This limits the blast radius of a faulty release and surfaces problems that only appear under real production traffic, which staging cannot fully reproduce.