AppArgs

data class AppArgs(val accessToken: Output<String>? = null, val autoBranchCreationConfig: Output<AppAutoBranchCreationConfigArgs>? = null, val autoBranchCreationPatterns: Output<List<String>>? = null, val basicAuthCredentials: Output<String>? = null, val buildSpec: Output<String>? = null, val cacheConfig: Output<AppCacheConfigArgs>? = null, val computeRoleArn: Output<String>? = null, val customHeaders: Output<String>? = null, val customRules: Output<List<AppCustomRuleArgs>>? = null, val description: Output<String>? = null, val enableAutoBranchCreation: Output<Boolean>? = null, val enableBasicAuth: Output<Boolean>? = null, val enableBranchAutoBuild: Output<Boolean>? = null, val enableBranchAutoDeletion: Output<Boolean>? = null, val environmentVariables: Output<Map<String, String>>? = null, val iamServiceRoleArn: Output<String>? = null, val name: Output<String>? = null, val oauthToken: Output<String>? = null, val platform: Output<String>? = null, val repository: Output<String>? = null, val tags: Output<Map<String, String>>? = null) : ConvertibleToJava<AppArgs>

/* /* /* /* /* /* /* /* /* /* /* /* /* /* /* /* /* /* Provides an Amplify App resource, a fullstack serverless app hosted on the AWS Amplify Console.

Note: When you create/update an Amplify App from the provider, you may end up with the error "BadRequestException: You should at least provide one valid token" because of authentication issues. See the section "Repository with Tokens" below.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.amplify.App("example", {
name: "example",
repository: "https://github.com/example/app",
buildSpec: `version: 0.1
frontend:
phases:
preBuild:
commands:
- yarn install
build:
commands:
- yarn run build
artifacts:
baseDirectory: build
files:
- '**/*'
cache:
paths:
- node_modules/**/*
`,
customRules: [{
source: "/<*>",
status: "404",
target: "/index.html",
}],
environmentVariables: {
ENV: "test",
},
});
import pulumi
import pulumi_aws as aws
example = aws.amplify.App("example",
name="example",
repository="https://github.com/example/app",
build_spec="""version: 0.1
frontend:
phases:
preBuild:
commands:
- yarn install
build:
commands:
- yarn run build
artifacts:
baseDirectory: build
files:
- '**/*'
cache:
paths:
- node_modules/**/*
""",
custom_rules=[{
"source": "/<*>",
"status": "404",
"target": "/index.html",
}],
environment_variables={
"ENV": "test",
})
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.Amplify.App("example", new()
{
Name = "example",
Repository = "https://github.com/example/app",
BuildSpec = @"version: 0.1
frontend:
phases:
preBuild:
commands:
- yarn install
build:
commands:
- yarn run build
artifacts:
baseDirectory: build
files:
- '**/*'
cache:
paths:
- node_modules/**/*
",
CustomRules = new[]
{
new Aws.Amplify.Inputs.AppCustomRuleArgs
{
Source = "/<*>",
Status = "404",
Target = "/index.html",
},
},
EnvironmentVariables =
{
{ "ENV", "test" },
},
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/amplify"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := amplify.NewApp(ctx, "example", &amplify.AppArgs{
Name: pulumi.String("example"),
Repository: pulumi.String("https://github.com/example/app"),
BuildSpec: pulumi.String(`version: 0.1
frontend:
phases:
preBuild:
commands:
- yarn install
build:
commands:
- yarn run build
artifacts:
baseDirectory: build
files:
- '**/*'
cache:
paths:
- node_modules/**/*
`),
CustomRules: amplify.AppCustomRuleArray{
&amplify.AppCustomRuleArgs{
Source: pulumi.String("/<*>"),
Status: pulumi.String("404"),
Target: pulumi.String("/index.html"),
},
},
EnvironmentVariables: pulumi.StringMap{
"ENV": pulumi.String("test"),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.amplify.App;
import com.pulumi.aws.amplify.AppArgs;
import com.pulumi.aws.amplify.inputs.AppCustomRuleArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new App("example", AppArgs.builder()
.name("example")
.repository("https://github.com/example/app")
.buildSpec("""
version: 0.1
frontend:
phases:
preBuild:
commands:
- yarn install
build:
commands:
- yarn run build
artifacts:
baseDirectory: build
files:
- '**/*'
cache:
paths:
- node_modules/**/*
""")
.customRules(AppCustomRuleArgs.builder()
.source("/<*>")
.status("404")
.target("/index.html")
.build())
.environmentVariables(Map.of("ENV", "test"))
.build());
}
}
resources:
example:
type: aws:amplify:App
properties:
name: example
repository: https://github.com/example/app
buildSpec: |
version: 0.1
frontend:
phases:
preBuild:
commands:
- yarn install
build:
commands:
- yarn run build
artifacts:
baseDirectory: build
files:
- '**/*'
cache:
paths:
- node_modules/**/*
customRules:
- source: /<*>
status: '404'
target: /index.html
environmentVariables:
ENV: test

Repository with Tokens

If you create a new Amplify App with the repository argument, you also need to set oauth_token or access_token for authentication. For GitHub, get a personal access token and set access_token as follows:

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.amplify.App("example", {
name: "example",
repository: "https://github.com/example/app",
accessToken: "...",
});
import pulumi
import pulumi_aws as aws
example = aws.amplify.App("example",
name="example",
repository="https://github.com/example/app",
access_token="...")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.Amplify.App("example", new()
{
Name = "example",
Repository = "https://github.com/example/app",
AccessToken = "...",
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/amplify"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := amplify.NewApp(ctx, "example", &amplify.AppArgs{
Name: pulumi.String("example"),
Repository: pulumi.String("https://github.com/example/app"),
AccessToken: pulumi.String("..."),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.amplify.App;
import com.pulumi.aws.amplify.AppArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new App("example", AppArgs.builder()
.name("example")
.repository("https://github.com/example/app")
.accessToken("...")
.build());
}
}
resources:
example:
type: aws:amplify:App
properties:
name: example
repository: https://github.com/example/app
accessToken: '...'

You can omit access_token if you import an existing Amplify App created by the Amplify Console (using OAuth for authentication).

Auto Branch Creation

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.amplify.App("example", {
name: "example",
enableAutoBranchCreation: true,
autoBranchCreationPatterns: [
"*",
"*/**",
],
autoBranchCreationConfig: {
enableAutoBuild: true,
},
});
import pulumi
import pulumi_aws as aws
example = aws.amplify.App("example",
name="example",
enable_auto_branch_creation=True,
auto_branch_creation_patterns=[
"*",
"*/**",
],
auto_branch_creation_config={
"enable_auto_build": True,
})
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.Amplify.App("example", new()
{
Name = "example",
EnableAutoBranchCreation = true,
AutoBranchCreationPatterns = new[]
{
"*",
"*/**",
},
AutoBranchCreationConfig = new Aws.Amplify.Inputs.AppAutoBranchCreationConfigArgs
{
EnableAutoBuild = true,
},
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/amplify"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := amplify.NewApp(ctx, "example", &amplify.AppArgs{
Name: pulumi.String("example"),
EnableAutoBranchCreation: pulumi.Bool(true),
AutoBranchCreationPatterns: pulumi.StringArray{
pulumi.String("*"),
pulumi.String("*/**"),
},
AutoBranchCreationConfig: &amplify.AppAutoBranchCreationConfigArgs{
EnableAutoBuild: pulumi.Bool(true),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.amplify.App;
import com.pulumi.aws.amplify.AppArgs;
import com.pulumi.aws.amplify.inputs.AppAutoBranchCreationConfigArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new App("example", AppArgs.builder()
.name("example")
.enableAutoBranchCreation(true)
.autoBranchCreationPatterns(
"*",
"*/**")
.autoBranchCreationConfig(AppAutoBranchCreationConfigArgs.builder()
.enableAutoBuild(true)
.build())
.build());
}
}
resources:
example:
type: aws:amplify:App
properties:
name: example
enableAutoBranchCreation: true # The default patterns added by the Amplify Console.
autoBranchCreationPatterns:
- '*'
- '*/**'
autoBranchCreationConfig:
enableAutoBuild: true

Basic Authorization

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
import * as std from "@pulumi/std";
const example = new aws.amplify.App("example", {
name: "example",
enableBasicAuth: true,
basicAuthCredentials: std.base64encode({
input: "username1:password1",
}).then(invoke => invoke.result),
});
import pulumi
import pulumi_aws as aws
import pulumi_std as std
example = aws.amplify.App("example",
name="example",
enable_basic_auth=True,
basic_auth_credentials=std.base64encode(input="username1:password1").result)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
using Std = Pulumi.Std;
return await Deployment.RunAsync(() =>
{
var example = new Aws.Amplify.App("example", new()
{
Name = "example",
EnableBasicAuth = true,
BasicAuthCredentials = Std.Base64encode.Invoke(new()
{
Input = "username1:password1",
}).Apply(invoke => invoke.Result),
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/amplify"
"github.com/pulumi/pulumi-std/sdk/go/std"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
invokeBase64encode, err := std.Base64encode(ctx, &std.Base64encodeArgs{
Input: "username1:password1",
}, nil)
if err != nil {
return err
}
_, err = amplify.NewApp(ctx, "example", &amplify.AppArgs{
Name: pulumi.String("example"),
EnableBasicAuth: pulumi.Bool(true),
BasicAuthCredentials: pulumi.String(invokeBase64encode.Result),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.amplify.App;
import com.pulumi.aws.amplify.AppArgs;
import com.pulumi.std.StdFunctions;
import com.pulumi.std.inputs.Base64encodeArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new App("example", AppArgs.builder()
.name("example")
.enableBasicAuth(true)
.basicAuthCredentials(StdFunctions.base64encode(Base64encodeArgs.builder()
.input("username1:password1")
.build()).result())
.build());
}
}
resources:
example:
type: aws:amplify:App
properties:
name: example
enableBasicAuth: true
basicAuthCredentials:
fn::invoke:
function: std:base64encode
arguments:
input: username1:password1
return: result

Rewrites and Redirects

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.amplify.App("example", {
name: "example",
customRules: [
{
source: "/api/<*>",
status: "200",
target: "https://api.example.com/api/<*>",
},
{
source: "</^[^&#46;]+$|\\&#46;(?!(css|gif|ico|jpg|js|png|txt|svg|woff|ttf|map|json)$)([^&#46;]+$)/>",
status: "200",
target: "/index.html",
},
],
});
import pulumi
import pulumi_aws as aws
example = aws.amplify.App("example",
name="example",
custom_rules=[
{
"source": "/api/<*>",
"status": "200",
"target": "https://api.example.com/api/<*>",
},
{
"source": "</^[^&#46;]+$|\\&#46;(?!(css|gif|ico|jpg|js|png|txt|svg|woff|ttf|map|json)$)([^&#46;]+$)/>",
"status": "200",
"target": "/index.html",
},
])
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.Amplify.App("example", new()
{
Name = "example",
CustomRules = new[]
{
new Aws.Amplify.Inputs.AppCustomRuleArgs
{
Source = "/api/<*>",
Status = "200",
Target = "https://api.example.com/api/<*>",
},
new Aws.Amplify.Inputs.AppCustomRuleArgs
{
Source = "</^[^&#46;]+$|\\&#46;(?!(css|gif|ico|jpg|js|png|txt|svg|woff|ttf|map|json)$)([^&#46;]+$)/>",
Status = "200",
Target = "/index.html",
},
},
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/amplify"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := amplify.NewApp(ctx, "example", &amplify.AppArgs{
Name: pulumi.String("example"),
CustomRules: amplify.AppCustomRuleArray{
&amplify.AppCustomRuleArgs{
Source: pulumi.String("/api/<*>"),
Status: pulumi.String("200"),
Target: pulumi.String("https://api.example.com/api/<*>"),
},
&amplify.AppCustomRuleArgs{
Source: pulumi.String("</^[^&#46;]+$|\\&#46;(?!(css|gif|ico|jpg|js|png|txt|svg|woff|ttf|map|json)$)([^&#46;]+$)/>"),
Status: pulumi.String("200"),
Target: pulumi.String("/index.html"),
},
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.amplify.App;
import com.pulumi.aws.amplify.AppArgs;
import com.pulumi.aws.amplify.inputs.AppCustomRuleArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new App("example", AppArgs.builder()
.name("example")
.customRules(
AppCustomRuleArgs.builder()
.source("/api/<*>")
.status("200")
.target("https://api.example.com/api/<*>")
.build(),
AppCustomRuleArgs.builder()
.source("</^[^&#46;]+$|\\&#46;(?!(css|gif|ico|jpg|js|png|txt|svg|woff|ttf|map|json)$)([^&#46;]+$)/>")
.status("200")
.target("/index.html")
.build())
.build());
}
}
resources:
example:
type: aws:amplify:App
properties:
name: example
customRules:
- source: /api/<*>
status: '200'
target: https://api.example.com/api/<*>
- source: </^[^&#46;]+$|\&#46;(?!(css|gif|ico|jpg|js|png|txt|svg|woff|ttf|map|json)$)([^&#46;]+$)/>
status: '200'
target: /index.html

Custom Image

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.amplify.App("example", {
name: "example",
environmentVariables: {
_CUSTOM_IMAGE: "node:16",
},
});
import pulumi
import pulumi_aws as aws
example = aws.amplify.App("example",
name="example",
environment_variables={
"_CUSTOM_IMAGE": "node:16",
})
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.Amplify.App("example", new()
{
Name = "example",
EnvironmentVariables =
{
{ "_CUSTOM_IMAGE", "node:16" },
},
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/amplify"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := amplify.NewApp(ctx, "example", &amplify.AppArgs{
Name: pulumi.String("example"),
EnvironmentVariables: pulumi.StringMap{
"_CUSTOM_IMAGE": pulumi.String("node:16"),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.amplify.App;
import com.pulumi.aws.amplify.AppArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new App("example", AppArgs.builder()
.name("example")
.environmentVariables(Map.of("_CUSTOM_IMAGE", "node:16"))
.build());
}
}
resources:
example:
type: aws:amplify:App
properties:
name: example
environmentVariables:
_CUSTOM_IMAGE: node:16

Custom Headers

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.amplify.App("example", {
name: "example",
customHeaders: `customHeaders:
- pattern: '**'
headers:
- key: 'Strict-Transport-Security'
value: 'max-age=31536000; includeSubDomains'
- key: 'X-Frame-Options'
value: 'SAMEORIGIN'
- key: 'X-XSS-Protection'
value: '1; mode=block'
- key: 'X-Content-Type-Options'
value: 'nosniff'
- key: 'Content-Security-Policy'
value: "default-src 'self'"
`,
});
import pulumi
import pulumi_aws as aws
example = aws.amplify.App("example",
name="example",
custom_headers="""customHeaders:
- pattern: '**'
headers:
- key: 'Strict-Transport-Security'
value: 'max-age=31536000; includeSubDomains'
- key: 'X-Frame-Options'
value: 'SAMEORIGIN'
- key: 'X-XSS-Protection'
value: '1; mode=block'
- key: 'X-Content-Type-Options'
value: 'nosniff'
- key: 'Content-Security-Policy'
value: "default-src 'self'"
""")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.Amplify.App("example", new()
{
Name = "example",
CustomHeaders = @"customHeaders:
- pattern: '**'
headers:
- key: 'Strict-Transport-Security'
value: 'max-age=31536000; includeSubDomains'
- key: 'X-Frame-Options'
value: 'SAMEORIGIN'
- key: 'X-XSS-Protection'
value: '1; mode=block'
- key: 'X-Content-Type-Options'
value: 'nosniff'
- key: 'Content-Security-Policy'
value: ""default-src 'self'""
",
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/amplify"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := amplify.NewApp(ctx, "example", &amplify.AppArgs{
Name: pulumi.String("example"),
CustomHeaders: pulumi.String(`customHeaders:
- pattern: '**'
headers:
- key: 'Strict-Transport-Security'
value: 'max-age=31536000; includeSubDomains'
- key: 'X-Frame-Options'
value: 'SAMEORIGIN'
- key: 'X-XSS-Protection'
value: '1; mode=block'
- key: 'X-Content-Type-Options'
value: 'nosniff'
- key: 'Content-Security-Policy'
value: "default-src 'self'"
`),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.amplify.App;
import com.pulumi.aws.amplify.AppArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new App("example", AppArgs.builder()
.name("example")
.customHeaders("""
customHeaders:
- pattern: '**'
headers:
- key: 'Strict-Transport-Security'
value: 'max-age=31536000; includeSubDomains'
- key: 'X-Frame-Options'
value: 'SAMEORIGIN'
- key: 'X-XSS-Protection'
value: '1; mode=block'
- key: 'X-Content-Type-Options'
value: 'nosniff'
- key: 'Content-Security-Policy'
value: "default-src 'self'"
""")
.build());
}
}
resources:
example:
type: aws:amplify:App
properties:
name: example
customHeaders: |
customHeaders:
- pattern: '**'
headers:
- key: 'Strict-Transport-Security'
value: 'max-age=31536000; includeSubDomains'
- key: 'X-Frame-Options'
value: 'SAMEORIGIN'
- key: 'X-XSS-Protection'
value: '1; mode=block'
- key: 'X-Content-Type-Options'
value: 'nosniff'
- key: 'Content-Security-Policy'
value: "default-src 'self'"

Import

Using pulumi import, import Amplify App using Amplify App ID (appId). For example:

$ pulumi import aws:amplify/app:App example d2ypk4k47z8u6

App ID can be obtained from App ARN (e.g., arn:aws:amplify:us-east-1:12345678:apps/d2ypk4k47z8u6).

Constructors

Link copied to clipboard
constructor(accessToken: Output<String>? = null, autoBranchCreationConfig: Output<AppAutoBranchCreationConfigArgs>? = null, autoBranchCreationPatterns: Output<List<String>>? = null, basicAuthCredentials: Output<String>? = null, buildSpec: Output<String>? = null, cacheConfig: Output<AppCacheConfigArgs>? = null, computeRoleArn: Output<String>? = null, customHeaders: Output<String>? = null, customRules: Output<List<AppCustomRuleArgs>>? = null, description: Output<String>? = null, enableAutoBranchCreation: Output<Boolean>? = null, enableBasicAuth: Output<Boolean>? = null, enableBranchAutoBuild: Output<Boolean>? = null, enableBranchAutoDeletion: Output<Boolean>? = null, environmentVariables: Output<Map<String, String>>? = null, iamServiceRoleArn: Output<String>? = null, name: Output<String>? = null, oauthToken: Output<String>? = null, platform: Output<String>? = null, repository: Output<String>? = null, tags: Output<Map<String, String>>? = null)

Properties

Link copied to clipboard
val accessToken: Output<String>? = null

Personal access token for a third-party source control system for an Amplify app. This token must have write access to the relevant repo to create a webhook and a read-only deploy key for the Amplify project. The token is not stored, so after applying this attribute can be removed and the setup token deleted.

Link copied to clipboard

Automated branch creation configuration for an Amplify app. See auto_branch_creation_config Block for details.

Link copied to clipboard
val autoBranchCreationPatterns: Output<List<String>>? = null

Automated branch creation glob patterns for an Amplify app.

Link copied to clipboard
val basicAuthCredentials: Output<String>? = null

Credentials for basic authorization for an Amplify app.

Link copied to clipboard
val buildSpec: Output<String>? = null

The build specification (build spec) for an Amplify app.

Link copied to clipboard
val cacheConfig: Output<AppCacheConfigArgs>? = null

Cache configuration for the Amplify app. See cache_config Block for details.

Link copied to clipboard
val computeRoleArn: Output<String>? = null

AWS Identity and Access Management (IAM) SSR compute role for an Amplify app.

Link copied to clipboard
val customHeaders: Output<String>? = null

The custom HTTP headers for an Amplify app.

Link copied to clipboard
val customRules: Output<List<AppCustomRuleArgs>>? = null

Custom rewrite and redirect rules for an Amplify app. See custom_rule Block for details.

Link copied to clipboard
val description: Output<String>? = null

Description for an Amplify app.

Link copied to clipboard
val enableAutoBranchCreation: Output<Boolean>? = null

Enables automated branch creation for an Amplify app.

Link copied to clipboard
val enableBasicAuth: Output<Boolean>? = null

Enables basic authorization for an Amplify app. This will apply to all branches that are part of this app.

Link copied to clipboard
val enableBranchAutoBuild: Output<Boolean>? = null

Enables auto-building of branches for the Amplify App.

Link copied to clipboard
val enableBranchAutoDeletion: Output<Boolean>? = null

Automatically disconnects a branch in the Amplify Console when you delete a branch from your Git repository.

Link copied to clipboard
val environmentVariables: Output<Map<String, String>>? = null

Environment variables map for an Amplify app.

Link copied to clipboard
val iamServiceRoleArn: Output<String>? = null

AWS Identity and Access Management (IAM) service role for an Amplify app.

Link copied to clipboard
val name: Output<String>? = null

Name for an Amplify app.

Link copied to clipboard
val oauthToken: Output<String>? = null

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. The OAuth token is not stored.

Link copied to clipboard
val platform: Output<String>? = null

Platform or framework for an Amplify app. Valid values: WEB, WEB_COMPUTE. Default value: WEB.

Link copied to clipboard
val repository: Output<String>? = null

Repository for an Amplify app.

Link copied to clipboard
val tags: Output<Map<String, String>>? = null

Key-value mapping of resource tags. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level. //////

Functions

Link copied to clipboard
open override fun toJava(): AppArgs