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

com.pulumi.gcp.cloudbuild.kotlin.outputs.TriggerBuildOptions.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.cloudbuild.kotlin.outputs

import kotlin.Boolean
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List

/**
 *
 * @property diskSizeGb Requested disk size for the VM that runs the build. Note that this is NOT "disk free";
 * some of the space will be used by the operating system and build utilities.
 * Also note that this is the minimum disk size that will be allocated for the build --
 * the build may run with a larger disk than requested. At present, the maximum disk size
 * is 1000GB; builds that request more than the maximum are rejected with an error.
 * @property dynamicSubstitutions Option to specify whether or not to apply bash style string operations to the substitutions.
 * NOTE this is always enabled for triggered builds and cannot be overridden in the build configuration file.
 * @property envs A list of global environment variable definitions that will exist for all build steps
 * in this build. If a variable is defined in both globally and in a build step,
 * the variable will use the build step value.
 * The elements are of the form "KEY=VALUE" for the environment variable "KEY" being given the value "VALUE".
 * @property logStreamingOption Option to define build log streaming behavior to Google Cloud Storage.
 * Possible values are: `STREAM_DEFAULT`, `STREAM_ON`, `STREAM_OFF`.
 * @property logging Option to specify the logging mode, which determines if and where build logs are stored.
 * Possible values are: `LOGGING_UNSPECIFIED`, `LEGACY`, `GCS_ONLY`, `STACKDRIVER_ONLY`, `CLOUD_LOGGING_ONLY`, `NONE`.
 * @property machineType Compute Engine machine type on which to run the build.
 * @property requestedVerifyOption Requested verifiability options.
 * Possible values are: `NOT_VERIFIED`, `VERIFIED`.
 * @property secretEnvs A list of global environment variables, which are encrypted using a Cloud Key Management
 * Service crypto key. These values must be specified in the build's Secret. These variables
 * will be available to all build steps in this build.
 * @property sourceProvenanceHashes Requested hash for SourceProvenance.
 * Each value may be one of: `NONE`, `SHA256`, `MD5`.
 * @property substitutionOption Option to specify behavior when there is an error in the substitution checks.
 * NOTE this is always set to ALLOW_LOOSE for triggered builds and cannot be overridden
 * in the build configuration file.
 * Possible values are: `MUST_MATCH`, `ALLOW_LOOSE`.
 * @property volumes Global list of volumes to mount for ALL build steps
 * Each volume is created as an empty volume prior to starting the build process.
 * Upon completion of the build, volumes and their contents are discarded. Global
 * volume names and paths cannot conflict with the volumes defined a build step.
 * Using a global volume in a build with only one step is not valid as it is indicative
 * of a build request with an incorrect configuration.
 * Structure is documented below.
 * @property workerPool Option to specify a WorkerPool for the build. Format projects/{project}/workerPools/{workerPool}
 * This field is experimental.
 */
public data class TriggerBuildOptions(
    public val diskSizeGb: Int? = null,
    public val dynamicSubstitutions: Boolean? = null,
    public val envs: List? = null,
    public val logStreamingOption: String? = null,
    public val logging: String? = null,
    public val machineType: String? = null,
    public val requestedVerifyOption: String? = null,
    public val secretEnvs: List? = null,
    public val sourceProvenanceHashes: List? = null,
    public val substitutionOption: String? = null,
    public val volumes: List? = null,
    public val workerPool: String? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.gcp.cloudbuild.outputs.TriggerBuildOptions): TriggerBuildOptions = TriggerBuildOptions(
            diskSizeGb = javaType.diskSizeGb().map({ args0 -> args0 }).orElse(null),
            dynamicSubstitutions = javaType.dynamicSubstitutions().map({ args0 -> args0 }).orElse(null),
            envs = javaType.envs().map({ args0 -> args0 }),
            logStreamingOption = javaType.logStreamingOption().map({ args0 -> args0 }).orElse(null),
            logging = javaType.logging().map({ args0 -> args0 }).orElse(null),
            machineType = javaType.machineType().map({ args0 -> args0 }).orElse(null),
            requestedVerifyOption = javaType.requestedVerifyOption().map({ args0 -> args0 }).orElse(null),
            secretEnvs = javaType.secretEnvs().map({ args0 -> args0 }),
            sourceProvenanceHashes = javaType.sourceProvenanceHashes().map({ args0 -> args0 }),
            substitutionOption = javaType.substitutionOption().map({ args0 -> args0 }).orElse(null),
            volumes = javaType.volumes().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.gcp.cloudbuild.kotlin.outputs.TriggerBuildOptionsVolume.Companion.toKotlin(args0)
                })
            }),
            workerPool = javaType.workerPool().map({ args0 -> args0 }).orElse(null),
        )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy