Pipelines show how software code moves through different stages from lower to higher environments and allows you to deploy versions of your application to a given environment.

A pipeline is a sequence of environments that build on subsequent stages that retrieve input and run applications and jobs, such as builds, tests, and deployments. Environments are logical groupings of infrastructure. This process is intended to increase application quality before delivery to the target environment. A pipeline from UrbanCode™Velocity is shown in the following graphic:


Pipeline features include the following:

Stages organize input and jobs as your code is built, deployed, and tested. Stages accept input from either source control management (SCM) repositories or other external applications, such as UrbanCode™ Deploy. When you create your first stage, some default settings are set for you on the Input stage.

You add applications to the pipeline from external tools that are integrated with UrbanCode Velocity, such as Jenkins™, and UrbanCode Deploy. Stages and jobs run serially; they enable flow control for your work. For example, you might place a test stage before a deployment stage. You can ensure that if the tests in the test stage fail, the deployment stage won't run.

You can define stage environment properties that can be used in all jobs. For example, you might define a TEST_URL property that passes a single URL to deploy and test jobs in a single stage. The deploy job would deploy to that URL, and the test job would test the running app at the URL.

Each pipeline stage automatically has a release and deployment plan associated with it. You do not have to manually create a release beforehand. As you add applications to a stage, a task is automatically added to the default deployment plan. For example, if you add a UrbanCode Deploy application to a stage, and UrbanCode Deploy task is added to the deployment plan.

When you run a pipeline application, a deployment starts that uses the associated deployment plan. You can monitor the progress of the deployment with links provided on the stage card.

Parent topic: Value stream management