Kahibaro
Discord Login Register

CI/CD pipelines overview

What a CI/CD Pipeline Is (In Practice)

In OpenShift-based workflows, a CI/CD pipeline is a defined, automated sequence of steps that takes changes from source control to a running, updated application in the cluster.

Conceptually, a pipeline usually:

  1. Starts on a trigger
    • Code push or pull request
    • Merge to a main branch
    • Tag or release creation
    • Manual trigger from a UI/CLI
  2. Runs continuous integration (CI) stages
    • Fetches the source code
    • Builds the software (compile, package)
    • Runs tests (unit, integration, basic security checks)
    • Produces build artifacts (binaries, images, manifests)
  3. Runs continuous delivery/deployment (CD) stages
    • Builds or updates a container image
    • Pushes image to a registry
    • Updates manifests or Git repository representing the desired state
    • Deploys to one or more environments (dev, test, staging, production)
    • Performs automated checks after deployment (smoke tests, health checks)
  4. Reports outcomes
    • Success/failure status
    • Logs and test reports
    • Notifications (chat, email, dashboards)

The key idea is that the same pipeline definition is reused for each change, giving consistency, repeatability, and traceability.

Typical Stages in an OpenShift-Oriented Pipeline

While details vary by team and tooling, most OpenShift-focused pipelines follow a recognizable structure.

1. Source and Trigger Stage

Purpose: Start the pipeline based on an event.

Typical tasks:

Common considerations:

2. Build and Test (CI) Stage

Purpose: Prove that the change builds and basic tests pass.

Typical tasks:

Characteristics in an OpenShift context:

3. Image Build and Packaging Stage

Purpose: Turn tested code into a deployable container image and related artifacts.

Typical tasks:

Key ideas:

4. Environment-Specific Deployment Stages

Purpose: Progress a tested image through multiple environments, often with increasing strictness.

Common flows:

Typical deployment tasks:

Pipeline behavior can differ by environment:

5. Verification and Quality Gates

Purpose: Ensure that each step in the pipeline meets defined quality criteria before proceeding.

Examples of gates:

Outcomes:

6. Post-Deployment Checks and Rollback Hooks

Purpose: Confirm that the new version is healthy and provide an automated fallback.

Typical checks:

Rollback considerations:

Pipeline Structure and Concepts

Pipeline as Code

Pipelines are generally expressed as code or configuration stored in version control.

Common characteristics:

Benefits:

Stages, Tasks, and Artifacts

Pipelines are usually built from:

Typical artifacts:

Managing artifacts:

Pipelines Across Multiple Environments and Clusters

CI/CD for OpenShift often spans:

Patterns:

Key challenge:

Integrating Pipelines with OpenShift Workflows

Even without implementation details of specific tools, there are recurring integration points when a pipeline drives OpenShift workloads.

Integrating with Code and Image Flow

Typical relationships:

Options for how changes are picked up:

Promotion and Environments

Pipeline-driven promotion models often use:

For each environment, the pipeline orchestrates:

Non-Technical Aspects of Pipelines

Beyond tools and definitions, CI/CD pipelines encode team processes.

Key points:

Over time, organizations refine pipelines based on:

These metrics help adjust where to add or relax gates, and how to balance speed with safety.

Summary

In the context of OpenShift and modern DevOps practices, CI/CD pipelines are:

Views: 13

Comments

Please login to add a comment.

Don't have an account? Register now!