diff --git a/src/pages/docs/releases/channels/index.md b/src/pages/docs/releases/channels/index.md index 08c4e23f69..900222fb84 100644 --- a/src/pages/docs/releases/channels/index.md +++ b/src/pages/docs/releases/channels/index.md @@ -1,7 +1,7 @@ --- layout: src/layouts/Default.astro pubDate: 2023-01-01 -modDate: 2025-09-23 +modDate: 2025-10-28 title: Channels icon: fa-solid fa-arrows-split-up-and-left description: Channels allow you to dynamically change the deployment logic and lifecycle of a project based on the version being deployed. @@ -33,15 +33,41 @@ Channels are managed from the Projects page by selecting the specific project yo As you add more channels, you'll notice that they are arranged in alphabetical order on the channels page. -## Create a new channel +### Channel Types + +There are two types of channel: +- Lifecycle channels: Releases in this channel will progress through the lifecycle defined for the channel. +- Ephemeral Environment channels: Releases in this channel will be deployed to ephemeral environments. The environment will be provisioned automatically when it is first deployed to. A project can only have one ephemeral environment channel. + +## Create a new lifecycle channel + +1. From the Channels page, click on the **Add Channel** button. +2. Select **Lifecycle** for the channel type +3. Give the channel a name and add a description. The channel name must be unique within the project. +4. Select the [lifecycle](/docs/releases/lifecycles/) the channel will use, or allow the channel to inherit the default lifecycle for the project. See the [lifecycle docs](/docs/releases/lifecycles) for information about creating new lifecycles. +5. If you want to make this the default channel for the project, click the **Default channel** check-box. +6. Configure the [channel rules](#channel-rules). + - [Package version](#version-rules) will be used to enforce which versions of your packages are deployed to this channel + - [Git protection rules](#git-protection-rules) will be used to control the use of files from Git repositories during deployments +7. Configure any [custom fields](#custom-fields) you want to require when creating releases in this channel. + +## Create a new ephemeral environment channel + +Ephemeral Environment channels are designed to work with [ephemeral environments](/docs/projects/ephemeral-environments). When a release is deployed to an ephemeral environment channel, the environment will be provisioned automatically if it does not already exist. 1. From the Channels page, click on the **Add Channel** button. -2. Give the channel a name and add a description. The channel name must be unique within the project. -3. Select the [lifecycle](/docs/releases/lifecycles/) the channel will use, or allow the channel to inherit the default lifecycle for the project. See the [lifecycle docs](/docs/releases/lifecycles) for information about creating new lifecycles. +2. Select **Ephemeral Environment** for the channel type +3. Give the channel a name and add a description. The channel name must be unique within the project. 4. If you want to make this the default channel for the project, click the **Default channel** check-box. -5. Design the [version rules](#version-rules) that will be used to enforce which versions of your packages are deployed to this channel. +5. Select the [parent environment](/docs/projects/ephemeral-environments#parent-environment). +6. Select whether you want to [automatically deploy](/docs/projects/ephemeral-environments#auto-deploy) to the environment when a release is created. +7. Provide a [name template](/docs/projects/ephemeral-environments#naming) for the ephemeral environment. +8. Configure the [channel rules](#channel-rules). + - [Package version](#version-rules) will be used to enforce which versions of your packages are deployed to this channel + - [Git protection rules](#git-protection-rules) will be used to control the use of files from Git repositories during deployments +9. Configure any [custom fields](#custom-fields) you want to require when creating releases in this channel. -## Channel rules +### Channel rules Channels allow to you to configure rules to ensure that package versions and Git resources that meet specific criteria can be deployed using the channel. @@ -264,4 +290,4 @@ The image below shows an example dashboard with discrete channel release enabled ## Removing channels -For projects using Config as Code, it's up to you to take care to avoid deleting any channels required by your deployments. See our [core design decisions](/docs/projects/version-control/unsupported-config-as-code-scenarios#core-design-decision) for more information. \ No newline at end of file +For projects using Config as Code, it's up to you to take care to avoid deleting any channels required by your deployments. See our [core design decisions](/docs/projects/version-control/unsupported-config-as-code-scenarios#core-design-decision) for more information.