Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
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.sql.kotlin.inputs
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.gcp.sql.inputs.DatabaseInstanceSettingsIpConfigurationArgs.builder
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Boolean
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
*
* @property allocatedIpRange The name of the allocated ip range for the private ip CloudSQL instance. For example: "google-managed-services-default". If set, the instance ip will be created in the allocated range. The range name must comply with [RFC 1035](https://datatracker.ietf.org/doc/html/rfc1035). Specifically, the name must be 1-63 characters long and match the regular expression a-z?.
* @property authorizedNetworks
* @property enablePrivatePathForGoogleCloudServices Whether Google Cloud services such as BigQuery are allowed to access data in this Cloud SQL instance over a private IP connection. SQLSERVER database type is not supported.
* @property ipv4Enabled Whether this Cloud SQL instance should be assigned
* a public IPV4 address. At least `ipv4_enabled` must be enabled or a
* `private_network` must be configured.
* @property privateNetwork The VPC network from which the Cloud SQL
* instance is accessible for private IP. For example, projects/myProject/global/networks/default.
* Specifying a network enables private IP.
* At least `ipv4_enabled` must be enabled or a `private_network` must be configured.
* This setting can be updated, but it cannot be removed after it is set.
* @property pscConfigs PSC settings for a Cloud SQL instance.
* @property serverCaMode Specify how the server certificate's Certificate Authority is hosted. Supported values are `GOOGLE_MANAGED_INTERNAL_CA` and `GOOGLE_MANAGED_CAS_CA`.
* @property sslMode Specify how SSL connection should be enforced in DB connections. Supported values are `ALLOW_UNENCRYPTED_AND_ENCRYPTED`, `ENCRYPTED_ONLY`, and `TRUSTED_CLIENT_CERTIFICATE_REQUIRED` (not supported for SQL Server). See [API reference doc](https://cloud.google.com/sql/docs/postgres/admin-api/rest/v1/instances#ipconfiguration) for details.
*/
public data class DatabaseInstanceSettingsIpConfigurationArgs(
public val allocatedIpRange: Output? = null,
public val authorizedNetworks: Output>? = null,
public val enablePrivatePathForGoogleCloudServices: Output? = null,
public val ipv4Enabled: Output? = null,
public val privateNetwork: Output? = null,
public val pscConfigs: Output>? = null,
public val serverCaMode: Output? = null,
public val sslMode: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.gcp.sql.inputs.DatabaseInstanceSettingsIpConfigurationArgs =
com.pulumi.gcp.sql.inputs.DatabaseInstanceSettingsIpConfigurationArgs.builder()
.allocatedIpRange(allocatedIpRange?.applyValue({ args0 -> args0 }))
.authorizedNetworks(
authorizedNetworks?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
)
.enablePrivatePathForGoogleCloudServices(
enablePrivatePathForGoogleCloudServices?.applyValue({ args0 ->
args0
}),
)
.ipv4Enabled(ipv4Enabled?.applyValue({ args0 -> args0 }))
.privateNetwork(privateNetwork?.applyValue({ args0 -> args0 }))
.pscConfigs(
pscConfigs?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.serverCaMode(serverCaMode?.applyValue({ args0 -> args0 }))
.sslMode(sslMode?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [DatabaseInstanceSettingsIpConfigurationArgs].
*/
@PulumiTagMarker
public class DatabaseInstanceSettingsIpConfigurationArgsBuilder internal constructor() {
private var allocatedIpRange: Output? = null
private var authorizedNetworks:
Output>? = null
private var enablePrivatePathForGoogleCloudServices: Output? = null
private var ipv4Enabled: Output? = null
private var privateNetwork: Output? = null
private var pscConfigs: Output>? = null
private var serverCaMode: Output? = null
private var sslMode: Output? = null
/**
* @param value The name of the allocated ip range for the private ip CloudSQL instance. For example: "google-managed-services-default". If set, the instance ip will be created in the allocated range. The range name must comply with [RFC 1035](https://datatracker.ietf.org/doc/html/rfc1035). Specifically, the name must be 1-63 characters long and match the regular expression a-z?.
*/
@JvmName("bjiwfarvvmpvbdbo")
public suspend fun allocatedIpRange(`value`: Output) {
this.allocatedIpRange = value
}
/**
* @param value
*/
@JvmName("lvxpgmvgttjggyqc")
public suspend fun authorizedNetworks(`value`: Output>) {
this.authorizedNetworks = value
}
@JvmName("flxndfwgplqxewsx")
public suspend fun authorizedNetworks(vararg values: Output) {
this.authorizedNetworks = Output.all(values.asList())
}
/**
* @param values
*/
@JvmName("kwpecqroxxxrcgsu")
public suspend fun authorizedNetworks(values: List