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.elasticbeanstalk.kotlin
import com.pulumi.awsnative.elasticbeanstalk.ConfigurationTemplateArgs.builder
import com.pulumi.awsnative.elasticbeanstalk.kotlin.inputs.ConfigurationTemplateConfigurationOptionSettingArgs
import com.pulumi.awsnative.elasticbeanstalk.kotlin.inputs.ConfigurationTemplateConfigurationOptionSettingArgsBuilder
import com.pulumi.awsnative.elasticbeanstalk.kotlin.inputs.ConfigurationTemplateSourceConfigurationArgs
import com.pulumi.awsnative.elasticbeanstalk.kotlin.inputs.ConfigurationTemplateSourceConfigurationArgsBuilder
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.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
* Resource Type definition for AWS::ElasticBeanstalk::ConfigurationTemplate
* @property applicationName The name of the Elastic Beanstalk application to associate with this configuration template.
* @property description An optional description for this configuration.
* @property environmentId The ID of an environment whose settings you want to use to create the configuration template. You must specify EnvironmentId if you don't specify PlatformArn, SolutionStackName, or SourceConfiguration.
* @property optionSettings Option values for the Elastic Beanstalk configuration, such as the instance type. If specified, these values override the values obtained from the solution stack or the source configuration template. For a complete list of Elastic Beanstalk configuration options, see [Option Values](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/command-options.html) in the AWS Elastic Beanstalk Developer Guide.
* @property platformArn The Amazon Resource Name (ARN) of the custom platform. For more information, see [Custom Platforms](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/custom-platforms.html) in the AWS Elastic Beanstalk Developer Guide.
* @property solutionStackName The name of an Elastic Beanstalk solution stack (platform version) that this configuration uses. For example, 64bit Amazon Linux 2013.09 running Tomcat 7 Java 7. A solution stack specifies the operating system, runtime, and application server for a configuration template. It also determines the set of configuration options as well as the possible and default values. For more information, see [Supported Platforms](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/concepts.platforms.html) in the AWS Elastic Beanstalk Developer Guide.
* You must specify SolutionStackName if you don't specify PlatformArn, EnvironmentId, or SourceConfiguration.
* Use the ListAvailableSolutionStacks API to obtain a list of available solution stacks.
* @property sourceConfiguration An Elastic Beanstalk configuration template to base this one on. If specified, Elastic Beanstalk uses the configuration values from the specified configuration template to create a new configuration.
* Values specified in OptionSettings override any values obtained from the SourceConfiguration.
* You must specify SourceConfiguration if you don't specify PlatformArn, EnvironmentId, or SolutionStackName.
* Constraint: If both solution stack name and source configuration are specified, the solution stack of the source configuration template must match the specified solution stack name.
*/
public data class ConfigurationTemplateArgs(
public val applicationName: Output? = null,
public val description: Output? = null,
public val environmentId: Output? = null,
public val optionSettings: Output>? =
null,
public val platformArn: Output? = null,
public val solutionStackName: Output? = null,
public val sourceConfiguration: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.elasticbeanstalk.ConfigurationTemplateArgs =
com.pulumi.awsnative.elasticbeanstalk.ConfigurationTemplateArgs.builder()
.applicationName(applicationName?.applyValue({ args0 -> args0 }))
.description(description?.applyValue({ args0 -> args0 }))
.environmentId(environmentId?.applyValue({ args0 -> args0 }))
.optionSettings(
optionSettings?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.platformArn(platformArn?.applyValue({ args0 -> args0 }))
.solutionStackName(solutionStackName?.applyValue({ args0 -> args0 }))
.sourceConfiguration(
sourceConfiguration?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
).build()
}
/**
* Builder for [ConfigurationTemplateArgs].
*/
@PulumiTagMarker
public class ConfigurationTemplateArgsBuilder internal constructor() {
private var applicationName: Output? = null
private var description: Output? = null
private var environmentId: Output? = null
private var optionSettings: Output>? =
null
private var platformArn: Output? = null
private var solutionStackName: Output? = null
private var sourceConfiguration: Output? = null
/**
* @param value The name of the Elastic Beanstalk application to associate with this configuration template.
*/
@JvmName("lvgqtlhlbkxusscj")
public suspend fun applicationName(`value`: Output) {
this.applicationName = value
}
/**
* @param value An optional description for this configuration.
*/
@JvmName("syuxxdaswaxcfkpu")
public suspend fun description(`value`: Output) {
this.description = value
}
/**
* @param value The ID of an environment whose settings you want to use to create the configuration template. You must specify EnvironmentId if you don't specify PlatformArn, SolutionStackName, or SourceConfiguration.
*/
@JvmName("rpqcmrdpmtbhysex")
public suspend fun environmentId(`value`: Output) {
this.environmentId = value
}
/**
* @param value Option values for the Elastic Beanstalk configuration, such as the instance type. If specified, these values override the values obtained from the solution stack or the source configuration template. For a complete list of Elastic Beanstalk configuration options, see [Option Values](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/command-options.html) in the AWS Elastic Beanstalk Developer Guide.
*/
@JvmName("hknobbysqekytdas")
public suspend fun optionSettings(`value`: Output>) {
this.optionSettings = value
}
@JvmName("ynbhrvybocgrqhyx")
public suspend fun optionSettings(vararg values: Output) {
this.optionSettings = Output.all(values.asList())
}
/**
* @param values Option values for the Elastic Beanstalk configuration, such as the instance type. If specified, these values override the values obtained from the solution stack or the source configuration template. For a complete list of Elastic Beanstalk configuration options, see [Option Values](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/command-options.html) in the AWS Elastic Beanstalk Developer Guide.
*/
@JvmName("jesyacsbbuoncwbd")
public suspend fun optionSettings(values: List