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

com.pulumi.gcp.osconfig.kotlin.inputs.GuestPoliciesRecipeInstallStepArgs.kt Maven / Gradle / Ivy

Go to download

Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.

There is a newer version: 8.12.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.gcp.osconfig.kotlin.inputs

import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.gcp.osconfig.inputs.GuestPoliciesRecipeInstallStepArgs.builder
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName

/**
 *
 * @property archiveExtraction Extracts an archive into the specified directory.
 * Structure is documented below.
 * @property dpkgInstallation Installs a deb file via dpkg.
 * Structure is documented below.
 * @property fileCopy Copies a file onto the instance.
 * Structure is documented below.
 * @property fileExec Executes an artifact or local file.
 * Structure is documented below.
 * @property msiInstallation Installs an MSI file.
 * Structure is documented below.
 * @property rpmInstallation Installs an rpm file via the rpm utility.
 * Structure is documented below.
 * @property scriptRun Runs commands in a shell.
 * Structure is documented below.
 */
public data class GuestPoliciesRecipeInstallStepArgs(
    public val archiveExtraction: Output? = null,
    public val dpkgInstallation: Output? = null,
    public val fileCopy: Output? = null,
    public val fileExec: Output? = null,
    public val msiInstallation: Output? = null,
    public val rpmInstallation: Output? = null,
    public val scriptRun: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.gcp.osconfig.inputs.GuestPoliciesRecipeInstallStepArgs =
        com.pulumi.gcp.osconfig.inputs.GuestPoliciesRecipeInstallStepArgs.builder()
            .archiveExtraction(archiveExtraction?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .dpkgInstallation(dpkgInstallation?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .fileCopy(fileCopy?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .fileExec(fileExec?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .msiInstallation(msiInstallation?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .rpmInstallation(rpmInstallation?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .scriptRun(scriptRun?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) })).build()
}

/**
 * Builder for [GuestPoliciesRecipeInstallStepArgs].
 */
@PulumiTagMarker
public class GuestPoliciesRecipeInstallStepArgsBuilder internal constructor() {
    private var archiveExtraction: Output? = null

    private var dpkgInstallation: Output? = null

    private var fileCopy: Output? = null

    private var fileExec: Output? = null

    private var msiInstallation: Output? = null

    private var rpmInstallation: Output? = null

    private var scriptRun: Output? = null

    /**
     * @param value Extracts an archive into the specified directory.
     * Structure is documented below.
     */
    @JvmName("glsotderdbihdaxv")
    public suspend fun archiveExtraction(`value`: Output) {
        this.archiveExtraction = value
    }

    /**
     * @param value Installs a deb file via dpkg.
     * Structure is documented below.
     */
    @JvmName("dulvvuigiokvrwjx")
    public suspend fun dpkgInstallation(`value`: Output) {
        this.dpkgInstallation = value
    }

    /**
     * @param value Copies a file onto the instance.
     * Structure is documented below.
     */
    @JvmName("geudplkibfbokyua")
    public suspend fun fileCopy(`value`: Output) {
        this.fileCopy = value
    }

    /**
     * @param value Executes an artifact or local file.
     * Structure is documented below.
     */
    @JvmName("ywvmewvlneasqtjq")
    public suspend fun fileExec(`value`: Output) {
        this.fileExec = value
    }

    /**
     * @param value Installs an MSI file.
     * Structure is documented below.
     */
    @JvmName("emruuetkdmsexxua")
    public suspend fun msiInstallation(`value`: Output) {
        this.msiInstallation = value
    }

    /**
     * @param value Installs an rpm file via the rpm utility.
     * Structure is documented below.
     */
    @JvmName("qndliicdgcxycnyb")
    public suspend fun rpmInstallation(`value`: Output) {
        this.rpmInstallation = value
    }

    /**
     * @param value Runs commands in a shell.
     * Structure is documented below.
     */
    @JvmName("uafcdyygkeimpfos")
    public suspend fun scriptRun(`value`: Output) {
        this.scriptRun = value
    }

    /**
     * @param value Extracts an archive into the specified directory.
     * Structure is documented below.
     */
    @JvmName("uxgwjwwwfvtokemt")
    public suspend fun archiveExtraction(`value`: GuestPoliciesRecipeInstallStepArchiveExtractionArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.archiveExtraction = mapped
    }

    /**
     * @param argument Extracts an archive into the specified directory.
     * Structure is documented below.
     */
    @JvmName("rqsnxurgwdrjtdgv")
    public suspend fun archiveExtraction(argument: suspend GuestPoliciesRecipeInstallStepArchiveExtractionArgsBuilder.() -> Unit) {
        val toBeMapped = GuestPoliciesRecipeInstallStepArchiveExtractionArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.archiveExtraction = mapped
    }

    /**
     * @param value Installs a deb file via dpkg.
     * Structure is documented below.
     */
    @JvmName("hjnyqnkilsekyuoo")
    public suspend fun dpkgInstallation(`value`: GuestPoliciesRecipeInstallStepDpkgInstallationArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.dpkgInstallation = mapped
    }

    /**
     * @param argument Installs a deb file via dpkg.
     * Structure is documented below.
     */
    @JvmName("rleysmmipylfryck")
    public suspend fun dpkgInstallation(argument: suspend GuestPoliciesRecipeInstallStepDpkgInstallationArgsBuilder.() -> Unit) {
        val toBeMapped = GuestPoliciesRecipeInstallStepDpkgInstallationArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.dpkgInstallation = mapped
    }

    /**
     * @param value Copies a file onto the instance.
     * Structure is documented below.
     */
    @JvmName("xesapsyjbkhijdhl")
    public suspend fun fileCopy(`value`: GuestPoliciesRecipeInstallStepFileCopyArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.fileCopy = mapped
    }

    /**
     * @param argument Copies a file onto the instance.
     * Structure is documented below.
     */
    @JvmName("aydehrgewatjplto")
    public suspend fun fileCopy(argument: suspend GuestPoliciesRecipeInstallStepFileCopyArgsBuilder.() -> Unit) {
        val toBeMapped = GuestPoliciesRecipeInstallStepFileCopyArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.fileCopy = mapped
    }

    /**
     * @param value Executes an artifact or local file.
     * Structure is documented below.
     */
    @JvmName("cmtlvnaueinjwspd")
    public suspend fun fileExec(`value`: GuestPoliciesRecipeInstallStepFileExecArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.fileExec = mapped
    }

    /**
     * @param argument Executes an artifact or local file.
     * Structure is documented below.
     */
    @JvmName("apqkpaknrifrgfsw")
    public suspend fun fileExec(argument: suspend GuestPoliciesRecipeInstallStepFileExecArgsBuilder.() -> Unit) {
        val toBeMapped = GuestPoliciesRecipeInstallStepFileExecArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.fileExec = mapped
    }

    /**
     * @param value Installs an MSI file.
     * Structure is documented below.
     */
    @JvmName("idooctpbohulyhqj")
    public suspend fun msiInstallation(`value`: GuestPoliciesRecipeInstallStepMsiInstallationArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.msiInstallation = mapped
    }

    /**
     * @param argument Installs an MSI file.
     * Structure is documented below.
     */
    @JvmName("ouslgvluqibsfyvj")
    public suspend fun msiInstallation(argument: suspend GuestPoliciesRecipeInstallStepMsiInstallationArgsBuilder.() -> Unit) {
        val toBeMapped = GuestPoliciesRecipeInstallStepMsiInstallationArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.msiInstallation = mapped
    }

    /**
     * @param value Installs an rpm file via the rpm utility.
     * Structure is documented below.
     */
    @JvmName("iydxjyxhyycodnyj")
    public suspend fun rpmInstallation(`value`: GuestPoliciesRecipeInstallStepRpmInstallationArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.rpmInstallation = mapped
    }

    /**
     * @param argument Installs an rpm file via the rpm utility.
     * Structure is documented below.
     */
    @JvmName("yonxitsgrsuxdjvp")
    public suspend fun rpmInstallation(argument: suspend GuestPoliciesRecipeInstallStepRpmInstallationArgsBuilder.() -> Unit) {
        val toBeMapped = GuestPoliciesRecipeInstallStepRpmInstallationArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.rpmInstallation = mapped
    }

    /**
     * @param value Runs commands in a shell.
     * Structure is documented below.
     */
    @JvmName("fuluupjgwkbwkyhj")
    public suspend fun scriptRun(`value`: GuestPoliciesRecipeInstallStepScriptRunArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.scriptRun = mapped
    }

    /**
     * @param argument Runs commands in a shell.
     * Structure is documented below.
     */
    @JvmName("yifsoermtqusdnbx")
    public suspend fun scriptRun(argument: suspend GuestPoliciesRecipeInstallStepScriptRunArgsBuilder.() -> Unit) {
        val toBeMapped = GuestPoliciesRecipeInstallStepScriptRunArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.scriptRun = mapped
    }

    internal fun build(): GuestPoliciesRecipeInstallStepArgs = GuestPoliciesRecipeInstallStepArgs(
        archiveExtraction = archiveExtraction,
        dpkgInstallation = dpkgInstallation,
        fileCopy = fileCopy,
        fileExec = fileExec,
        msiInstallation = msiInstallation,
        rpmInstallation = rpmInstallation,
        scriptRun = scriptRun,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy