Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.awsnative.appstream.kotlin
import com.pulumi.awsnative.appstream.ImageBuilderArgs.builder
import com.pulumi.awsnative.appstream.kotlin.inputs.ImageBuilderAccessEndpointArgs
import com.pulumi.awsnative.appstream.kotlin.inputs.ImageBuilderAccessEndpointArgsBuilder
import com.pulumi.awsnative.appstream.kotlin.inputs.ImageBuilderDomainJoinInfoArgs
import com.pulumi.awsnative.appstream.kotlin.inputs.ImageBuilderDomainJoinInfoArgsBuilder
import com.pulumi.awsnative.appstream.kotlin.inputs.ImageBuilderVpcConfigArgs
import com.pulumi.awsnative.appstream.kotlin.inputs.ImageBuilderVpcConfigArgsBuilder
import com.pulumi.awsnative.kotlin.inputs.TagArgs
import com.pulumi.awsnative.kotlin.inputs.TagArgsBuilder
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
/**
* Resource Type definition for AWS::AppStream::ImageBuilder
* @property accessEndpoints The list of virtual private cloud (VPC) interface endpoint objects. Administrators can connect to the image builder only through the specified endpoints.
* @property appstreamAgentVersion The version of the AppStream 2.0 agent to use for this image builder. To use the latest version of the AppStream 2.0 agent, specify [LATEST].
* @property description The description to display.
* @property displayName The image builder name to display.
* @property domainJoinInfo The name of the directory and organizational unit (OU) to use to join the image builder to a Microsoft Active Directory domain.
* @property enableDefaultInternetAccess Enables or disables default internet access for the image builder.
* @property iamRoleArn The ARN of the IAM role that is applied to the image builder. To assume a role, the image builder calls the AWS Security Token Service `AssumeRole` API operation and passes the ARN of the role to use. The operation creates a new session with temporary credentials. AppStream 2.0 retrieves the temporary credentials and creates the *appstream_machine_role* credential profile on the instance.
* For more information, see [Using an IAM Role to Grant Permissions to Applications and Scripts Running on AppStream 2.0 Streaming Instances](https://docs.aws.amazon.com/appstream2/latest/developerguide/using-iam-roles-to-grant-permissions-to-applications-scripts-streaming-instances.html) in the *Amazon AppStream 2.0 Administration Guide* .
* @property imageArn The ARN of the public, private, or shared image to use.
* @property imageName The name of the image used to create the image builder.
* @property instanceType The instance type to use when launching the image builder. The following instance types are available:
* - stream.standard.small
* - stream.standard.medium
* - stream.standard.large
* - stream.compute.large
* - stream.compute.xlarge
* - stream.compute.2xlarge
* - stream.compute.4xlarge
* - stream.compute.8xlarge
* - stream.memory.large
* - stream.memory.xlarge
* - stream.memory.2xlarge
* - stream.memory.4xlarge
* - stream.memory.8xlarge
* - stream.memory.z1d.large
* - stream.memory.z1d.xlarge
* - stream.memory.z1d.2xlarge
* - stream.memory.z1d.3xlarge
* - stream.memory.z1d.6xlarge
* - stream.memory.z1d.12xlarge
* - stream.graphics-design.large
* - stream.graphics-design.xlarge
* - stream.graphics-design.2xlarge
* - stream.graphics-design.4xlarge
* - stream.graphics-desktop.2xlarge
* - stream.graphics.g4dn.xlarge
* - stream.graphics.g4dn.2xlarge
* - stream.graphics.g4dn.4xlarge
* - stream.graphics.g4dn.8xlarge
* - stream.graphics.g4dn.12xlarge
* - stream.graphics.g4dn.16xlarge
* - stream.graphics-pro.4xlarge
* - stream.graphics-pro.8xlarge
* - stream.graphics-pro.16xlarge
* @property name A unique name for the image builder.
* @property tags An array of key-value pairs.
* @property vpcConfig The VPC configuration for the image builder. You can specify only one subnet.
*/
public data class ImageBuilderArgs(
public val accessEndpoints: Output>? = null,
public val appstreamAgentVersion: Output? = null,
public val description: Output? = null,
public val displayName: Output? = null,
public val domainJoinInfo: Output? = null,
public val enableDefaultInternetAccess: Output? = null,
public val iamRoleArn: Output? = null,
public val imageArn: Output? = null,
public val imageName: Output? = null,
public val instanceType: Output? = null,
public val name: Output? = null,
public val tags: Output>? = null,
public val vpcConfig: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.appstream.ImageBuilderArgs =
com.pulumi.awsnative.appstream.ImageBuilderArgs.builder()
.accessEndpoints(
accessEndpoints?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.appstreamAgentVersion(appstreamAgentVersion?.applyValue({ args0 -> args0 }))
.description(description?.applyValue({ args0 -> args0 }))
.displayName(displayName?.applyValue({ args0 -> args0 }))
.domainJoinInfo(domainJoinInfo?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.enableDefaultInternetAccess(enableDefaultInternetAccess?.applyValue({ args0 -> args0 }))
.iamRoleArn(iamRoleArn?.applyValue({ args0 -> args0 }))
.imageArn(imageArn?.applyValue({ args0 -> args0 }))
.imageName(imageName?.applyValue({ args0 -> args0 }))
.instanceType(instanceType?.applyValue({ args0 -> args0 }))
.name(name?.applyValue({ args0 -> args0 }))
.tags(tags?.applyValue({ args0 -> args0.map({ args0 -> args0.let({ args0 -> args0.toJava() }) }) }))
.vpcConfig(vpcConfig?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) })).build()
}
/**
* Builder for [ImageBuilderArgs].
*/
@PulumiTagMarker
public class ImageBuilderArgsBuilder internal constructor() {
private var accessEndpoints: Output>? = null
private var appstreamAgentVersion: Output? = null
private var description: Output? = null
private var displayName: Output? = null
private var domainJoinInfo: Output? = null
private var enableDefaultInternetAccess: Output? = null
private var iamRoleArn: Output? = null
private var imageArn: Output? = null
private var imageName: Output? = null
private var instanceType: Output? = null
private var name: Output? = null
private var tags: Output>? = null
private var vpcConfig: Output? = null
/**
* @param value The list of virtual private cloud (VPC) interface endpoint objects. Administrators can connect to the image builder only through the specified endpoints.
*/
@JvmName("wxjyxcvvtyglgmct")
public suspend fun accessEndpoints(`value`: Output>) {
this.accessEndpoints = value
}
@JvmName("yaudadoarergejji")
public suspend fun accessEndpoints(vararg values: Output) {
this.accessEndpoints = Output.all(values.asList())
}
/**
* @param values The list of virtual private cloud (VPC) interface endpoint objects. Administrators can connect to the image builder only through the specified endpoints.
*/
@JvmName("wfblcunetfypttut")
public suspend fun accessEndpoints(values: List