AWS::Amplify::Branch - Amazon CloudFormation
Services or capabilities described in Amazon Web Services documentation might vary by Region. To see the differences applicable to the China Regions, see Getting Started with Amazon Web Services in China (PDF).

AWS::Amplify::Branch

The AWS::Amplify::Branch resource specifies a new branch within an app.

Syntax

To declare this entity in your Amazon CloudFormation template, use the following syntax:

JSON

{ "Type" : "AWS::Amplify::Branch", "Properties" : { "AppId" : String, "Backend" : Backend, "BasicAuthConfig" : BasicAuthConfig, "BranchName" : String, "BuildSpec" : String, "Description" : String, "EnableAutoBuild" : Boolean, "EnablePerformanceMode" : Boolean, "EnablePullRequestPreview" : Boolean, "EnvironmentVariables" : [ EnvironmentVariable, ... ], "Framework" : String, "PullRequestEnvironmentName" : String, "Stage" : String, "Tags" : [ Tag, ... ] } }

YAML

Type: AWS::Amplify::Branch Properties: AppId: String Backend: Backend BasicAuthConfig: BasicAuthConfig BranchName: String BuildSpec: String Description: String EnableAutoBuild: Boolean EnablePerformanceMode: Boolean EnablePullRequestPreview: Boolean EnvironmentVariables: - EnvironmentVariable Framework: String PullRequestEnvironmentName: String Stage: String Tags: - Tag

Properties

AppId

The unique ID for an Amplify app.

Required: Yes

Type: String

Pattern: d[a-z0-9]+

Minimum: 1

Maximum: 20

Update requires: Replacement

Backend

The backend for a Branch of an Amplify app. Use for a backend created from an Amazon CloudFormation stack.

This field is available to Amplify Gen 2 apps only. When you deploy an application with Amplify Gen 2, you provision the app's backend infrastructure using Typescript code.

Required: No

Type: Backend

Update requires: No interruption

BasicAuthConfig

The basic authorization credentials for a branch of an Amplify app. You must base64-encode the authorization credentials and provide them in the format user:password.

Required: No

Type: BasicAuthConfig

Pattern: (?s).*

Maximum: 2000

Update requires: No interruption

BranchName

The name for the branch.

Required: Yes

Type: String

Pattern: (?s).+

Minimum: 1

Maximum: 255

Update requires: Replacement

BuildSpec

The build specification (build spec) for the branch.

Required: No

Type: String

Pattern: (?s).+

Minimum: 1

Maximum: 25000

Update requires: No interruption

Description

The description for the branch that is part of an Amplify app.

Required: No

Type: String

Pattern: (?s).*

Maximum: 1000

Update requires: No interruption

EnableAutoBuild

Enables auto building for the branch.

Required: No

Type: Boolean

Update requires: No interruption

EnablePerformanceMode

Enables performance mode for the branch.

Performance mode optimizes for faster hosting performance by keeping content cached at the edge for a longer interval. When performance mode is enabled, hosting configuration or code changes can take up to 10 minutes to roll out.

Required: No

Type: Boolean

Update requires: No interruption

EnablePullRequestPreview

Specifies whether Amplify Hosting creates a preview for each pull request that is made for this branch. If this property is enabled, Amplify deploys your app to a unique preview URL after each pull request is opened. Development and QA teams can use this preview to test the pull request before it's merged into a production or integration branch.

To provide backend support for your preview, Amplify automatically provisions a temporary backend environment that it deletes when the pull request is closed. If you want to specify a dedicated backend environment for your previews, use the PullRequestEnvironmentName property.

For more information, see Web Previews in the Amazon Amplify Hosting User Guide.

Required: No

Type: Boolean

Update requires: No interruption

EnvironmentVariables

The environment variables for the branch.

Required: No

Type: Array of EnvironmentVariable

Update requires: No interruption

Framework

The framework for the branch.

Required: No

Type: String

Pattern: (?s).*

Maximum: 255

Update requires: No interruption

PullRequestEnvironmentName

If pull request previews are enabled for this branch, you can use this property to specify a dedicated backend environment for your previews. For example, you could specify an environment named prod, test, or dev that you initialized with the Amplify CLI and mapped to this branch.

To enable pull request previews, set the EnablePullRequestPreview property to true.

If you don't specify an environment, Amplify Hosting provides backend support for each preview by automatically provisioning a temporary backend environment. Amplify Hosting deletes this environment when the pull request is closed.

For more information about creating backend environments, see Feature Branch Deployments and Team Workflows in the Amazon Amplify Hosting User Guide.

Required: No

Type: String

Pattern: (?s).*

Maximum: 20

Update requires: No interruption

Stage

Describes the current stage for the branch.

Required: No

Type: String

Allowed values: EXPERIMENTAL | BETA | PULL_REQUEST | PRODUCTION | DEVELOPMENT

Update requires: No interruption

Tags

The tag for the branch.

Required: No

Type: Array of Tag

Update requires: No interruption

Return values

Fn::GetAtt

The Fn::GetAtt intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the Fn::GetAtt intrinsic function, see Fn::GetAtt.

Arn

ARN for a branch, part of an Amplify App.

BranchName

Name for a branch, part of an Amplify App.