{
    "api": "YAML JSON TOON Database",
    "version": "1.0.0",
    "format": "json",
    "dataset": {
        "slug": "cicd-pipeline-stages",
        "title": "CI/CD Pipeline Stages",
        "description": "Typical stages in a continuous integration and delivery pipeline.",
        "summary": "The stages a change passes through from source control to production and back as monitoring feedback: source, build, test, deploy, operate and monitor, plus planning, review, security scanning, packaging, release and rollback stages that mature pipelines add.",
        "use_when": [
            "You are designing or documenting a delivery pipeline and need consistent stage names.",
            "You are checking a pipeline for missing safety stages."
        ],
        "caveats": [
            "Stage names and boundaries differ between tools; a CI server may merge several stages into one job.",
            "More stages are not better by themselves; each should produce a signal someone acts on."
        ],
        "related": [
            "version-control-workflows",
            "infrastructure-as-code-tools",
            "site-reliability-practices",
            "container-orchestration"
        ],
        "category": "DevOps",
        "category_slug": "devops",
        "tags": "devops,cicd,automation",
        "view_count": 0,
        "entry_count": 12,
        "fields": [
            {
                "section": "data",
                "field": "stage",
                "type": "string",
                "example": "Source"
            },
            {
                "section": "data",
                "field": "description",
                "type": "string",
                "example": "Trigger pipeline on code commit or pull request."
            }
        ]
    },
    "data": [
        {
            "stage": "Source",
            "description": "Trigger pipeline on code commit or pull request."
        },
        {
            "stage": "Build",
            "description": "Compile, package, and create artifacts."
        },
        {
            "stage": "Test",
            "description": "Run unit, integration, and security tests."
        },
        {
            "stage": "Deploy",
            "description": "Release artifacts to staging or production."
        },
        {
            "stage": "Operate",
            "description": "Run the application in the target environment."
        },
        {
            "stage": "Monitor",
            "description": "Collect metrics, logs, and alerts for feedback."
        },
        {
            "stage": "Plan",
            "description": "Capture and prioritize the work that will become changes, linking tickets to code."
        },
        {
            "stage": "Code Review",
            "description": "Peers inspect a change before merge to catch defects and share knowledge."
        },
        {
            "stage": "Static Analysis and Security Scan",
            "description": "Automated linters, static application security testing and dependency checks run on every change."
        },
        {
            "stage": "Package",
            "description": "Produce a versioned, immutable artifact such as a container image or package and store it in a registry."
        },
        {
            "stage": "Release",
            "description": "Promote a tested artifact to an environment, often gradually through canary or blue-green strategies."
        },
        {
            "stage": "Rollback",
            "description": "Return to the last known good version quickly when a release misbehaves."
        }
    ]
}
