com.pulumi.awsnative.amplify.kotlin.DomainArgs.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-aws-native-kotlin Show documentation
Show all versions of pulumi-aws-native-kotlin Show documentation
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.awsnative.amplify.kotlin
import com.pulumi.awsnative.amplify.DomainArgs.builder
import com.pulumi.awsnative.amplify.kotlin.inputs.DomainCertificateSettingsArgs
import com.pulumi.awsnative.amplify.kotlin.inputs.DomainCertificateSettingsArgsBuilder
import com.pulumi.awsnative.amplify.kotlin.inputs.DomainSubDomainSettingArgs
import com.pulumi.awsnative.amplify.kotlin.inputs.DomainSubDomainSettingArgsBuilder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Boolean
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
* The AWS::Amplify::Domain resource allows you to connect a custom domain to your app.
* @property appId The unique ID for an Amplify app.
* @property autoSubDomainCreationPatterns Sets the branch patterns for automatic subdomain creation.
* @property autoSubDomainIamRole The required AWS Identity and Access Management (IAMlong) service role for the Amazon Resource Name (ARN) for automatically creating subdomains.
* @property certificateSettings The type of SSL/TLS certificate to use for your custom domain. If you don't specify a certificate type, Amplify uses the default certificate that it provisions and manages for you.
* @property domainName The domain name for the domain association.
* @property enableAutoSubDomain Enables the automated creation of subdomains for branches.
* @property subDomainSettings The setting for the subdomain.
*/
public data class DomainArgs(
public val appId: Output? = null,
public val autoSubDomainCreationPatterns: Output>? = null,
public val autoSubDomainIamRole: Output? = null,
public val certificateSettings: Output? = null,
public val domainName: Output? = null,
public val enableAutoSubDomain: Output? = null,
public val subDomainSettings: Output>? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.amplify.DomainArgs =
com.pulumi.awsnative.amplify.DomainArgs.builder()
.appId(appId?.applyValue({ args0 -> args0 }))
.autoSubDomainCreationPatterns(
autoSubDomainCreationPatterns?.applyValue({ args0 ->
args0.map({ args0 -> args0 })
}),
)
.autoSubDomainIamRole(autoSubDomainIamRole?.applyValue({ args0 -> args0 }))
.certificateSettings(
certificateSettings?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.domainName(domainName?.applyValue({ args0 -> args0 }))
.enableAutoSubDomain(enableAutoSubDomain?.applyValue({ args0 -> args0 }))
.subDomainSettings(
subDomainSettings?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
).build()
}
/**
* Builder for [DomainArgs].
*/
@PulumiTagMarker
public class DomainArgsBuilder internal constructor() {
private var appId: Output? = null
private var autoSubDomainCreationPatterns: Output>? = null
private var autoSubDomainIamRole: Output? = null
private var certificateSettings: Output? = null
private var domainName: Output? = null
private var enableAutoSubDomain: Output? = null
private var subDomainSettings: Output>? = null
/**
* @param value The unique ID for an Amplify app.
*/
@JvmName("tguylgjpmmyulcfs")
public suspend fun appId(`value`: Output) {
this.appId = value
}
/**
* @param value Sets the branch patterns for automatic subdomain creation.
*/
@JvmName("olwmyqteiuublrcr")
public suspend fun autoSubDomainCreationPatterns(`value`: Output>) {
this.autoSubDomainCreationPatterns = value
}
@JvmName("nvvhgeyfwymcjgom")
public suspend fun autoSubDomainCreationPatterns(vararg values: Output) {
this.autoSubDomainCreationPatterns = Output.all(values.asList())
}
/**
* @param values Sets the branch patterns for automatic subdomain creation.
*/
@JvmName("gmqshrdsgnjjsvhs")
public suspend fun autoSubDomainCreationPatterns(values: List