-
Notifications
You must be signed in to change notification settings - Fork 100
Update ephemeral environment docs with automatic deployments #2871
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
Open
lourens-octopus
wants to merge
2
commits into
main
Choose a base branch
from
lourens/add-automatic-deployments-to-ee
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+39
−12
Open
Changes from all commits
Commits
Show all changes
2 commits
Select commit
Hold shift + click to select a range
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
Binary file modified
BIN
-115 KB
(52%)
...rojects/ephemeral-environments/confirm-ephemeral-environments-configuration.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified
BIN
-124 KB
(45%)
public/docs/projects/ephemeral-environments/deprovision-ephemeral-environment.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified
BIN
-154 KB
(40%)
public/docs/projects/ephemeral-environments/ephemeral-environment-settings.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified
BIN
-179 KB
(44%)
public/docs/projects/ephemeral-environments/ephemeral-environments-configured.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified
BIN
-129 KB
(44%)
public/docs/projects/ephemeral-environments/getting-started.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified
BIN
-112 KB
(44%)
public/docs/projects/ephemeral-environments/viewing-ephemeral-environments.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
--- | ||
layout: src/layouts/Default.astro | ||
pubDate: 2025-09-08 | ||
modDate: 2025-09-08 | ||
pubDate: 2025-10-17 | ||
modDate: 2025-10-17 | ||
title: Ephemeral Environments | ||
navTitle: Ephemeral Environments | ||
navSection: Ephemeral Environments | ||
|
@@ -17,7 +17,7 @@ Support for Ephemeral Environments is rolling out as an Early Access Preview to | |
|
||
Ephemeral environments integrate smoothly into your existing development workflows by building on existing Octopus features such as [Releases](/docs/releases), [Channels](/docs/releases/channels) and [Runbooks](/docs/runbooks). | ||
|
||
Octopus will automatically create and deploy to an ephemeral environment from releases created within a specifically configured channel in a project, and supports provisioning and deprovisioning of associated infrastructure using Runbooks. | ||
Octopus can automatically create and deploy to an ephemeral environment from releases created within a specifically configured channel in a project, and supports provisioning and deprovisioning of associated infrastructure using Runbooks. | ||
|
||
## Getting started | ||
|
||
|
@@ -41,11 +41,19 @@ Enter the name for a new parent environment or select an existing parent environ | |
Give your parent environment a recognizable name that describes what you intend to use ephemeral environments for. Examples might include "Pull request environments" or "Test environments". | ||
::: | ||
|
||
### Naming | ||
### Auto Deploy | ||
|
||
Octopus will automatically provision a new ephemeral environment for you from releases in your project. The name of each environment can be configured using an Environment Name Template. Templates support the same powerful syntax as Variables. Any [system variable for a release](/docs/projects/variables/system-variables#release) can be used as part of the template. | ||
You can choose to automatically deploy releases to ephemeral environments when they created. This can help to streamline your workflows by reducing the number of manual steps required to get your changes deployed. | ||
|
||
Enter a template and click Next. | ||
When auto deployment is configured, Octopus will automatically create a new ephemeral environment for you from releases in your project. The name of each environment can be configured using an Environment Name Template. Templates support the same powerful syntax as Variables. Any [system variable for a release](/docs/projects/variables/system-variables#release) can be used as part of the template. | ||
|
||
When auto deployment is not configured, you need to manually create ephemeral environments and deploy releases to them. You can do this using the Octopus Portal, API and CLI. | ||
You can also select to manually create and deploy to an environment. | ||
|
||
Select whether to automatically deploy releases to ephemeral environments. | ||
If you select to automatically deploy, you will also have to provide an environment name template that will be used to name the environment. | ||
|
||
#### Environment Name Template | ||
|
||
:::div{.hint} | ||
**Tips:** | ||
|
@@ -56,7 +64,7 @@ Enter a template and click Next. | |
|
||
::: | ||
|
||
#### Custom Fields | ||
##### Custom Fields | ||
|
||
Releases support Custom Fields which can be used to configure the name of an ephemeral environment. See [Using custom fields in releases](/docs/releases/creating-a-release#custom-fields) for more information. | ||
|
||
|
@@ -90,15 +98,19 @@ Review the selected configuration and click Confirm. You can go back and adjust | |
|
||
 | ||
|
||
Ephemeral environments are now configured for your project. A new channel has been created in the project which will automatically create and deploy to a new environment for each release. | ||
Ephemeral environments are now configured for your project. A new channel has been created in the project to manage the creation and deployment of ephemeral environments. | ||
|
||
Click **Got it** to continue to creating a new environment from a release. | ||
|
||
 | ||
|
||
## Creating an ephemeral environment | ||
|
||
To create an ephemeral environment, create a release in the new channel configured within the project. Octopus will automatically create a new environment and deploy the release to it. | ||
### Automatically | ||
|
||
Octopus can automatically create an ephemeral environment when a release is created in the channel configured for ephemeral environments if automatic deployments is selected. | ||
|
||
To create an ephemeral environment, create a release in the new channel configured within the project. Octopus will create a new environment and deploy the release to it. | ||
|
||
A release can be created using the: | ||
|
||
|
@@ -116,6 +128,16 @@ Remember to provide any custom fields with the release that are used in the envi | |
Support for providing custom fields is not yet available in the Octopus CLI. | ||
::: | ||
|
||
### Manually | ||
|
||
If automatic deployments is not selected, ephemeral environments can be created from the Ephemeral Environments page within the project. | ||
|
||
To create an ephemeral environment manually: | ||
- Select **Add Ephemeral Environment** from the Ephemeral Environments page. | ||
- Enter a name for the environment. | ||
|
||
The environment will now be created in the Not Provisioned state, ready for a release to be deployed to it. Provisioning will be performed automatically by the configured runbook when a release is deployed to the environment. | ||
|
||
## Provisioning infrastructure | ||
|
||
Infrastructure required for an ephemeral environment can be provisioned using a runbook. Octopus will automatically run this runbook before the first deployment to the environment. | ||
|
@@ -136,7 +158,13 @@ Environments can be filtered by name and by the current state of the environment | |
|
||
## Updating an existing environment | ||
|
||
To update an existing ephemeral environment, create another release that results in the same environment name based on the template. The release will be automatically deployed into the environment. | ||
### Automatic Deployments | ||
|
||
Create another release that results in the same environment name based on the environment name template. The release will be automatically deployed into the environment. | ||
|
||
### Manual Deployments | ||
|
||
Create a new release, then deploy it and select the existing environment in the Deploy to step. Octopus deploys the release to that environment without creating a new one. | ||
|
||
## Deprovisioning an environment | ||
|
||
|
@@ -157,7 +185,7 @@ To deprovision an environment: | |
|
||
### Automatic deprovisioning of environments | ||
|
||
Ephemeral environments can be automatically deprovisioned if they are inactive after after a configurable time period. Deploying a release to an environment or running a runbook against an environment marks the environment as still being active. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Oops, good pickup, thanks! |
||
Ephemeral environments can be automatically deprovisioned if they are inactive after a configurable time period. Deploying a release to an environment or running a runbook against an environment marks the environment as still being active. | ||
|
||
:::div{.hint} | ||
By default, ephemeral environments are removed after 7 days of inactivity. | ||
|
@@ -206,4 +234,3 @@ The following limitations currently apply to the use of the Ephemeral Environmen | |
- Ephemeral environments cannot be deployed to tenants. | ||
- Parent environments cannot be connected to tenants. | ||
- Ephemeral environments and parent environments cannot be used within lifecycles, deployment freezes and insights reports. | ||
- Ephemeral environments cannot be manually created outside of releases. |
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.