No results for ""
EXPAND ALL
  • Home
  • API docs

GIVE DOCS FEEDBACK

Release pipelines

Read time: 8 minutes
Last edited: Apr 24, 2024

Overview

This topic explains how you can use release pipelines to follow repeatable release processes for your flags within LaunchDarkly. Release pipelines track the progression of a feature flag across a series of phases, where each phase consists of one or more environments. When you add a flag to a release pipeline, you can ensure you correctly roll out the flag in each environment before moving on to the next. You can use release pipelines to view the status of ongoing releases across all flags within a project, enforcing a standardized process and ensuring they are following best practices.

Each project can have up to 20 release pipelines. You can manage your release pipelines on the Projects tab under Account settings. Click on a project name, then on the Release pipelines tab to view the release pipelines within the project:

The release pipeline list.
The release pipeline list.

You can also use the REST API: Get all release pipelines, Get release pipeline by key

Creating release pipelines

Creating release pipelines is an Admin-only feature

You can only create and delete release pipelines if you're a LaunchDarkly Admin or Owner, or have a custom role that allows the createReleasePipeline and deleteReleasePipeline actions. To learn more, read Understanding member roles and Release pipelines actions.

To create a release pipeline:

  1. Navigate to the Account settings tab.
  2. Click on the Projects tab and select which project you want to create a pipeline for.
  3. Click on the Release pipelines tab.
  4. Click Create release pipeline.
  5. Click into the title field to update the name.
  6. (Optional) Click into the key field to update the automatically-generated key.
  7. (Optional) Click Add a release guide to add a description for this release pipeline.
  8. (Optional) Click Add tags to choose from available tags.
  9. The release pipeline automatically includes two phases: Testing and Production. You can edit or delete these phases as needed.
    • To add an environment to an existing phase, click + Add environment and select an environment from the menu.
    • To delete a phase, click the overflow menu and select "Delete phase."
  10. (Optional) To add a new phase, + Add phase. Enter a Phase name and select at least one Environment.
  11. (Optional) To reorder phases, click the left and right arrows to "Move phase left" or "Move phase right."
A release pipeline.
A release pipeline.
  1. Click Create release pipeline.

If this is the first release pipeline in your project, it will be used as the default for all new flags created in this project.

As an alternative to creating a new pipeline, you can duplicate an existing one and edit it to make it unique. This may be faster if you wish to create multiple similar release pipelines in bulk.

To duplicate a default release pipeline:

  1. Navigate to Account settings and choose the Projects tab.
  2. Choose the project where the release pipeline you wish to modify is located. Click into the Release pipelines tab.
  3. Find the release pipeline you wish to make the default release pipeline for this project. Select its three-dot overflow menu.
  4. Choose Duplicate. The new release pipeline opens in a new tab. You can identify it because it has the same name as the original release pipeline with (copy) appended to the end.
  5. Modify the new release pipeline as needed.
The release pipeline "Duplicate" option.
The release pipeline "Duplicate" option.

After you create a release pipeline, you can edit its name, description, tags, and phase names. To make more substantial changes, you must delete the release pipeline and create a new one.

Setting a default release pipeline

The first release pipeline you create automatically becomes your project's default release pipeline.

To set a default release pipeline:

  1. Navigate to Account settings and choose the Projects tab.
  2. Choose the project where the release pipeline you wish to modify is located. Click into the Release pipelines tab.
  3. Find the release pipeline you wish to make the default release pipeline for this project. Select its three-dot overflow menu.
  4. Choose Make default.
A release pipeline's overflow menu with the "Make default" option called out.
A release pipeline's overflow menu with the "Make default" option called out.

You can also use the REST API: Create a release pipeline

Deleting a release pipeline

Deleting a release pipeline deletes any active releases using that pipeline and prevents you from adding flags to it. LaunchDarkly notifies affected flag maintainers when you delete a release pipeline.

After you delete a release pipeline, you can still roll out flag changes to different environments. However, these changes are not coordinated or tracked as a release.

To delete a release pipeline:

  1. Navigate to the Account Settings tab.
  2. Click on the Projects tab and select which project you want to delete a pipeline from.
  3. Click on the Release pipelines tab.
  4. Click the three-dot overflow menu next to the release pipeline you want to delete.
The release pipeline "Delete" option.
The release pipeline "Delete" option.
  1. Enter the pipeline's name or key to confirm.
  2. Click Delete.

You can also use the REST API: Delete release pipeline

Adding flags to release pipelines

When you add a flag to a release pipeline, you create a "release" to track that flag's progress through the pipeline.

Adding flags to a new release pipeline

After you have created a release pipeline, you will be redirected to the releases view to add your first flags to the pipeline. From here, you can:

  • create a new flag
  • search for a flag
  • view recent flags
Adding multiple flags to a release pipeline.

To add an existing flag:

  1. Click Add flags. A list of available flags appears.
  2. Select a flag from the list to add the flag to the release pipeline.
  3. Add as many additional flags as needed.

These flags are now part of the release pipeline.

Adding a new flag to an existing release pipeline

To add a new flag to a release pipeline:

  1. Follow the instructions to create a new flag.
  2. Check the Include flag in release pipeline box.
  3. If more than one release pipeline is available, choose a release pipeline from the dropdown.
  4. Continue the remaining steps to create your flag.

You can also use the REST API: Create a feature flag

Adding an existing flag to an existing release pipeline

You can add new or existing flags to existing release pipelines.

To add an existing flag to a existing release pipeline:

  1. Navigate to the flag you want to add to a release pipeline.

  2. Click Add release.

    • If this project doesn't have a default release pipeline, you are prompted to create one. After you create the release pipeline in a new browser tab, you must refresh your original browser tab for the newly-created release pipeline to appear as an option.
    • If this project has a default release pipeline, the "Start release" dialog appears.
    The "Add release" option on an existing flag.
    The "Add release" option on an existing flag.
  3. Click Start release to add the flag to the release pipeline and start the release.

Moving flags between release pipelines

If a flag is assigned to a release pipeline, you can move it to another pipeline.

To move a flag:

  1. Navigate to the flag.
  2. Click the name of the release pipeline to which the flag is assigned. A menu expands.
The release pipeline's overflow menu.
The release pipeline's overflow menu.
  1. Click Move to different pipeline. The "Move release" dialog appears.
  2. Choose a release pipeline to move the flag to from the dropdown.
  3. Click Move release. The flag appears in the release pipeline you selected.

Removing a flag from a release pipeline

To remove a flag from a release pipeline:

  1. Navigate to the flag.
  2. Click the name of the release pipeline to which the flag is assigned. A menu expands.
  3. Click Cancel release.
Removing a flag from a release pipeline.
Removing a flag from a release pipeline.

You can also use the REST API: Update feature flag

Using release pipelines

You can use release pipelines to be sure that a flag is properly rolled out in the correct environments before it proceeds to the next phase. To learn more about how to use release pipelines effectively, read Getting started with release pipelines.

When a flag is included in a release pipeline, you can view information about each phase in the pipeline on the flag details page under the flag name.

Click on a phase to view the flag's targeting state, variations served, and status for each environment:

A phase's details.
A phase's details.

You can also use the REST API: Get release for flag

To learn more about flag statuses, read Flag statuses.

Marking phases as complete

After you have rolled out the flag in all environments of an active phase, you can mark the phase as complete.

To mark a phase as complete:

  1. Navigate to the flag's details page.
  2. Click the name of the highlighted phase the flag is in.
  3. Click Complete. The next phase is now active.
Marking a phase as complete does not affect flag targeting

When you mark a phase as complete, the flag's targeting behavior does not change. Marking a phase as complete only indicates to LaunchDarkly that the current phase is complete and the next phase is considered active.

Active flags are required in release pipelines

If a flag in the release pipeline is archived, the option to advance to the next phase is disabled. You must restore the archived flag to an active state to continue the release pipeline. To learn more, read Deprecating, archiving, and deleting flags.

Clicking Complete on the final phase in a release marks the entire release as complete. You can view a record of your completed releases in the audit log.

You can also use the REST API: Patch release for flag

Reactivating a previous phase

If you need to return to the previous phase of a release, select the phase before the currently active phase, then click Reactivate. This changes the previous phase to the active phase. Similar to completing phases, reactivating a phase does not automatically roll back your flag changes.

The reactivate option on a phase.
The reactivate option on a phase.

Viewing existing releases

After you have created a release pipeline, you can view flags that have been added to it from the flags list. Click Release pipeline to switch to the releases view. On the releases view, click the down arrow next to the release's name to choose a different release pipeline.

The "Pipelines" button, called out.
The "Pipelines" button, called out.

The releases view shows you flags across different phases of a release pipeline.

A release pipeline visualized in different phases.
A release pipeline visualized in different phases.