A CI/CD pipeline is an automated workflow that takes a software change from source control through steps such as building and testing, then prepares or deploys it for release. A useful starting model is source → build → test → deploy, but teams can add, combine, or reorder work according to their project and release policy.
What is a CI/CD pipeline?
CI/CD is a way to automate the repeatable work involved in integrating software changes and getting them ready for release. A pipeline defines what work runs, when it runs, and what must succeed before the workflow can continue. Jenkins describes a pipeline as a model for delivering software through stages such as building, testing, and deploying; GitLab likewise presents pipelines as workflows made up of jobs and stages.
The pipeline is not necessarily one fixed, four-step sequence. Its configuration reflects the repository, chosen CI/CD system, available execution capacity, and rules for releasing to each environment. A team might deploy a successful change to a test environment automatically but require a person to approve production release.
What are the steps in a CI/CD pipeline?
1. Source change and trigger
A change in a source-code repository commonly starts a pipeline. Depending on configuration, a pipeline can also be started manually or on a schedule. The trigger determines when the workflow begins; it does not determine which checks or release rules follow.
The Tool Desk
Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →#1 Best Overall
2. Build
The build step compiles or packages the change into an artifact that can be tested or run. If the build fails, the team has an early signal that the change cannot proceed as configured and can investigate before attempting later work.
3. Test and verify
Automated tests and other configured checks look for problems before release. The checks depend on the project; there is no universal set that every pipeline must run. A successful result means the configured checks passed, not that every possible defect has been ruled out.
Rank #2
4. Deploy or prepare a release
The pipeline can promote the tested result to an environment such as testing, staging, or production. Which environment is targeted, and whether a person must approve the release, are policy choices encoded in the workflow. A pipeline may stop after preparing a release rather than deploying it to production automatically.
How do jobs, stages, and runners fit together?
In GitLab’s pipeline model, a job is a unit of work, a stage groups jobs into an ordered part of the workflow, and a runner executes a job. For example, a stage might group multiple checks that can run independently.
Rank #3
Jobs in the same stage can run at the same time if runner capacity is available. Later stages generally wait for earlier stages to succeed. When a job fails, the pipeline commonly stops before later stages, leaving the failure to be investigated rather than proceeding with an unsuccessful change. These details are configuration-dependent; a pipeline’s displayed stages and jobs are the practical guide to its behavior.
Continuous delivery versus continuous deployment
The terms describe different release policies. Continuous delivery automates the work needed to keep a change ready for release, while leaving the decision to deploy to production to a person or another explicit process. Continuous deployment automates that production release when the configured pipeline conditions are met.
The distinction is the production decision—not whether the earlier build and test work is automated. A production approval gate can therefore be part of a continuous-delivery workflow; a workflow that automatically releases qualifying changes to production follows the continuous-deployment model.
Where does pipeline configuration live?
Pipeline rules can be stored as code in the same repository as the application. Jenkins calls this approach pipeline as code and documents using a Jenkinsfile. GitLab’s introductory tutorial also shows committing pipeline configuration to a repository. Keeping the definition alongside the software makes the workflow itself part of the project’s versioned configuration.
Do these 3 things before closing this tab:
1Fix the driver behind crashes, sound loss and screen glitches2Clear out junk files and repair common Windows errors3Scan for outdated or missing drivers - takes under a minuteBest Value
The exact file, syntax, and execution setup depend on the CI/CD system. For a concrete GitLab example, its first pipeline tutorial walks through adding configuration and jobs to a repository.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.What to look for when evaluating a pipeline setup
Rather than assuming that one product or stage layout fits every team, check how a system maps to the workflow you need:
- Repository integration: How does a code change trigger the pipeline, and where is its configuration stored?
- Execution model: Are jobs run on hosted or self-managed infrastructure, and who provides and maintains runners?
- Job structure and capacity: How are jobs grouped into stages, and is there enough runner capacity for the parallel work the team expects?
- Environment integration: Can the configured workflow promote the tested result to the team’s test, staging, or production environments?
- Release gate: Does production deployment require an explicit approval, or does the pipeline perform it automatically?
GitLab and Jenkins documentation illustrate different implementation models, but these points are workflow questions rather than a comprehensive product ranking.
Example: following one change through the workflow
- A developer changes code in the repository, triggering a configured pipeline.
- A runner executes the build job. If it fails, later work commonly does not proceed.
- After a successful build, test jobs run. Independent jobs in the same stage may run concurrently when capacity permits.
- When required jobs succeed, the workflow can promote the result to a test or staging environment.
- If the pipeline is configured for continuous delivery, production release awaits the designated decision. If configured for continuous deployment, qualifying changes can be released to production automatically.
This example illustrates the common flow, not a required template. A real pipeline may contain additional jobs or stages, and its configuration determines the actual conditions for progression.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Quick Recap
Official documentation
- GitLab: What is a CI/CD pipeline?
- GitLab Docs: CI/CD pipelines
- GitLab Docs: First pipeline tutorial
- Jenkins: Pipeline
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




