1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-04-29 01:15:48 +02:00
unleash.unleash/website/docs/reference/release-management.mdx
2025-03-17 16:12:20 +01:00

103 lines
4.8 KiB
Plaintext

---
title: Release management
---
:::note Availability
**Plan**: [Enterprise](https://www.getunleash.io/pricing) cloud-hosted | **Version**: `6.8+` in [BETA](/availability#beta-features).
:::
<details>
<summary>Share your feedback</summary>
We're currently gathering feedback for release templates and release plans.
To provide feedback using the Admin UI, go to **Configure > Release management**, and click **Share your feedback**.
Future iterations of the feature may include:
- An overview of ongoing releases and currently running milestones
- Automated transitions between different milestones
</details>
## Overview
[Release templates](#release-template) help you standardize your approach to rolling out new features. By predefining a set of release milestones, you can ensure consistency across all your feature rollouts.
Instead of manually configuring the same [activation strategies](/activation-strategies#rollout-percentage) across different feature flags, you can define release templates once, and apply them to any feature flag to initiate a rollout.
[Milestones](#milestone) rely on activation strategies to give you full flexibility when it comes to customizing your release templates. Each milestone executes sequentially, ensuring a structured release process.
For example, you might define 3 milestones for a release:
- **Milestone 1**: Enable the feature for internal teams to test functionality and resolve initial issues.
- **Milestone 2**: Expand the rollout to 20% of beta users to gather feedback and monitor performance.
- **Milestone 3**: Release the feature to all users after confirming stability and addressing earlier feedback.
#### Release template
A predefined sequence of [milestones](#milestone) that structures a feature release.
#### Milestone
Sequential stages within a [release template](#release-template). Each milestone must contain at least one [activation strategy](/activation-strategies#rollout-percentage), which determines when a feature flag is enabled.
You can combine multiple activation strategies in a single milestone. Unleash evaluates each strategy independently, enabling the flag if any strategy resolves to true.
#### Release plan
An instance of a [release template](#release-template) applied to a specific feature flag in a specific environment. You can combine a release plan with additional activation strategies.
## Create a release template
To create a release template, do the following:
1. In the Admin UI, go to **Configure > Release management**, and click **New template**.
2. Enter the template name and an optional description.
3. For the first milestone, click **Add strategy**.
4. Choose a strategy type and configure your [rollout percentage](/activation-strategies#rollout-percentage), [targeting](/activation-strategies#targeting), and [variants](/reference/strategy-variants).
5. Click **Add strategy**.
6. Optional: Add, rename or reorder milestones as needed.
7. Click **Create template**.
## Configure a gradual rollout with release templates
Milestones are designed to be flexible and do not inherit the configurations of previous milestones. To build a gradual rollout where each milestone expands on the previous one, you must manually configure the progression of the constraints.
For example, suppose you want to structure your rollout as follows:
- **Milestone 1**: Enable the feature for 50% of users on the *Basic* plan.
- **Milestone 2**: Keep the same 50% of *Basic* users from Milestone 1 and add 25% of *Premium* users.
To achieve this, you need to configure Milestone 2 with both constraints:
- A 50% *Basic* users constraint.
- A 25% *Premium* users constraint.
The configuration would look something like this:
![Example of progressive milestones](/img/progressive-milestones.png)
## Apply a release template to a feature flag
To apply a release template to a feature flag, do the following:
1. In the Admin UI, open a feature flag and select your target environment.
2. Click **More strategies** (triple-dot icon) and select one of the available release templates.
3. Click **Add release plan**.
If the environment is enabled, the first milestone starts automatically.
## Perform a release using a release plan
Release plans apply per feature and environment. To add a release plan, [apply a release template](#apply-a-release-template-to-a-feature-flag).
### Start the release
If the environment is enabled, the first milestone begins automatically upon adding the release plan. Otherwise, enable the environment to start the first milestone.
### Pause the release
Pause the release at any time by disabling the environment for the feature flag.
### Progress to the next milestone
To progress to the next milestone, click **Start** on the milestone you want to run.
### Revert to a previous milestone
To return to a previous stage of the rollout, click **Restart** on the milestone you want to revert to.