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.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.digitalocean.kotlin.inputs
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.digitalocean.inputs.AppSpecDatabaseArgs.builder
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.Boolean
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName
/**
*
* @property clusterName The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned.
* @property dbName The name of the MySQL or PostgreSQL database to configure.
* @property dbUser The name of the MySQL or PostgreSQL user to configure.
* This resource supports customized create timeouts. The default timeout is 30 minutes.
* @property engine The database engine to use (`MYSQL`, `PG`, `REDIS`, `MONGODB`, `KAFKA`, or `OPENSEARCH`).
* @property name The name of the component.
* @property production Whether this is a production or dev database.
* @property version The version of the database engine.
*/
public data class AppSpecDatabaseArgs(
public val clusterName: Output? = null,
public val dbName: Output? = null,
public val dbUser: Output? = null,
public val engine: Output? = null,
public val name: Output? = null,
public val production: Output? = null,
public val version: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.digitalocean.inputs.AppSpecDatabaseArgs =
com.pulumi.digitalocean.inputs.AppSpecDatabaseArgs.builder()
.clusterName(clusterName?.applyValue({ args0 -> args0 }))
.dbName(dbName?.applyValue({ args0 -> args0 }))
.dbUser(dbUser?.applyValue({ args0 -> args0 }))
.engine(engine?.applyValue({ args0 -> args0 }))
.name(name?.applyValue({ args0 -> args0 }))
.production(production?.applyValue({ args0 -> args0 }))
.version(version?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [AppSpecDatabaseArgs].
*/
@PulumiTagMarker
public class AppSpecDatabaseArgsBuilder internal constructor() {
private var clusterName: Output? = null
private var dbName: Output? = null
private var dbUser: Output? = null
private var engine: Output? = null
private var name: Output? = null
private var production: Output? = null
private var version: Output? = null
/**
* @param value The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned.
*/
@JvmName("jpanksuyvcbrfulg")
public suspend fun clusterName(`value`: Output) {
this.clusterName = value
}
/**
* @param value The name of the MySQL or PostgreSQL database to configure.
*/
@JvmName("lfbjggpcuyarmcxl")
public suspend fun dbName(`value`: Output) {
this.dbName = value
}
/**
* @param value The name of the MySQL or PostgreSQL user to configure.
* This resource supports customized create timeouts. The default timeout is 30 minutes.
*/
@JvmName("ejpkiobfomvbhkfc")
public suspend fun dbUser(`value`: Output) {
this.dbUser = value
}
/**
* @param value The database engine to use (`MYSQL`, `PG`, `REDIS`, `MONGODB`, `KAFKA`, or `OPENSEARCH`).
*/
@JvmName("ydnqtxbdyeavklwd")
public suspend fun engine(`value`: Output) {
this.engine = value
}
/**
* @param value The name of the component.
*/
@JvmName("ohyiwpdwvnovwuup")
public suspend fun name(`value`: Output) {
this.name = value
}
/**
* @param value Whether this is a production or dev database.
*/
@JvmName("pfjyugokncvttoim")
public suspend fun production(`value`: Output) {
this.production = value
}
/**
* @param value The version of the database engine.
*/
@JvmName("jlpeokrqomfornhx")
public suspend fun version(`value`: Output) {
this.version = value
}
/**
* @param value The name of the underlying DigitalOcean DBaaS cluster. This is required for production databases. For dev databases, if `cluster_name` is not set, a new cluster will be provisioned.
*/
@JvmName("hnadwfhhducgthou")
public suspend fun clusterName(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.clusterName = mapped
}
/**
* @param value The name of the MySQL or PostgreSQL database to configure.
*/
@JvmName("ontjrevxtrpygoms")
public suspend fun dbName(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.dbName = mapped
}
/**
* @param value The name of the MySQL or PostgreSQL user to configure.
* This resource supports customized create timeouts. The default timeout is 30 minutes.
*/
@JvmName("nqqadttmoslxgtsf")
public suspend fun dbUser(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.dbUser = mapped
}
/**
* @param value The database engine to use (`MYSQL`, `PG`, `REDIS`, `MONGODB`, `KAFKA`, or `OPENSEARCH`).
*/
@JvmName("grpkwkxrxwanmxqj")
public suspend fun engine(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.engine = mapped
}
/**
* @param value The name of the component.
*/
@JvmName("mftvdxeahmtftgas")
public suspend fun name(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.name = mapped
}
/**
* @param value Whether this is a production or dev database.
*/
@JvmName("unkhgakrivrkfblo")
public suspend fun production(`value`: Boolean?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.production = mapped
}
/**
* @param value The version of the database engine.
*/
@JvmName("krngnlkwbodiivvq")
public suspend fun version(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.version = mapped
}
internal fun build(): AppSpecDatabaseArgs = AppSpecDatabaseArgs(
clusterName = clusterName,
dbName = dbName,
dbUser = dbUser,
engine = engine,
name = name,
production = production,
version = version,
)
}