com.pulumi.gcp.dataflow.kotlin.outputs.PipelineWorkloadDataflowFlexTemplateRequestLaunchParameterEnvironment.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-gcp-kotlin Show documentation
Show all versions of pulumi-gcp-kotlin Show documentation
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.gcp.dataflow.kotlin.outputs
import kotlin.Boolean
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List
import kotlin.collections.Map
/**
*
* @property additionalExperiments Additional experiment flags for the job.
* @property additionalUserLabels Additional user labels to be specified for the job. Keys and values should follow the restrictions specified in the labeling restrictions page. An object containing a list of key/value pairs.
* 'Example: { "name": "wrench", "mass": "1kg", "count": "3" }.'
* 'An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.'
* @property enableStreamingEngine Whether to enable Streaming Engine for the job.
* @property flexrsGoal Set FlexRS goal for the job. https://cloud.google.com/dataflow/docs/guides/flexrs
* https://cloud.google.com/dataflow/docs/reference/data-pipelines/rest/v1/projects.locations.pipelines#FlexResourceSchedulingGoal
* Possible values are: `FLEXRS_UNSPECIFIED`, `FLEXRS_SPEED_OPTIMIZED`, `FLEXRS_COST_OPTIMIZED`.
* @property ipConfiguration Configuration for VM IPs.
* https://cloud.google.com/dataflow/docs/reference/data-pipelines/rest/v1/projects.locations.pipelines#WorkerIPAddressConfiguration
* Possible values are: `WORKER_IP_UNSPECIFIED`, `WORKER_IP_PUBLIC`, `WORKER_IP_PRIVATE`.
* @property kmsKeyName 'Name for the Cloud KMS key for the job. The key format is: projects//locations//keyRings//cryptoKeys/'
* @property machineType The machine type to use for the job. Defaults to the value from the template if not specified.
* @property maxWorkers The maximum number of Compute Engine instances to be made available to your pipeline during execution, from 1 to 1000.
* @property network Network to which VMs will be assigned. If empty or unspecified, the service will use the network "default".
* @property numWorkers The initial number of Compute Engine instances for the job.
* @property serviceAccountEmail The email address of the service account to run the job as.
* @property subnetwork Subnetwork to which VMs will be assigned, if desired. You can specify a subnetwork using either a complete URL or an abbreviated path. Expected to be of the form "https://www.googleapis.com/compute/v1/projects/HOST_PROJECT_ID/regions/REGION/subnetworks/SUBNETWORK" or "regions/REGION/subnetworks/SUBNETWORK". If the subnetwork is located in a Shared VPC network, you must use the complete URL.
* @property tempLocation The Cloud Storage path to use for temporary files. Must be a valid Cloud Storage URL, beginning with gs://.
* @property workerRegion The Compute Engine region (https://cloud.google.com/compute/docs/regions-zones/regions-zones) in which worker processing should occur, e.g. "us-west1". Mutually exclusive with workerZone. If neither workerRegion nor workerZone is specified, default to the control plane's region.
* @property workerZone The Compute Engine zone (https://cloud.google.com/compute/docs/regions-zones/regions-zones) in which worker processing should occur, e.g. "us-west1-a". Mutually exclusive with workerRegion. If neither workerRegion nor workerZone is specified, a zone in the control plane's region is chosen based on available capacity. If both workerZone and zone are set, workerZone takes precedence.
* @property zone The Compute Engine availability zone for launching worker instances to run your pipeline. In the future, workerZone will take precedence.
*/
public data class PipelineWorkloadDataflowFlexTemplateRequestLaunchParameterEnvironment(
public val additionalExperiments: List? = null,
public val additionalUserLabels: Map? = null,
public val enableStreamingEngine: Boolean? = null,
public val flexrsGoal: String? = null,
public val ipConfiguration: String? = null,
public val kmsKeyName: String? = null,
public val machineType: String? = null,
public val maxWorkers: Int? = null,
public val network: String? = null,
public val numWorkers: Int? = null,
public val serviceAccountEmail: String? = null,
public val subnetwork: String? = null,
public val tempLocation: String? = null,
public val workerRegion: String? = null,
public val workerZone: String? = null,
public val zone: String? = null,
) {
public companion object {
public fun toKotlin(javaType: com.pulumi.gcp.dataflow.outputs.PipelineWorkloadDataflowFlexTemplateRequestLaunchParameterEnvironment): PipelineWorkloadDataflowFlexTemplateRequestLaunchParameterEnvironment =
PipelineWorkloadDataflowFlexTemplateRequestLaunchParameterEnvironment(
additionalExperiments = javaType.additionalExperiments().map({ args0 -> args0 }),
additionalUserLabels = javaType.additionalUserLabels().map({ args0 ->
args0.key.to(args0.value)
}).toMap(),
enableStreamingEngine = javaType.enableStreamingEngine().map({ args0 -> args0 }).orElse(null),
flexrsGoal = javaType.flexrsGoal().map({ args0 -> args0 }).orElse(null),
ipConfiguration = javaType.ipConfiguration().map({ args0 -> args0 }).orElse(null),
kmsKeyName = javaType.kmsKeyName().map({ args0 -> args0 }).orElse(null),
machineType = javaType.machineType().map({ args0 -> args0 }).orElse(null),
maxWorkers = javaType.maxWorkers().map({ args0 -> args0 }).orElse(null),
network = javaType.network().map({ args0 -> args0 }).orElse(null),
numWorkers = javaType.numWorkers().map({ args0 -> args0 }).orElse(null),
serviceAccountEmail = javaType.serviceAccountEmail().map({ args0 -> args0 }).orElse(null),
subnetwork = javaType.subnetwork().map({ args0 -> args0 }).orElse(null),
tempLocation = javaType.tempLocation().map({ args0 -> args0 }).orElse(null),
workerRegion = javaType.workerRegion().map({ args0 -> args0 }).orElse(null),
workerZone = javaType.workerZone().map({ args0 -> args0 }).orElse(null),
zone = javaType.zone().map({ args0 -> args0 }).orElse(null),
)
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy