Class CfnAppProps.Builder

java.lang.Object
software.amazon.awscdk.services.amplify.CfnAppProps.Builder
All Implemented Interfaces:
software.amazon.jsii.Builder<CfnAppProps>
Enclosing interface:
CfnAppProps

@Stability(Stable) public static final class CfnAppProps.Builder extends Object implements software.amazon.jsii.Builder<CfnAppProps>
A builder for CfnAppProps
  • Constructor Details

    • Builder

      public Builder()
  • Method Details

    • name

      @Stability(Stable) public CfnAppProps.Builder name(String name)
      Sets the value of CfnAppProps.getName()
      Parameters:
      name - The name of the Amplify app. This parameter is required.
      Returns:
      this
    • accessToken

      @Stability(Stable) public CfnAppProps.Builder accessToken(String accessToken)
      Parameters:
      accessToken - The personal access token for a GitHub repository for an Amplify app. The personal access token is used to authorize access to a GitHub repository using the Amplify GitHub App. The token is not stored.

      Use AccessToken for GitHub repositories only. To authorize access to a repository provider such as Bitbucket or CodeCommit, use OauthToken .

      You must specify either AccessToken or OauthToken when you create a new app.

      Existing Amplify apps deployed from a GitHub repository using OAuth continue to work with CI/CD. However, we strongly recommend that you migrate these apps to use the GitHub App. For more information, see Migrating an existing OAuth app to the Amplify GitHub App in the Amplify User Guide .

      Returns:
      this
    • autoBranchCreationConfig

      @Stability(Stable) public CfnAppProps.Builder autoBranchCreationConfig(IResolvable autoBranchCreationConfig)
      Parameters:
      autoBranchCreationConfig - Sets the configuration for your automatic branch creation.
      Returns:
      this
    • autoBranchCreationConfig

      @Stability(Stable) public CfnAppProps.Builder autoBranchCreationConfig(CfnApp.AutoBranchCreationConfigProperty autoBranchCreationConfig)
      Parameters:
      autoBranchCreationConfig - Sets the configuration for your automatic branch creation.
      Returns:
      this
    • basicAuthConfig

      @Stability(Stable) public CfnAppProps.Builder basicAuthConfig(IResolvable basicAuthConfig)
      Parameters:
      basicAuthConfig - The credentials for basic authorization for an Amplify app. You must base64-encode the authorization credentials and provide them in the format user:password .
      Returns:
      this
    • basicAuthConfig

      @Stability(Stable) public CfnAppProps.Builder basicAuthConfig(CfnApp.BasicAuthConfigProperty basicAuthConfig)
      Parameters:
      basicAuthConfig - The credentials for basic authorization for an Amplify app. You must base64-encode the authorization credentials and provide them in the format user:password .
      Returns:
      this
    • buildSpec

      @Stability(Stable) public CfnAppProps.Builder buildSpec(String buildSpec)
      Sets the value of CfnAppProps.getBuildSpec()
      Parameters:
      buildSpec - The build specification (build spec) for an Amplify app.
      Returns:
      this
    • cacheConfig

      @Stability(Stable) public CfnAppProps.Builder cacheConfig(IResolvable cacheConfig)
      Parameters:
      cacheConfig - The cache configuration for the Amplify app. If you don't specify the cache configuration type , Amplify uses the default AMPLIFY_MANAGED setting.
      Returns:
      this
    • cacheConfig

      @Stability(Stable) public CfnAppProps.Builder cacheConfig(CfnApp.CacheConfigProperty cacheConfig)
      Parameters:
      cacheConfig - The cache configuration for the Amplify app. If you don't specify the cache configuration type , Amplify uses the default AMPLIFY_MANAGED setting.
      Returns:
      this
    • customHeaders

      @Stability(Stable) public CfnAppProps.Builder customHeaders(String customHeaders)
      Parameters:
      customHeaders - The custom HTTP headers for an Amplify app.
      Returns:
      this
    • customRules

      @Stability(Stable) public CfnAppProps.Builder customRules(IResolvable customRules)
      Parameters:
      customRules - The custom rewrite and redirect rules for an Amplify app.
      Returns:
      this
    • customRules

      @Stability(Stable) public CfnAppProps.Builder customRules(List<? extends Object> customRules)
      Parameters:
      customRules - The custom rewrite and redirect rules for an Amplify app.
      Returns:
      this
    • description

      @Stability(Stable) public CfnAppProps.Builder description(String description)
      Parameters:
      description - The description of the Amplify app.
      Returns:
      this
    • enableBranchAutoDeletion

      @Stability(Stable) public CfnAppProps.Builder enableBranchAutoDeletion(Boolean enableBranchAutoDeletion)
      Parameters:
      enableBranchAutoDeletion - Automatically disconnect a branch in Amplify Hosting when you delete a branch from your Git repository.
      Returns:
      this
    • enableBranchAutoDeletion

      @Stability(Stable) public CfnAppProps.Builder enableBranchAutoDeletion(IResolvable enableBranchAutoDeletion)
      Parameters:
      enableBranchAutoDeletion - Automatically disconnect a branch in Amplify Hosting when you delete a branch from your Git repository.
      Returns:
      this
    • environmentVariables

      @Stability(Stable) public CfnAppProps.Builder environmentVariables(IResolvable environmentVariables)
      Parameters:
      environmentVariables - The environment variables for the Amplify app. For a list of the environment variables that are accessible to Amplify by default, see Amplify Environment variables in the Amplify Hosting User Guide .
      Returns:
      this
    • environmentVariables

      @Stability(Stable) public CfnAppProps.Builder environmentVariables(List<? extends Object> environmentVariables)
      Parameters:
      environmentVariables - The environment variables for the Amplify app. For a list of the environment variables that are accessible to Amplify by default, see Amplify Environment variables in the Amplify Hosting User Guide .
      Returns:
      this
    • iamServiceRole

      @Stability(Stable) public CfnAppProps.Builder iamServiceRole(String iamServiceRole)
      Parameters:
      iamServiceRole - AWS Identity and Access Management ( IAM ) service role for the Amazon Resource Name (ARN) of the Amplify app.
      Returns:
      this
    • oauthToken

      @Stability(Stable) public CfnAppProps.Builder oauthToken(String oauthToken)
      Sets the value of CfnAppProps.getOauthToken()
      Parameters:
      oauthToken - The OAuth token for a third-party source control system for an Amplify app. The OAuth token is used to create a webhook and a read-only deploy key using SSH cloning. The OAuth token is not stored.

      Use OauthToken for repository providers other than GitHub, such as Bitbucket or CodeCommit. To authorize access to GitHub as your repository provider, use AccessToken .

      You must specify either OauthToken or AccessToken when you create a new app.

      Existing Amplify apps deployed from a GitHub repository using OAuth continue to work with CI/CD. However, we strongly recommend that you migrate these apps to use the GitHub App. For more information, see Migrating an existing OAuth app to the Amplify GitHub App in the Amplify User Guide .

      Returns:
      this
    • platform

      @Stability(Stable) public CfnAppProps.Builder platform(String platform)
      Sets the value of CfnAppProps.getPlatform()
      Parameters:
      platform - The platform for the Amplify app. For a static app, set the platform type to WEB . For a dynamic server-side rendered (SSR) app, set the platform type to WEB_COMPUTE . For an app requiring Amplify Hosting's original SSR support only, set the platform type to WEB_DYNAMIC .

      If you are deploying an SSG only app with Next.js version 14 or later, you must set the platform type to WEB_COMPUTE and set the artifacts baseDirectory to .next in the application's build settings. For an example of the build specification settings, see Amplify build settings for a Next.js 14 SSG application in the Amplify Hosting User Guide .

      Returns:
      this
    • repository

      @Stability(Stable) public CfnAppProps.Builder repository(String repository)
      Sets the value of CfnAppProps.getRepository()
      Parameters:
      repository - The Git repository for the Amplify app.
      Returns:
      this
    • tags

      @Stability(Stable) public CfnAppProps.Builder tags(List<? extends CfnTag> tags)
      Sets the value of CfnAppProps.getTags()
      Parameters:
      tags - The tag for an Amplify app.
      Returns:
      this
    • build

      @Stability(Stable) public CfnAppProps build()
      Builds the configured instance.
      Specified by:
      build in interface software.amazon.jsii.Builder<CfnAppProps>
      Returns:
      a new instance of CfnAppProps
      Throws:
      NullPointerException - if any required attribute was not provided