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.kubernetes.apiextensions.v1.kotlin.inputs
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import com.pulumi.kubernetes.apiextensions.v1.inputs.CustomResourceDefinitionVersionArgs.builder
import kotlin.Boolean
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
* CustomResourceDefinitionVersion describes a version for CRD.
* @property additionalPrinterColumns additionalPrinterColumns specifies additional columns returned in Table output. See https://kubernetes.io/docs/reference/using-api/api-concepts/#receiving-resources-as-tables for details. If no columns are specified, a single column displaying the age of the custom resource is used.
* @property deprecated deprecated indicates this version of the custom resource API is deprecated. When set to true, API requests to this version receive a warning header in the server response. Defaults to false.
* @property deprecationWarning deprecationWarning overrides the default warning returned to API clients. May only be set when `deprecated` is true. The default warning indicates this version is deprecated and recommends use of the newest served version of equal or greater stability, if one exists.
* @property name name is the version name, e.g. “v1”, “v2beta1”, etc. The custom resources are served under this version at `/apis///...` if `served` is true.
* @property schema schema describes the schema used for validation, pruning, and defaulting of this version of the custom resource.
* @property selectableFields selectableFields specifies paths to fields that may be used as field selectors. A maximum of 8 selectable fields are allowed. See https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors
* @property served served is a flag enabling/disabling this version from being served via REST APIs
* @property storage storage indicates this version should be used when persisting custom resources to storage. There must be exactly one version with storage=true.
* @property subresources subresources specify what subresources this version of the defined custom resource have.
*/
public data class CustomResourceDefinitionVersionArgs(
public val additionalPrinterColumns: Output>? = null,
public val deprecated: Output? = null,
public val deprecationWarning: Output? = null,
public val name: Output,
public val schema: Output? = null,
public val selectableFields: Output>? = null,
public val served: Output,
public val storage: Output,
public val subresources: Output? = null,
) :
ConvertibleToJava {
override fun toJava(): com.pulumi.kubernetes.apiextensions.v1.inputs.CustomResourceDefinitionVersionArgs =
com.pulumi.kubernetes.apiextensions.v1.inputs.CustomResourceDefinitionVersionArgs.builder()
.additionalPrinterColumns(
additionalPrinterColumns?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
)
.deprecated(deprecated?.applyValue({ args0 -> args0 }))
.deprecationWarning(deprecationWarning?.applyValue({ args0 -> args0 }))
.name(name.applyValue({ args0 -> args0 }))
.schema(schema?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.selectableFields(
selectableFields?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.served(served.applyValue({ args0 -> args0 }))
.storage(storage.applyValue({ args0 -> args0 }))
.subresources(subresources?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) })).build()
}
/**
* Builder for [CustomResourceDefinitionVersionArgs].
*/
@PulumiTagMarker
public class CustomResourceDefinitionVersionArgsBuilder internal constructor() {
private var additionalPrinterColumns: Output>? = null
private var deprecated: Output? = null
private var deprecationWarning: Output? = null
private var name: Output? = null
private var schema: Output? = null
private var selectableFields: Output>? = null
private var served: Output? = null
private var storage: Output? = null
private var subresources: Output? = null
/**
* @param value additionalPrinterColumns specifies additional columns returned in Table output. See https://kubernetes.io/docs/reference/using-api/api-concepts/#receiving-resources-as-tables for details. If no columns are specified, a single column displaying the age of the custom resource is used.
*/
@JvmName("tupbkhpnjdcltxim")
public suspend fun additionalPrinterColumns(`value`: Output>) {
this.additionalPrinterColumns = value
}
@JvmName("frtuuyyuskwktcyg")
public suspend fun additionalPrinterColumns(vararg values: Output) {
this.additionalPrinterColumns = Output.all(values.asList())
}
/**
* @param values additionalPrinterColumns specifies additional columns returned in Table output. See https://kubernetes.io/docs/reference/using-api/api-concepts/#receiving-resources-as-tables for details. If no columns are specified, a single column displaying the age of the custom resource is used.
*/
@JvmName("uxpxkxomkkgmudig")
public suspend fun additionalPrinterColumns(values: List