Use the Pipeline Designer

You use the Pipeline Configuration page to create a pipeline diagram that defines dependencies between jobs and the order of their builds.

To create a new pipeline using the designer:

  1. In the left navigator, click Builds Builds.
  2. Click the Pipelines tab.
  3. Click the Actions Actions menu for the pipeline that you want to configure and select Configure Pipeline.

  4. Click the Configure button.

  5. To add a new start job, right-click the Start node, and select Add New Start Jobs.

    Tip:

    You can also press the Add Jobs button to add jobs to the pipeline configuration diagram, then right-click Start node then select Edit Start Jobs to link the job you added to the Start node.
  6. Search for and select the jobs that you want to add, then click Save.

  7. Right-click a job to add or edit child jobs, delete the selected job, or open the selected job.

  8. When you are finished building the pipeline, click Save.

Note:

To add a job that triggers a pipeline, click +Add Jobs, then search for and add the trigger job.

Create a One-to-One Dependency

A one-to-one dependency is formed between a parent and a child job. When a build of the parent job is successful, a build of the child job runs automatically.

To create a one-to-one dependency of a child job to its parent job:

  1. Right-click the existing job and select Add, then select a dependency type for the new job.

  2. Search for and select the child job, then click Save.

    A dependency is now formed.



In the above example, Job 2 is now dependent on Job 1. A build of Job 2 will run automatically after every Job 1 build is successful.

Create a One-to-Many Dependency

A one-to-many dependency is formed between one parent job and multiple child jobs. When a build of the parent job is successful, builds of child jobs run automatically.

To create a one-to-many dependency between jobs:

  1. Right-click an existing job, and select Add, then select a dependency type for the new job.

  2. Search for and select the child jobs, then click Save.

A dependency is now formed. In the above example, Job 2, Job 3, and Job 4 are now dependent on Job 1. Job 2, Job 3, and Job 4 run automatically after Job 1 completes successfully.

Create a Many-to-One Dependency

A many-to-one dependency is formed between multiple parent jobs and one child job. When builds of all parent jobs are successful, a build of the child job runs automatically.

To create a many-to-one dependency on parent jobs with a child job:

  1. Add the parent jobs to the pipeline.

  2. Right-click one of the parent jobs, select Add, then select a dependency type for the child job.

  3. Search for and select the child job, then click Save.
  4. Right-click the second parent job, select Edit, then choose a dependency type for the child job.



  5. Select the same child job that you added in Step 3.

  6. Repeat Steps 4 and 5 for each parent job that the child job is dependent on.

A dependency is now formed. In the above example, Job 4 is dependent on Job 1, Job 2, and Job 3. A build of Job 4 will run automatically after Job 1, Job 2, and Job 3 are successful.

Edit Pipeline Dependencies

From the Pipeline Configuration page, you can update the dependencies between jobs in the pipeline.

To change the dependency condition of a child job, you first need to delete the job from the pipeline, then add it again with the new dependency.

  1. In the pipeline designer, right-click the job that you want to update and select Delete.



  2. Right-click the parent job, select Add, then select the dependency for the child job.
    Description of pipeline_build_add_on_fail_job.png follows
    Description of the illustration pipeline_build_add_on_fail_job.png

  3. Search for and add the child job, then click Save.

    The color of the dependency arrow will change to reflect the current dependency.



    If you configure the pipeline using YAML, you'll have access to additional options that aren't available in the UI. However, the dependency conditions in YAML all map to the three that you have access to in the UI. See Set Dependency Conditions in Pipelines Using YAML.

Note:

You can also use this procedure to update the formatting of a pipeline. For example, if you a diagram that looks confusing because of flow arrows that cross over each other, you can rebuild the diagram by deleting child nodes and editing the dependencies.