Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: environment change requests #9648

Merged
merged 2 commits into from
Apr 3, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 23 additions & 4 deletions website/docs/reference/change-requests.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,10 @@ import VideoContent from '@site/src/components/VideoContent.jsx';
## Overview

Change requests allow you to require an additional approval step before any changes can be made in an environment. This functionality supports the "four-eyes principle", ensuring compliance in industries with strict legal or regulatory requirements.

Change requests also allow you to group changes and [apply them at a specific point in time](#scheduled-change-requests).

Change requests can be enabled on a per-project and per-environment basis. This allows you to differentiate your configurations across different environments, such as production and development.
Change requests can be enabled for a specific environment within a project, or configured globally for an environment across all projects. This allows you to differentiate your configurations across different environments, such as production and development.

You can require up to 10 approvals for a change request.

Expand Down Expand Up @@ -78,7 +78,7 @@ Alternatively, you can use constraints or segments with the `DATE_AFTER` [operat
### Scheduling errors

Unleash suspends a scheduled change request if:
- The change request includes updates to a flag that has been archived or a strategy that has been deleted.
- The change request includes updates to a flag that has been archived or a strategy that has been deleted.
- The change request includes a strategy, segment, or variant that has been updated.
- The user who scheduled a change request is deleted from the users list before the scheduled time.

Expand All @@ -104,8 +104,27 @@ While change requests are environment-specific, project segments are not. For th

Only Admin users can bypass the change request process for project segments through API calls.

## Environment-level change requests
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@kwasniew what do you think about calling it 'Environment-level change requests'? 'Global environment change requests' makes me think there is such a thing as a 'global environment'. but happy to change it back if you think it's better

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like it :)


:::note Availability

**Plan**: [Enterprise](https://www.getunleash.io/pricing) | **Version**: `6.10+`

:::

You can preconfigure change request requirements at the environment level. When configured, all new projects automatically inherit these approval requirements for the specified environments.

You can use environment-level change requests in two ways:

* **As defaults**: Set default approvals per environment, but allow project [Owners](/reference/rbac#projects#predefined-roles) and users with [project update permissions](/reference/rbac#projects) to override the defaults within their projects.
* **As enforced requirements**: Set mandatory approvals for a given environment across all projects. To fully enforce this in a project, ensure that the project has no Owner or users with project update permissions—this prevents any change request modifications at the project level.

You can predefine environment-level change requests when creating or editing an environment in **Configure > Environments**.

![Environment-level change requests](/img/environment-level-change-requests.png)

## Change request preview

To verify a change request, you can preview the changes in [Playground](/reference/playground) by clicking **Preview changes**. You can adjust [Unleash context](/reference/playground#the-unleash-context), but the project and environment remain fixed as they are determined by the change request.

You can only preview a change request in **In Review**, **Approved**, or **Scheduled** states.
You can only preview a change request in **In Review**, **Approved**, or **Scheduled** states.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.