com.pulumi.gcp.sql.kotlin.outputs.DatabaseInstanceSettingsIpConfiguration.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.sql.kotlin.outputs
import kotlin.Boolean
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List
/**
*
* @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 requireSsl Whether SSL connections over IP are enforced or not. To change this field, also set the corresponding value in `ssl_mode`.
* @property sslMode Specify how SSL connection should be enforced in DB connections. This field provides more SSL enforcment options compared to `require_ssl`. To change this field, also set the correspoding value in `require_ssl`.
* * For PostgreSQL instances, the value pairs are listed in the [API reference doc](https://cloud.google.com/sql/docs/postgres/admin-api/rest/v1beta4/instances#ipconfiguration) for `ssl_mode` field.
* * For MySQL instances, use the same value pairs as the PostgreSQL instances.
* * For SQL Server instances, set it to `ALLOW_UNENCRYPTED_AND_ENCRYPTED` when `require_ssl=false` and `ENCRYPTED_ONLY` otherwise.
*/
public data class DatabaseInstanceSettingsIpConfiguration(
public val allocatedIpRange: String? = null,
public val authorizedNetworks: List? =
null,
public val enablePrivatePathForGoogleCloudServices: Boolean? = null,
public val ipv4Enabled: Boolean? = null,
public val privateNetwork: String? = null,
public val pscConfigs: List? = null,
public val requireSsl: Boolean? = null,
public val sslMode: String? = null,
) {
public companion object {
public fun toKotlin(javaType: com.pulumi.gcp.sql.outputs.DatabaseInstanceSettingsIpConfiguration): DatabaseInstanceSettingsIpConfiguration = DatabaseInstanceSettingsIpConfiguration(
allocatedIpRange = javaType.allocatedIpRange().map({ args0 -> args0 }).orElse(null),
authorizedNetworks = javaType.authorizedNetworks().map({ args0 ->
args0.let({ args0 ->
com.pulumi.gcp.sql.kotlin.outputs.DatabaseInstanceSettingsIpConfigurationAuthorizedNetwork.Companion.toKotlin(args0)
})
}),
enablePrivatePathForGoogleCloudServices = javaType.enablePrivatePathForGoogleCloudServices().map({ args0 ->
args0
}).orElse(null),
ipv4Enabled = javaType.ipv4Enabled().map({ args0 -> args0 }).orElse(null),
privateNetwork = javaType.privateNetwork().map({ args0 -> args0 }).orElse(null),
pscConfigs = javaType.pscConfigs().map({ args0 ->
args0.let({ args0 ->
com.pulumi.gcp.sql.kotlin.outputs.DatabaseInstanceSettingsIpConfigurationPscConfig.Companion.toKotlin(args0)
})
}),
requireSsl = javaType.requireSsl().map({ args0 -> args0 }).orElse(null),
sslMode = javaType.sslMode().map({ args0 -> args0 }).orElse(null),
)
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy