com.pulumi.aws.imagebuilder.kotlin.inputs.DistributionConfigurationDistributionS3ExportConfigurationArgs.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-aws-kotlin Show documentation
Show all versions of pulumi-aws-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.aws.imagebuilder.kotlin.inputs
import com.pulumi.aws.imagebuilder.inputs.DistributionConfigurationDistributionS3ExportConfigurationArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName
/**
*
* @property diskImageFormat The disk image format of the exported image (`RAW`, `VHD`, or `VMDK`)
* @property roleName The name of the IAM role to use for exporting.
* @property s3Bucket The name of the S3 bucket to store the exported image in. The bucket needs to exist before the export configuration is created.
* @property s3Prefix The prefix for the exported image.
*/
public data class DistributionConfigurationDistributionS3ExportConfigurationArgs(
public val diskImageFormat: Output,
public val roleName: Output,
public val s3Bucket: Output,
public val s3Prefix: Output? = null,
) :
ConvertibleToJava {
override fun toJava(): com.pulumi.aws.imagebuilder.inputs.DistributionConfigurationDistributionS3ExportConfigurationArgs =
com.pulumi.aws.imagebuilder.inputs.DistributionConfigurationDistributionS3ExportConfigurationArgs.builder()
.diskImageFormat(diskImageFormat.applyValue({ args0 -> args0 }))
.roleName(roleName.applyValue({ args0 -> args0 }))
.s3Bucket(s3Bucket.applyValue({ args0 -> args0 }))
.s3Prefix(s3Prefix?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [DistributionConfigurationDistributionS3ExportConfigurationArgs].
*/
@PulumiTagMarker
public class DistributionConfigurationDistributionS3ExportConfigurationArgsBuilder internal constructor() {
private var diskImageFormat: Output? = null
private var roleName: Output? = null
private var s3Bucket: Output? = null
private var s3Prefix: Output? = null
/**
* @param value The disk image format of the exported image (`RAW`, `VHD`, or `VMDK`)
*/
@JvmName("wxsuniahciuhgbnt")
public suspend fun diskImageFormat(`value`: Output) {
this.diskImageFormat = value
}
/**
* @param value The name of the IAM role to use for exporting.
*/
@JvmName("jxqcncoecnksqhxn")
public suspend fun roleName(`value`: Output) {
this.roleName = value
}
/**
* @param value The name of the S3 bucket to store the exported image in. The bucket needs to exist before the export configuration is created.
*/
@JvmName("icldhovxaxvklkic")
public suspend fun s3Bucket(`value`: Output) {
this.s3Bucket = value
}
/**
* @param value The prefix for the exported image.
*/
@JvmName("fxpdyoyriyyejtbn")
public suspend fun s3Prefix(`value`: Output) {
this.s3Prefix = value
}
/**
* @param value The disk image format of the exported image (`RAW`, `VHD`, or `VMDK`)
*/
@JvmName("ivdrvuntjaogjfhk")
public suspend fun diskImageFormat(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.diskImageFormat = mapped
}
/**
* @param value The name of the IAM role to use for exporting.
*/
@JvmName("nbgmbhhynliacpmd")
public suspend fun roleName(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.roleName = mapped
}
/**
* @param value The name of the S3 bucket to store the exported image in. The bucket needs to exist before the export configuration is created.
*/
@JvmName("mexrivdgudavbjpa")
public suspend fun s3Bucket(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.s3Bucket = mapped
}
/**
* @param value The prefix for the exported image.
*/
@JvmName("urigjdkrryfuwpxm")
public suspend fun s3Prefix(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.s3Prefix = mapped
}
internal fun build(): DistributionConfigurationDistributionS3ExportConfigurationArgs =
DistributionConfigurationDistributionS3ExportConfigurationArgs(
diskImageFormat = diskImageFormat ?: throw PulumiNullFieldException("diskImageFormat"),
roleName = roleName ?: throw PulumiNullFieldException("roleName"),
s3Bucket = s3Bucket ?: throw PulumiNullFieldException("s3Bucket"),
s3Prefix = s3Prefix,
)
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy