Glossary
Glossary Pipeline

Pipeline

Also known as: build-pipeline, ci-pipeline, ci/cd pipeline, pipelines
TechPracticesDevops

Definitions

The ordered stages a change passes through between a push and production — typically install, build, test, lint, security scan, quality gate, deploy — each one able to stop the change

A pipeline is a promise about order and about stopping. Order, because a migration that runs before the code that needs it is a different outage than one that runs after. Stopping, because a stage that reports a problem and lets the change continue is not a stage, it is a log line. Bitbucket calls them Pipelines, GitHub calls them workflows, Azure DevOps calls them pipelines again — the shape is the same.

Tech

In a shell, a chain of commands joined by |, each one’s output feeding the next one’s input

Worth naming separately because it shares the word and breaks the same instinct. cmd | tail exits with tail’s status, not cmd’s — so a failing build read through a pipe reports success. Redirect to a file and read the status directly, or the pipeline you built to watch the pipeline will lie to you about it.

Tech

The conveyor belt, and the places along it where someone is allowed to pull the cord.

The useful question about any pipeline is not what it runs but what it can stop. Every stage that cannot fail the build is documentation.

Related Terms

  • a: Appearance
  • ?: Keyboard shortcuts