LaunchDarkly

About the integration

Feature flags are an integral part of agile software development, and an important variable in deploying a successful CI/CD pipeline. Making high-impact changes with minimal risk and maximum control of your applications helps deliver quality software to your customers.

The Sleuth LaunchDarkly integration provides a powerful way to track how your feature flags affect the quality of your deploys over time. The LaunchDarkly integration enables Sleuth to track changes made via your LaunchDarkly features flags.

Before you start you should already have a LaunchDarkly account, and your environment setup and running. If not, head over to LaunchDarkly to get things started.

Setting up the integration

To add the LaunchDarkly integration:

  1. Click Integrations in the sidebar.

  2. Click enable in the LaunchDarkly Change Sources card.

You must add Sleuth as an Authorized Application in the corresponding LaunchDarkly environment that contains the feature flags you want tracked. For more information, read the LaunchDarkly documentation.

3. On successful integration, you'll see LaunchDarkly enabled (Connected as <LaunchDarkly user account>) displayed in the LaunchDarkly tile.

4. That’s it—Sleuth will now track your feature flags as a source of change. Read Dashboard for more information on how feature flag issues are communicated within your project’s deploy cards.

Configuring the integration

You now need to add a LaunchDarkly project and environment to a Sleuth project as a feature flag change source. This source of change is the project that Sleuth will monitor and report in the Dashboard on each and every deploy you make to that repo, along with additional information from any other connected change sources report t.

To configure the LaunchDarkly integration:

  1. After step #4 above, you will be taken back to the LaunchDarkly integration tile. On the LaunchDarkly tile, click the Add feature flags dropdown.

  2. Select the Sleuth project you wish to add a feature flag chance source to from the dropdown list.

  3. In the Edit Feature Flag change source screen, you must configure which feature flag project and environment to monitor and give the change source a name. Any Sleuth projects currently using feature flags as a change source are displayed in the Used by code deployments section.

Advanced Settings

The preferences in Advanced Settings allow you to control the flow of data that are generated by a deploy. You can control whether a deploy affects your project's health, shows up in notifications, or is included in the project dashboard.

All settings are on (checked) by default. However, there might be some code that you don't want affecting your frequency graph, or a change source points to a staging version of your codebase that contains fragile code, which you don't want affecting your repo's health report.

For example, Sleuth Documentation is a public Sleuth repo (sleuth-gitbook-docs). However, we have disabled Collect Impact on Deploy for that particular repo. Although we treat documentation as code (our documentation is sourced in Markdown), the impact of deploying documentation shouldn't impact the overall health reports that Sleuth generates for the top-level repo. To put it another way: Documentation commits and PRs shouldn't bring down the application.

The preferences available in Advanced Settings are:

Notify in Slack

With Notify in Slack checked, all activity in this change source will generate a Slack notification in accordance with any project- and organization-level Slack notification preferences that have already been set.

Collect Impact on Deploy 📏

With Collect Impact on Deploy checked, any impact measurements generated by this change of source will be applied to your project's collective health metrics.

Include in Project Dashboard 📊

With Include in Project Dashboard checked, all the deploys for this change source will be included in the project dashboard and frequency graph.

Advanced Settings for feature flag change source

Removing the integration

If you wish to dissolve the LaunchDarkly integration for the organization:

  1. Click on Integrations in the left sidebar, then on Change Sources.

  2. In the LaunchDarkly integration card, click disable. The message LaunchDarkly disabled is displayed in the LaunchDarkly integration card once the integration is dissolved.

The LaunchDarkly integration is disconnected and no longer available to any projects within that organization.