DevOps
Beginner
What is Pipeline as Code?
Defining CI/CD pipeline configurations as version-controlled code files rather than through UI-based pipeline builders.
Pipeline as Code stores build, test, and deployment pipeline definitions in the same repository as application code. Examples include Jenkinsfile (Jenkins), .github/workflows/*.yml (GitHub Actions), .gitlab-ci.yml (GitLab), and azure-pipelines.yml (Azure DevOps). Benefits include version history of pipeline changes, code review for pipeline modifications, branch-specific pipeline variations, and reproducibility. Pipelines typically define stages (build, test, deploy), steps within stages, environment variables, triggers (push, PR, schedule), and conditions. Treating pipelines as code enables the same engineering practices (review, testing, rollback) applied to application development.