mirror of
				https://github.com/Unleash/unleash.git
				synced 2025-10-27 11:02:16 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			108 lines
		
	
	
		
			5.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			108 lines
		
	
	
		
			5.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| ---
 | |
| title: Release templates
 | |
| ---
 | |
| 
 | |
| import SearchPriority from '@site/src/components/SearchPriority';
 | |
| 
 | |
| <SearchPriority level="high" />
 | |
| 
 | |
| :::note Availability
 | |
| 
 | |
| **Plan**: [Enterprise](https://www.getunleash.io/pricing) cloud-hosted | **Version**: `6.8+` in [BETA](/availability#beta-features).
 | |
| 
 | |
| :::
 | |
| 
 | |
| <details>
 | |
|   <summary>Participate in the beta program</summary>
 | |
| 
 | |
|   Release templates are currently in beta. If you're interesting in trying the feature out, please contact us at beta@getunleash.io.
 | |
| 
 | |
|   Future iterations of the feature may include:
 | |
|     - An overview of ongoing releases and currently running milestones across all projects
 | |
|     - Automated transitions between different milestones
 | |
|     - Reporting on release templates
 | |
| </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](/reference/activation-strategies) 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](/reference/activation-strategies), 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
 | |
| 
 | |
| > Note: For this action, you must be an Editor or have a custom root role with [release templates permissions](/reference/rbac#release-template-permissions).
 | |
| 
 | |
| To create a release template, do the following:
 | |
| 
 | |
| 1. In the Admin UI, go to **Configure > Release templates**, 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 [strategy](/reference/activation-strategies).
 | |
| 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 strategies and their 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:
 | |
| 1. Create Milestone 1 with a strategy to target the 50% of _Basic_ plan users.
 | |
| 2. Create Milestone 2 and keep the '50% _Basic_ plan' strategy. Add a new strategy to target 25% _Premium_ plan users.
 | |
| 
 | |
| The configuration would look something like this:
 | |
| 
 | |
| 
 | |
| 
 | |
| ## 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 **Use template** 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.
 |