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

    EDIT ON GITHUB

    Workflows

    Read time: 4 minutes
    Last edited: Jan 23, 2023
    Workflows is an Enterprise feature

    Workflows is available to customers on an Enterprise plan. To learn more, read about our pricing. To upgrade your plan, contact Sales.

    Overview

    This topic explains how to build, start, and view workflows in LaunchDarkly. A workflow is a set of actions that you can schedule in advance to make changes to a feature flag.

    You can also use the REST API: Workflows (beta)

    Using workflows

    Workflows can automate some of the manual tasks required to manage a feature flag. These tasks often take place in stages. For example, a feature flag workflow that gradually releases a flag to more users might look like this:

    A workflow that progressively rolls out a flag over time.
    A workflow that progressively rolls out a flag over time.

    Workflows support consistent release practices and let you automatically release a feature based on your release process.

    Prerequisites

    To use workflows, you should understand the following features:

    • Approvals
    • Scheduled flag changes

    Setting up a workflow

    You can set up three kinds of workflows. Progressive rollout workflows gradually increase the percentage of users targeted by a flag. Maintenance windows allow you to temporarily toggle a flag off. Custom workflows manage a specific rollout process that you define. You can also save a workflow created as a template to reuse later. To learn more, read Workflow templates.

    Building a progressive rollout workflow

    To build a progressive rollout workflow:

    1. Navigate to the flags list and select the flag you want to create a workflow for.
    2. Click on the Workflows tab.
    3. Click Progressive rollout.
    4. Configure your progressive rollout:
    • Choose when to start the workflow.

    • Choose the default variation to roll out to users.

    • Choose how much to increase the percentage of the rollout, starting at 0%. This setting overwrites any previously-defined rollouts for the default variation, so you should check to ensure that the default variation will not be reduced.

    • Choose how frequently to increase the rollout percentage.

      The "Configure progressive rollout" workflow dialog.
      The "Configure progressive rollout" workflow dialog.
    1. Click Review workflow. An overview of the workflow appears.
    2. (Optional) Click the edit icon next to the title to edit the title.
    3. (Optional) Click the edit icon next to "Add a description" to add a description.
    4. (Optional) If you have an approvals process, you can remove the first "Schedule" step, add an approval step, and then re-add the schedule step.
    Click to expand details on adding an approval step

    If you have an approvals process, you can add an approval step to your workflow.

    Here's how:

    1. Click the overflow menu in the first first "Schedule" step.
    2. Choose "Delete step." The Request approval and Schedule date and time options appear.
    3. Click Request approval.
    4. Click into the Reviewers menu and choose an approver.
    5. Enter a description in the Description field.

    You must add approval steps before you add schedule steps.

    1. Click Start workflow.

    For multivariate workflows, LaunchDarkly decreases and recalculates the variations that are not selected for the rollout. You should confirm the auto-calculated percentage rollouts and adjust them to your preferences if needed.

    Building a maintenance window workflow

    You can use workflows to create maintenance windows that toggle a flag on or off, and then back off or on, during a scheduled date and time.

    To build a maintenance window workflow:

    1. Navigate to the flags list and select the flag you want to create a workflow for.
    2. Click on the Workflows tab.
    3. Click Maintenance window.
    4. Configure your maintenance window:
    • Choose whether to toggle the flag on or off during the maintenance.

    • Choose when to start the maintenance.

    • Choose the length of the maintenance period.

      The "Configure maintenance window" workflow dialog.
      The "Configure maintenance window" workflow dialog.
    1. Click Review workflow. An overview of the workflow appears.
    2. (Optional) Click the edit icon next to the title to edit the title.
    3. (Optional) Click the edit icon next to "Add a description" to add a description.
    4. (Optional) If you have an approvals process, you can remove the first "Schedule" step, add an approval step, and then re-add the schedule step.

    Building a custom workflow

    To build a custom workflow:

    1. Navigate to the flags list and select the flag you want to create a workflow for.
    2. Click on the Workflows tab.
    3. Click Build a custom workflow.
    4. (Optional) Click the edit icon next to the title to edit the title.
    5. (Optional) Click the edit icon next to "Add a description" to add a description.
    6. (Optional) If you have an approvals process, click Request approval.
    • Click into the Reviewers menu and choose an approver.

    • Enter a description in the Description field.

    • You must add approval steps before you add schedule steps. If you accidentally add a schedule step first, delete the schedule step, and then add the approval step as the first step of that stage.

      The "Approval Request" step of a custom workflow.
      The "Approval Request" step of a custom workflow.
    1. If you don't need to request approval, click Schedule date and time.
    • Choose Later to schedule the stage at a later time relative to the time you start the workflow.
    • Choose On or after a specific date & time to schedule the stage to begin at a specific time.
    1. Click plus (+) to add another step to your workflow.
    2. Add additional flag changes you want to make.
    3. Add another approval or schedule condition step to create another stage of the workflow.
    4. When you have added all of your release steps to the workflow, click Start workflow.

    LaunchDarkly now processes the workflow steps for you based on the timeline and actions that you defined.

    Viewing a workflow

    There are two ways to view active workflows for a feature flag. You can use the progress bar or view the workflow details in a read-only view.

    Progress bar

    To view the status of a workflow on the Targeting page:

    1. Navigate to the flags list and select the flag with the workflow you want to view. The flag's Targeting tab appears.
    2. View active workflows listed at the top of the Targeting tab.
    A progress bar that shows the workflow status on the "Targeting" tab.
    A progress bar that shows the workflow status on the "Targeting" tab.
    1. Click a stage bubble for more information on what actions are being taken in that stage.
    The bubbles of the progress bar show more details about each change in the stage.
    The bubbles of the progress bar show more details about each change in the stage.

    Workflow details

    To view the workflow details:

    1. Navigate to the flags list and select the flag with the workflow you want to view.
    2. Click the Workflows tab to view a list of all active workflows.
    3. Click the name of the workflow you'd like to view.

    Deleting a workflow

    Deleting a workflow stops any further stages from executing. It does not undo any changes that the workflow has already made.

    To delete a workflow:

    1. Navigate to the flags list and select the flag with the workflow you want to view.
    2. Click the Workflows tab.
    3. Click the name next to the workflow you want to delete to open the workflow details.
    4. Click Delete workflow.
    5. Enter the flag name or key to confirm the deletion.
    6. Click Delete.

    Understanding permissions in workflows

    A LaunchDarkly member must have permission to make flag changes to create workflows because workflows inherit permissions from flags. To learn more about how to configure the right permissions for members, read Resources.