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

com.pulumi.aws.codepipeline.kotlin.inputs.PipelineTriggerGitConfigurationArgs.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: 6.57.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.aws.codepipeline.kotlin.inputs

import com.pulumi.aws.codepipeline.inputs.PipelineTriggerGitConfigurationArgs.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

/**
 *
 * @property pullRequests The field where the repository event that will start the pipeline is specified as pull requests. A `pull_request` block is documented below.
 * @property pushes The field where the repository event that will start the pipeline, such as pushing Git tags, is specified with details. A `push` block is documented below.
 * @property sourceActionName The name of the pipeline source action where the trigger configuration, such as Git tags, is specified. The trigger configuration will start the pipeline upon the specified change only.
 */
public data class PipelineTriggerGitConfigurationArgs(
    public val pullRequests: Output>? = null,
    public val pushes: Output>? = null,
    public val sourceActionName: Output,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.aws.codepipeline.inputs.PipelineTriggerGitConfigurationArgs =
        com.pulumi.aws.codepipeline.inputs.PipelineTriggerGitConfigurationArgs.builder()
            .pullRequests(
                pullRequests?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            )
            .pushes(pushes?.applyValue({ args0 -> args0.map({ args0 -> args0.let({ args0 -> args0.toJava() }) }) }))
            .sourceActionName(sourceActionName.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [PipelineTriggerGitConfigurationArgs].
 */
@PulumiTagMarker
public class PipelineTriggerGitConfigurationArgsBuilder internal constructor() {
    private var pullRequests: Output>? = null

    private var pushes: Output>? = null

    private var sourceActionName: Output? = null

    /**
     * @param value The field where the repository event that will start the pipeline is specified as pull requests. A `pull_request` block is documented below.
     */
    @JvmName("hvxywnloifmkonyv")
    public suspend fun pullRequests(`value`: Output>) {
        this.pullRequests = value
    }

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

    /**
     * @param values The field where the repository event that will start the pipeline is specified as pull requests. A `pull_request` block is documented below.
     */
    @JvmName("wkpkfeyvrlteaaqs")
    public suspend fun pullRequests(values: List>) {
        this.pullRequests = Output.all(values)
    }

    /**
     * @param value The field where the repository event that will start the pipeline, such as pushing Git tags, is specified with details. A `push` block is documented below.
     */
    @JvmName("hvdooxylmddycrbt")
    public suspend fun pushes(`value`: Output>) {
        this.pushes = value
    }

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

    /**
     * @param values The field where the repository event that will start the pipeline, such as pushing Git tags, is specified with details. A `push` block is documented below.
     */
    @JvmName("blulfsfiuqfbsreb")
    public suspend fun pushes(values: List>) {
        this.pushes = Output.all(values)
    }

    /**
     * @param value The name of the pipeline source action where the trigger configuration, such as Git tags, is specified. The trigger configuration will start the pipeline upon the specified change only.
     */
    @JvmName("wnmjcscprewcqjwv")
    public suspend fun sourceActionName(`value`: Output) {
        this.sourceActionName = value
    }

    /**
     * @param value The field where the repository event that will start the pipeline is specified as pull requests. A `pull_request` block is documented below.
     */
    @JvmName("wgsjrhgtrjgpubxu")
    public suspend fun pullRequests(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.pullRequests = mapped
    }

    /**
     * @param argument The field where the repository event that will start the pipeline is specified as pull requests. A `pull_request` block is documented below.
     */
    @JvmName("jnjodjttaysyjfqm")
    public suspend fun pullRequests(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            PipelineTriggerGitConfigurationPullRequestArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.pullRequests = mapped
    }

    /**
     * @param argument The field where the repository event that will start the pipeline is specified as pull requests. A `pull_request` block is documented below.
     */
    @JvmName("gtcmhbinhatopkll")
    public suspend fun pullRequests(vararg argument: suspend PipelineTriggerGitConfigurationPullRequestArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            PipelineTriggerGitConfigurationPullRequestArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.pullRequests = mapped
    }

    /**
     * @param argument The field where the repository event that will start the pipeline is specified as pull requests. A `pull_request` block is documented below.
     */
    @JvmName("dlnbaghiirsxoaru")
    public suspend fun pullRequests(argument: suspend PipelineTriggerGitConfigurationPullRequestArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            PipelineTriggerGitConfigurationPullRequestArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.pullRequests = mapped
    }

    /**
     * @param values The field where the repository event that will start the pipeline is specified as pull requests. A `pull_request` block is documented below.
     */
    @JvmName("ueqrwvvsekaonyji")
    public suspend fun pullRequests(vararg values: PipelineTriggerGitConfigurationPullRequestArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.pullRequests = mapped
    }

    /**
     * @param value The field where the repository event that will start the pipeline, such as pushing Git tags, is specified with details. A `push` block is documented below.
     */
    @JvmName("lesrtrhuxjystars")
    public suspend fun pushes(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.pushes = mapped
    }

    /**
     * @param argument The field where the repository event that will start the pipeline, such as pushing Git tags, is specified with details. A `push` block is documented below.
     */
    @JvmName("ohtnwwbsfqfoypta")
    public suspend fun pushes(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            PipelineTriggerGitConfigurationPushArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.pushes = mapped
    }

    /**
     * @param argument The field where the repository event that will start the pipeline, such as pushing Git tags, is specified with details. A `push` block is documented below.
     */
    @JvmName("tuerdujrrbihmpom")
    public suspend fun pushes(vararg argument: suspend PipelineTriggerGitConfigurationPushArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            PipelineTriggerGitConfigurationPushArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.pushes = mapped
    }

    /**
     * @param argument The field where the repository event that will start the pipeline, such as pushing Git tags, is specified with details. A `push` block is documented below.
     */
    @JvmName("qxfwruhkyyiqlxkt")
    public suspend fun pushes(argument: suspend PipelineTriggerGitConfigurationPushArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            PipelineTriggerGitConfigurationPushArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.pushes = mapped
    }

    /**
     * @param values The field where the repository event that will start the pipeline, such as pushing Git tags, is specified with details. A `push` block is documented below.
     */
    @JvmName("auwxcnvxtjlncyyu")
    public suspend fun pushes(vararg values: PipelineTriggerGitConfigurationPushArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.pushes = mapped
    }

    /**
     * @param value The name of the pipeline source action where the trigger configuration, such as Git tags, is specified. The trigger configuration will start the pipeline upon the specified change only.
     */
    @JvmName("ureswawongknuytj")
    public suspend fun sourceActionName(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.sourceActionName = mapped
    }

    internal fun build(): PipelineTriggerGitConfigurationArgs = PipelineTriggerGitConfigurationArgs(
        pullRequests = pullRequests,
        pushes = pushes,
        sourceActionName = sourceActionName ?: throw PulumiNullFieldException("sourceActionName"),
    )
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy