Pipelines are a way to orchestrate the flow of the software release process. You can choose what part of your process to automate with pipelines, based on your needs. Some examples are:
From code check-in to production: After developers check in code, it is run through a pipeline that includes build, test, pre-production, and production stages, running various automation tasks in each of the stages like deploying the applications or microservices, running test automation suites, and so on, ending when the software is delivered to the production server.
From system test to production: After the software passes the system tests, it is run through a pipeline to integrate the code from multiple teams, run user acceptance tests, deploy the software to beta testing, and then deploy it all the way to production.
CloudBees CD/RO supports top level projects to organize related application deployment, pipeline, and release objects. These objects as well as the objects belonging to them can be in any project within CloudBees CD/RO.
Projects are top-level security containers that provide access control at the project level. All objects in a project inherit the access control settings from the project to which they belong.
Projects provide a way to logically grouping objects. If your deployment is large and has many production environments, you can organize production environments by project, with each project having its own access control settings. This makes it easier to manage and maintain multiple environments during the software delivery process.
In this section, you learn:
When you export a project while a pipeline is in progress, only the full export includes flow runtimes that have been completed. If you want to include in-progress pipeline runs in the path-to-production view and the visual indicators showing their percentage completed in the Release Dashboard, set the
excludeJobs argument to
false in the
export command. When the XML file is imported, the in-progress pipeline runs in the imported project are displayed in the path-to-production view and the Release Dashboard. The jobs might be incomplete once the XML is imported.
A pipeline consists of these objects:
Stages–A milestone or checkpoint in the process that consists of one or more tasks in sequential order. Running these tasks completes the milestone or checkpoint.
As each software change goes through the pipeline, it enters a stage through an entry gate only after it is approved to enter the stage. It can exit the stage through an exit gate only after it is approved to do so.
Gates–Approvals before and after a stage. A software change can enter or exit a stage only if the approval criteria at the entry or exit gate are met. Approvers are notified by email.
Tasks–Actions to be taken in a stage. They are executed in sequential order within a stage. You can define tasks as application or microservice processes, procedures, workflows, manual tasks, and plugins to integrate with third party tools.