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.
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.imagebuilder.kotlin.inputs
import com.pulumi.awsnative.imagebuilder.inputs.DistributionConfigurationDistributionArgs.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 com.pulumi.kotlin.applySuspend
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
* The distributions of the distribution configuration.
* @property amiDistributionConfiguration The specific AMI settings, such as launch permissions and AMI tags. For details, see example schema below.
* @property containerDistributionConfiguration Container distribution settings for encryption, licensing, and sharing in a specific Region. For details, see example schema below.
* @property fastLaunchConfigurations The Windows faster-launching configurations to use for AMI distribution.
* @property launchTemplateConfigurations A group of launchTemplateConfiguration settings that apply to image distribution.
* @property licenseConfigurationArns The License Manager Configuration to associate with the AMI in the specified Region.
* @property region region
*/
public data class DistributionConfigurationDistributionArgs(
public val amiDistributionConfiguration: Output? = null,
public val containerDistributionConfiguration: Output? = null,
public val fastLaunchConfigurations: Output>? = null,
public val launchTemplateConfigurations: Output>? = null,
public val licenseConfigurationArns: Output>? = null,
public val region: Output,
) :
ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.imagebuilder.inputs.DistributionConfigurationDistributionArgs =
com.pulumi.awsnative.imagebuilder.inputs.DistributionConfigurationDistributionArgs.builder()
.amiDistributionConfiguration(
amiDistributionConfiguration?.applyValue({ args0 ->
args0.let({ args0 -> args0.toJava() })
}),
)
.containerDistributionConfiguration(
containerDistributionConfiguration?.applyValue({ args0 ->
args0.let({ args0 -> args0.toJava() })
}),
)
.fastLaunchConfigurations(
fastLaunchConfigurations?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
)
.launchTemplateConfigurations(
launchTemplateConfigurations?.applyValue({ args0 ->
args0.map({ args0 -> args0.let({ args0 -> args0.toJava() }) })
}),
)
.licenseConfigurationArns(
licenseConfigurationArns?.applyValue({ args0 ->
args0.map({ args0 ->
args0
})
}),
)
.region(region.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [DistributionConfigurationDistributionArgs].
*/
@PulumiTagMarker
public class DistributionConfigurationDistributionArgsBuilder internal constructor() {
private var amiDistributionConfiguration:
Output? = null
private var containerDistributionConfiguration:
Output? = null
private var fastLaunchConfigurations:
Output>? = null
private var launchTemplateConfigurations:
Output>? = null
private var licenseConfigurationArns: Output>? = null
private var region: Output? = null
/**
* @param value The specific AMI settings, such as launch permissions and AMI tags. For details, see example schema below.
*/
@JvmName("mpljbooaisvtjhir")
public suspend fun amiDistributionConfiguration(`value`: Output) {
this.amiDistributionConfiguration = value
}
/**
* @param value Container distribution settings for encryption, licensing, and sharing in a specific Region. For details, see example schema below.
*/
@JvmName("xtxfwgmdgyqncaot")
public suspend fun containerDistributionConfiguration(`value`: Output) {
this.containerDistributionConfiguration = value
}
/**
* @param value The Windows faster-launching configurations to use for AMI distribution.
*/
@JvmName("dtssihqjxirwwvae")
public suspend fun fastLaunchConfigurations(`value`: Output>) {
this.fastLaunchConfigurations = value
}
@JvmName("cfftbylwstdaigkm")
public suspend fun fastLaunchConfigurations(vararg values: Output) {
this.fastLaunchConfigurations = Output.all(values.asList())
}
/**
* @param values The Windows faster-launching configurations to use for AMI distribution.
*/
@JvmName("ubsfiowsjyshufcw")
public suspend fun fastLaunchConfigurations(values: List