• Home
  • Integrations
  • SDKs
  • Guides
  • API docs
No results for ""
EXPAND ALL

EDIT ON GITHUB

Release pipelines

Read time: 6 minutes
Last edited: Sep 13, 2023
This feature is for Early Access Program customers only

Release pipelines is only available to members of LaunchDarkly's Early Access Program (EAP). If you want access to this feature, join the EAP.

Release pipelines is available for Enterprise plans

Release pipelines is available to customers on an Enterprise plan. To learn more, read about our pricing. To add Experimentation to your plan, contact Sales.

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.

You can manage 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.

Creating release pipelines

You can only create one release pipeline per project.

Each project can have only one release pipeline. After you create a release pipeline, you can't update it, but you can delete it and create a new one.

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 pipeline 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. If a release pipeline already exists for this project, you must delete it before you can create a new one.
  5. Click the pencil icon to update the name.
  6. (Optional) Click the pencil icon to update the automatically-generated key.
  7. The release pipeline automatically includes two phases: Test 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."
  8. (Optional) To add a new phase, + Add phase. Enter a Phase name and select at least one Environment.
  9. (Optional) To reorder phases, click the overflow menu and select "Move phase left" or "Move phase right."
A release pipeline.
A release pipeline.
  1. Click Save release pipeline. The "Save release pipeline" dialog appears.
  2. (Optional) Click the edit icon to edit the name or key.
  3. (Optional) Type or choose from available Tags.
The "Save release pipeline" dialog.
The "Save release pipeline" dialog.
  1. Click Create.

Your release pipeline will now be used as the default for all new flags created in this project.

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 "Delete release pipeline" option.
The "Delete release pipeline" option.
  1. Enter the pipeline's name or key to confirm.
  2. Click Delete.

You can also delete a release pipeline while viewing it by clicking on the overflow menu and selecting "Delete release pipeline":

The "Delete release pipeline" option.
The "Delete release pipeline" option.

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 a new flag to a release pipeline

To add a new flag to a release pipeline, follow the instructions for creating a new flag and check the Include flag in this project's release pipeline box:

The "Include flag in this project's release pipeline" box in the flag creation dialog.
The "Include flag in this project's release pipeline" box in the flag creation dialog.

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

Adding an existing flag to a release pipeline

You can add new or existing flags to release pipelines.

To add an existing flag to a release pipeline:

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

  2. Click + Release pipeline.

    • 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 "+ Release pipeline" option on an existing flag.
    The "+ Release pipeline" option on an existing flag.
  3. Click Start release to add the flag to the release pipeline and start the release.

Removing a flag from a release pipeline

To remove a flag from a release pipeline:

  1. Navigate to the flag details page.
  2. Click the name of the release below the flag name.
  3. Click Remove from this flag.
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. 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 phase you want to complete.
  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.

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 phase. 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.