All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.azurenative.migrate.kotlin.inputs.ApacheTomcatAKSWorkloadDeploymentArgs.kt Maven / Gradle / Ivy

@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.azurenative.migrate.kotlin.inputs

import com.pulumi.azurenative.migrate.inputs.ApacheTomcatAKSWorkloadDeploymentArgs.builder
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

/**
 * ApacheTomcat web application.
 * @property automationArtifactProperties Class for automation artifact.
 * @property bindings Gets or sets the bindings for the application.
 * @property buildContainerImages Gets or sets the build container images.
 * @property clusterProperties Class for AKSDeployment Properties.
 * @property configurations Gets or sets application configuration.
 * @property containerImageProperties Class for container image properties.
 * @property deploymentNamePrefix Gets or sets the deployment name prefix.
 * @property deploymentSpec AKS Deployment Specification.
 * @property directories Gets or sets application directories.
 * @property limits Resource Requirements.
 * @property monitoringProperties Class for app insight monitoring properties.
 * @property requests Resource Requirements.
 * @property targetPlatformIdentity Gets or sets the target platform managed identity.
 */
public data class ApacheTomcatAKSWorkloadDeploymentArgs(
    public val automationArtifactProperties: Output? = null,
    public val bindings: Output>? = null,
    public val buildContainerImages: Output>? = null,
    public val clusterProperties: Output? = null,
    public val configurations: Output>? = null,
    public val containerImageProperties: Output? = null,
    public val deploymentNamePrefix: Output? = null,
    public val deploymentSpec: Output? = null,
    public val directories: Output>? = null,
    public val limits: Output? = null,
    public val monitoringProperties: Output? = null,
    public val requests: Output? = null,
    public val targetPlatformIdentity: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.azurenative.migrate.inputs.ApacheTomcatAKSWorkloadDeploymentArgs = com.pulumi.azurenative.migrate.inputs.ApacheTomcatAKSWorkloadDeploymentArgs.builder()
        .automationArtifactProperties(
            automationArtifactProperties?.applyValue({ args0 ->
                args0.let({ args0 -> args0.toJava() })
            }),
        )
        .bindings(
            bindings?.applyValue({ args0 ->
                args0.map({ args0 ->
                    args0.let({ args0 ->
                        args0.toJava()
                    })
                })
            }),
        )
        .buildContainerImages(
            buildContainerImages?.applyValue({ args0 ->
                args0.map({ args0 ->
                    args0.let({ args0 -> args0.toJava() })
                })
            }),
        )
        .clusterProperties(clusterProperties?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
        .configurations(
            configurations?.applyValue({ args0 ->
                args0.map({ args0 ->
                    args0.let({ args0 ->
                        args0.toJava()
                    })
                })
            }),
        )
        .containerImageProperties(
            containerImageProperties?.applyValue({ args0 ->
                args0.let({ args0 ->
                    args0.toJava()
                })
            }),
        )
        .deploymentNamePrefix(deploymentNamePrefix?.applyValue({ args0 -> args0 }))
        .deploymentSpec(deploymentSpec?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
        .directories(
            directories?.applyValue({ args0 ->
                args0.map({ args0 ->
                    args0.let({ args0 ->
                        args0.toJava()
                    })
                })
            }),
        )
        .limits(limits?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
        .monitoringProperties(
            monitoringProperties?.applyValue({ args0 ->
                args0.let({ args0 ->
                    args0.toJava()
                })
            }),
        )
        .requests(requests?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
        .targetPlatformIdentity(targetPlatformIdentity?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [ApacheTomcatAKSWorkloadDeploymentArgs].
 */
@PulumiTagMarker
public class ApacheTomcatAKSWorkloadDeploymentArgsBuilder internal constructor() {
    private var automationArtifactProperties: Output? = null

    private var bindings: Output>? = null

    private var buildContainerImages: Output>? = null

    private var clusterProperties: Output? = null

    private var configurations: Output>? = null

    private var containerImageProperties: Output? = null

    private var deploymentNamePrefix: Output? = null

    private var deploymentSpec: Output? = null

    private var directories: Output>? = null

    private var limits: Output? = null

    private var monitoringProperties: Output? = null

    private var requests: Output? = null

    private var targetPlatformIdentity: Output? = null

    /**
     * @param value Class for automation artifact.
     */
    @JvmName("sshbtennibjkvxul")
    public suspend fun automationArtifactProperties(`value`: Output) {
        this.automationArtifactProperties = value
    }

    /**
     * @param value Gets or sets the bindings for the application.
     */
    @JvmName("dcjyhhpvntaydfgm")
    public suspend fun bindings(`value`: Output>) {
        this.bindings = value
    }

    @JvmName("iwpvqqdhsnwpckhh")
    public suspend fun bindings(vararg values: Output) {
        this.bindings = Output.all(values.asList())
    }

    /**
     * @param values Gets or sets the bindings for the application.
     */
    @JvmName("cvwsteslxmxbliev")
    public suspend fun bindings(values: List>) {
        this.bindings = Output.all(values)
    }

    /**
     * @param value Gets or sets the build container images.
     */
    @JvmName("jtxaitwtyaxodrnb")
    public suspend fun buildContainerImages(`value`: Output>) {
        this.buildContainerImages = value
    }

    @JvmName("uoidmomligamyebx")
    public suspend fun buildContainerImages(vararg values: Output) {
        this.buildContainerImages = Output.all(values.asList())
    }

    /**
     * @param values Gets or sets the build container images.
     */
    @JvmName("dcwqqdqglqvedxph")
    public suspend fun buildContainerImages(values: List>) {
        this.buildContainerImages = Output.all(values)
    }

    /**
     * @param value Class for AKSDeployment Properties.
     */
    @JvmName("eslpcahejeghpfpw")
    public suspend fun clusterProperties(`value`: Output) {
        this.clusterProperties = value
    }

    /**
     * @param value Gets or sets application configuration.
     */
    @JvmName("gcieniuuhgjntrll")
    public suspend fun configurations(`value`: Output>) {
        this.configurations = value
    }

    @JvmName("ouawkwfmnibcsgwp")
    public suspend fun configurations(vararg values: Output) {
        this.configurations = Output.all(values.asList())
    }

    /**
     * @param values Gets or sets application configuration.
     */
    @JvmName("yxiwydkncrklyrhw")
    public suspend fun configurations(values: List>) {
        this.configurations = Output.all(values)
    }

    /**
     * @param value Class for container image properties.
     */
    @JvmName("pququaxijuxyqcxk")
    public suspend fun containerImageProperties(`value`: Output) {
        this.containerImageProperties = value
    }

    /**
     * @param value Gets or sets the deployment name prefix.
     */
    @JvmName("guribejvmhujovgs")
    public suspend fun deploymentNamePrefix(`value`: Output) {
        this.deploymentNamePrefix = value
    }

    /**
     * @param value AKS Deployment Specification.
     */
    @JvmName("tsgynaswgrmugohv")
    public suspend fun deploymentSpec(`value`: Output) {
        this.deploymentSpec = value
    }

    /**
     * @param value Gets or sets application directories.
     */
    @JvmName("dttbgivrckmhyvim")
    public suspend fun directories(`value`: Output>) {
        this.directories = value
    }

    @JvmName("hcoulburaophwvcx")
    public suspend fun directories(vararg values: Output) {
        this.directories = Output.all(values.asList())
    }

    /**
     * @param values Gets or sets application directories.
     */
    @JvmName("ablknsyplodrgymy")
    public suspend fun directories(values: List>) {
        this.directories = Output.all(values)
    }

    /**
     * @param value Resource Requirements.
     */
    @JvmName("orflxrecwkccffrr")
    public suspend fun limits(`value`: Output) {
        this.limits = value
    }

    /**
     * @param value Class for app insight monitoring properties.
     */
    @JvmName("pxqbpcyilvurucfc")
    public suspend fun monitoringProperties(`value`: Output) {
        this.monitoringProperties = value
    }

    /**
     * @param value Resource Requirements.
     */
    @JvmName("pgehxqvhpwpwtemk")
    public suspend fun requests(`value`: Output) {
        this.requests = value
    }

    /**
     * @param value Gets or sets the target platform managed identity.
     */
    @JvmName("tvyqjwpcydkvntse")
    public suspend fun targetPlatformIdentity(`value`: Output) {
        this.targetPlatformIdentity = value
    }

    /**
     * @param value Class for automation artifact.
     */
    @JvmName("iyedxcedfyfjfxux")
    public suspend fun automationArtifactProperties(`value`: AutomationArtifactArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.automationArtifactProperties = mapped
    }

    /**
     * @param argument Class for automation artifact.
     */
    @JvmName("wxribxkmaogttmju")
    public suspend fun automationArtifactProperties(argument: suspend AutomationArtifactArgsBuilder.() -> Unit) {
        val toBeMapped = AutomationArtifactArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.automationArtifactProperties = mapped
    }

    /**
     * @param value Gets or sets the bindings for the application.
     */
    @JvmName("ncpdppfwxkkgiwsb")
    public suspend fun bindings(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.bindings = mapped
    }

    /**
     * @param argument Gets or sets the bindings for the application.
     */
    @JvmName("xbnpfpeocarkqxnf")
    public suspend fun bindings(argument: List Unit>) {
        val toBeMapped = argument.toList().map { BindingArgsBuilder().applySuspend { it() }.build() }
        val mapped = of(toBeMapped)
        this.bindings = mapped
    }

    /**
     * @param argument Gets or sets the bindings for the application.
     */
    @JvmName("hbsqyhsbhugheclr")
    public suspend fun bindings(vararg argument: suspend BindingArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map { BindingArgsBuilder().applySuspend { it() }.build() }
        val mapped = of(toBeMapped)
        this.bindings = mapped
    }

    /**
     * @param argument Gets or sets the bindings for the application.
     */
    @JvmName("ismkcsldtooivwcw")
    public suspend fun bindings(argument: suspend BindingArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(BindingArgsBuilder().applySuspend { argument() }.build())
        val mapped = of(toBeMapped)
        this.bindings = mapped
    }

    /**
     * @param values Gets or sets the bindings for the application.
     */
    @JvmName("xhioqtepuqsnqkil")
    public suspend fun bindings(vararg values: BindingArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.bindings = mapped
    }

    /**
     * @param value Gets or sets the build container images.
     */
    @JvmName("nerfwcarvbprybfn")
    public suspend fun buildContainerImages(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.buildContainerImages = mapped
    }

    /**
     * @param argument Gets or sets the build container images.
     */
    @JvmName("gspcupnhrsbmsbxs")
    public suspend fun buildContainerImages(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            ContainerImagePropertiesArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.buildContainerImages = mapped
    }

    /**
     * @param argument Gets or sets the build container images.
     */
    @JvmName("evkusrogilonbisq")
    public suspend fun buildContainerImages(vararg argument: suspend ContainerImagePropertiesArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            ContainerImagePropertiesArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.buildContainerImages = mapped
    }

    /**
     * @param argument Gets or sets the build container images.
     */
    @JvmName("hbwyocoswlqwcikf")
    public suspend fun buildContainerImages(argument: suspend ContainerImagePropertiesArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            ContainerImagePropertiesArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.buildContainerImages = mapped
    }

    /**
     * @param values Gets or sets the build container images.
     */
    @JvmName("vpvpgrdfcemacfpt")
    public suspend fun buildContainerImages(vararg values: ContainerImagePropertiesArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.buildContainerImages = mapped
    }

    /**
     * @param value Class for AKSDeployment Properties.
     */
    @JvmName("ihudtlmrgjjxqwel")
    public suspend fun clusterProperties(`value`: AKSDeploymentPropertiesArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.clusterProperties = mapped
    }

    /**
     * @param argument Class for AKSDeployment Properties.
     */
    @JvmName("eiikduytplvigrgb")
    public suspend fun clusterProperties(argument: suspend AKSDeploymentPropertiesArgsBuilder.() -> Unit) {
        val toBeMapped = AKSDeploymentPropertiesArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.clusterProperties = mapped
    }

    /**
     * @param value Gets or sets application configuration.
     */
    @JvmName("qqrejlekvftrruim")
    public suspend fun configurations(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.configurations = mapped
    }

    /**
     * @param argument Gets or sets application configuration.
     */
    @JvmName("sjroabfhmhxlffps")
    public suspend fun configurations(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            WebApplicationConfigurationArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.configurations = mapped
    }

    /**
     * @param argument Gets or sets application configuration.
     */
    @JvmName("qgygxkjlfrelhsin")
    public suspend fun configurations(vararg argument: suspend WebApplicationConfigurationArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            WebApplicationConfigurationArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.configurations = mapped
    }

    /**
     * @param argument Gets or sets application configuration.
     */
    @JvmName("hvqwrhfcoiyhvowu")
    public suspend fun configurations(argument: suspend WebApplicationConfigurationArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            WebApplicationConfigurationArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.configurations = mapped
    }

    /**
     * @param values Gets or sets application configuration.
     */
    @JvmName("jjnjwsepjocdbano")
    public suspend fun configurations(vararg values: WebApplicationConfigurationArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.configurations = mapped
    }

    /**
     * @param value Class for container image properties.
     */
    @JvmName("ghbkwfddvpqnlqpc")
    public suspend fun containerImageProperties(`value`: ContainerImagePropertiesArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.containerImageProperties = mapped
    }

    /**
     * @param argument Class for container image properties.
     */
    @JvmName("xjvuvcjanbyydwwr")
    public suspend fun containerImageProperties(argument: suspend ContainerImagePropertiesArgsBuilder.() -> Unit) {
        val toBeMapped = ContainerImagePropertiesArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.containerImageProperties = mapped
    }

    /**
     * @param value Gets or sets the deployment name prefix.
     */
    @JvmName("auuuykawoklaiaxl")
    public suspend fun deploymentNamePrefix(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.deploymentNamePrefix = mapped
    }

    /**
     * @param value AKS Deployment Specification.
     */
    @JvmName("jbbmlvacjrosnnxc")
    public suspend fun deploymentSpec(`value`: AKSDeploymentSpecificationArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.deploymentSpec = mapped
    }

    /**
     * @param argument AKS Deployment Specification.
     */
    @JvmName("hskwyqbrpukflcpd")
    public suspend fun deploymentSpec(argument: suspend AKSDeploymentSpecificationArgsBuilder.() -> Unit) {
        val toBeMapped = AKSDeploymentSpecificationArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.deploymentSpec = mapped
    }

    /**
     * @param value Gets or sets application directories.
     */
    @JvmName("qrshggxlxcjicwvr")
    public suspend fun directories(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.directories = mapped
    }

    /**
     * @param argument Gets or sets application directories.
     */
    @JvmName("perwhuduewycpyod")
    public suspend fun directories(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            WebApplicationDirectoryArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.directories = mapped
    }

    /**
     * @param argument Gets or sets application directories.
     */
    @JvmName("ishxslpddudfrcid")
    public suspend fun directories(vararg argument: suspend WebApplicationDirectoryArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            WebApplicationDirectoryArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.directories = mapped
    }

    /**
     * @param argument Gets or sets application directories.
     */
    @JvmName("opwynjkxjerhfaal")
    public suspend fun directories(argument: suspend WebApplicationDirectoryArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            WebApplicationDirectoryArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.directories = mapped
    }

    /**
     * @param values Gets or sets application directories.
     */
    @JvmName("amuiellbiynjusdo")
    public suspend fun directories(vararg values: WebApplicationDirectoryArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.directories = mapped
    }

    /**
     * @param value Resource Requirements.
     */
    @JvmName("ujjaubdfjlchctqp")
    public suspend fun limits(`value`: ResourceRequirementsArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.limits = mapped
    }

    /**
     * @param argument Resource Requirements.
     */
    @JvmName("wycyoctqqmgwkyio")
    public suspend fun limits(argument: suspend ResourceRequirementsArgsBuilder.() -> Unit) {
        val toBeMapped = ResourceRequirementsArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.limits = mapped
    }

    /**
     * @param value Class for app insight monitoring properties.
     */
    @JvmName("itrqbgmgkscojibv")
    public suspend fun monitoringProperties(`value`: AppInsightMonitoringPropertiesArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.monitoringProperties = mapped
    }

    /**
     * @param argument Class for app insight monitoring properties.
     */
    @JvmName("ivwaesvpiwibwcyg")
    public suspend fun monitoringProperties(argument: suspend AppInsightMonitoringPropertiesArgsBuilder.() -> Unit) {
        val toBeMapped = AppInsightMonitoringPropertiesArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.monitoringProperties = mapped
    }

    /**
     * @param value Resource Requirements.
     */
    @JvmName("vcfrcbsfsvewqkfv")
    public suspend fun requests(`value`: ResourceRequirementsArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.requests = mapped
    }

    /**
     * @param argument Resource Requirements.
     */
    @JvmName("jaibpgygueicprah")
    public suspend fun requests(argument: suspend ResourceRequirementsArgsBuilder.() -> Unit) {
        val toBeMapped = ResourceRequirementsArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.requests = mapped
    }

    /**
     * @param value Gets or sets the target platform managed identity.
     */
    @JvmName("ihodesemkaympkqa")
    public suspend fun targetPlatformIdentity(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.targetPlatformIdentity = mapped
    }

    internal fun build(): ApacheTomcatAKSWorkloadDeploymentArgs =
        ApacheTomcatAKSWorkloadDeploymentArgs(
            automationArtifactProperties = automationArtifactProperties,
            bindings = bindings,
            buildContainerImages = buildContainerImages,
            clusterProperties = clusterProperties,
            configurations = configurations,
            containerImageProperties = containerImageProperties,
            deploymentNamePrefix = deploymentNamePrefix,
            deploymentSpec = deploymentSpec,
            directories = directories,
            limits = limits,
            monitoringProperties = monitoringProperties,
            requests = requests,
            targetPlatformIdentity = targetPlatformIdentity,
        )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy