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

com.pulumi.azure.appservice.kotlin.inputs.SourceControlGithubActionConfigurationArgs.kt Maven / Gradle / Ivy

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

package com.pulumi.azure.appservice.kotlin.inputs

import com.pulumi.azure.appservice.inputs.SourceControlGithubActionConfigurationArgs.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.Boolean
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName

/**
 *
 * @property codeConfiguration A `code_configuration` block as defined above. Changing this forces a new resource to be created.
 * @property containerConfiguration A `container_configuration` block as defined above.
 * @property generateWorkflowFile Whether to generate the GitHub work flow file. Defaults to `true`. Changing this forces a new resource to be created.
 * @property linuxAction Denotes this action uses a Linux base image.
 */
public data class SourceControlGithubActionConfigurationArgs(
    public val codeConfiguration: Output? =
        null,
    public val containerConfiguration:
    Output? = null,
    public val generateWorkflowFile: Output? = null,
    public val linuxAction: Output? = null,
) : ConvertibleToJava {
    override fun toJava():
        com.pulumi.azure.appservice.inputs.SourceControlGithubActionConfigurationArgs =
        com.pulumi.azure.appservice.inputs.SourceControlGithubActionConfigurationArgs.builder()
            .codeConfiguration(codeConfiguration?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .containerConfiguration(
                containerConfiguration?.applyValue({ args0 ->
                    args0.let({ args0 ->
                        args0.toJava()
                    })
                }),
            )
            .generateWorkflowFile(generateWorkflowFile?.applyValue({ args0 -> args0 }))
            .linuxAction(linuxAction?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [SourceControlGithubActionConfigurationArgs].
 */
@PulumiTagMarker
public class SourceControlGithubActionConfigurationArgsBuilder internal constructor() {
    private var codeConfiguration:
        Output? = null

    private var containerConfiguration:
        Output? = null

    private var generateWorkflowFile: Output? = null

    private var linuxAction: Output? = null

    /**
     * @param value A `code_configuration` block as defined above. Changing this forces a new resource to be created.
     */
    @JvmName("oydsqtlpoankoleg")
    public suspend
    fun codeConfiguration(`value`: Output) {
        this.codeConfiguration = value
    }

    /**
     * @param value A `container_configuration` block as defined above.
     */
    @JvmName("qqgrmptljkqbgcfh")
    public suspend
    fun containerConfiguration(`value`: Output) {
        this.containerConfiguration = value
    }

    /**
     * @param value Whether to generate the GitHub work flow file. Defaults to `true`. Changing this forces a new resource to be created.
     */
    @JvmName("kqquyhudwlxmebbk")
    public suspend fun generateWorkflowFile(`value`: Output) {
        this.generateWorkflowFile = value
    }

    /**
     * @param value Denotes this action uses a Linux base image.
     */
    @JvmName("gmkhvdaxspjtrjoc")
    public suspend fun linuxAction(`value`: Output) {
        this.linuxAction = value
    }

    /**
     * @param value A `code_configuration` block as defined above. Changing this forces a new resource to be created.
     */
    @JvmName("vbmwjhfrgapevlrn")
    public suspend
    fun codeConfiguration(`value`: SourceControlGithubActionConfigurationCodeConfigurationArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.codeConfiguration = mapped
    }

    /**
     * @param argument A `code_configuration` block as defined above. Changing this forces a new resource to be created.
     */
    @JvmName("lxmsyapbsumfabui")
    public suspend
    fun codeConfiguration(argument: suspend SourceControlGithubActionConfigurationCodeConfigurationArgsBuilder.() -> Unit) {
        val toBeMapped =
            SourceControlGithubActionConfigurationCodeConfigurationArgsBuilder().applySuspend {
                argument()
            }.build()
        val mapped = of(toBeMapped)
        this.codeConfiguration = mapped
    }

    /**
     * @param value A `container_configuration` block as defined above.
     */
    @JvmName("xwtduudbqckncvnm")
    public suspend
    fun containerConfiguration(`value`: SourceControlGithubActionConfigurationContainerConfigurationArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.containerConfiguration = mapped
    }

    /**
     * @param argument A `container_configuration` block as defined above.
     */
    @JvmName("amjnyfmunwansmeo")
    public suspend
    fun containerConfiguration(argument: suspend SourceControlGithubActionConfigurationContainerConfigurationArgsBuilder.() -> Unit) {
        val toBeMapped =
            SourceControlGithubActionConfigurationContainerConfigurationArgsBuilder().applySuspend {
                argument()
            }.build()
        val mapped = of(toBeMapped)
        this.containerConfiguration = mapped
    }

    /**
     * @param value Whether to generate the GitHub work flow file. Defaults to `true`. Changing this forces a new resource to be created.
     */
    @JvmName("odfhvndwxrtguiau")
    public suspend fun generateWorkflowFile(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.generateWorkflowFile = mapped
    }

    /**
     * @param value Denotes this action uses a Linux base image.
     */
    @JvmName("nwgklqpioqalnfuj")
    public suspend fun linuxAction(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.linuxAction = mapped
    }

    internal fun build(): SourceControlGithubActionConfigurationArgs =
        SourceControlGithubActionConfigurationArgs(
            codeConfiguration = codeConfiguration,
            containerConfiguration = containerConfiguration,
            generateWorkflowFile = generateWorkflowFile,
            linuxAction = linuxAction,
        )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy