All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.gcp.gkehub.kotlin.outputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfig.kt Maven / Gradle / Ivy

Go to download

Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.

There is a newer version: 8.10.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.gcp.gkehub.kotlin.outputs

import kotlin.Boolean
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List

/**
 *
 * @property auditIntervalSeconds Interval for Policy Controller Audit scans (in seconds). When set to 0, this disables audit functionality altogether.
 * @property constraintViolationLimit The maximum number of audit violations to be stored in a constraint. If not set, the internal default of 20 will be used.
 * @property deploymentConfigs Map of deployment configs to deployments ("admission", "audit", "mutation").
 * Structure is documented below.
 * @property exemptableNamespaces The set of namespaces that are excluded from Policy Controller checks. Namespaces do not need to currently exist on the cluster.
 * @property installSpec Configures the mode of the Policy Controller installation
 * Possible values are: `INSTALL_SPEC_UNSPECIFIED`, `INSTALL_SPEC_NOT_INSTALLED`, `INSTALL_SPEC_ENABLED`, `INSTALL_SPEC_SUSPENDED`, `INSTALL_SPEC_DETACHED`.
 * @property logDeniesEnabled Logs all denies and dry run failures.
 * @property monitoring Monitoring specifies the configuration of monitoring Policy Controller.
 * Structure is documented below.
 * @property mutationEnabled Enables the ability to mutate resources using Policy Controller.
 * @property policyContent Specifies the desired policy content on the cluster.
 * Structure is documented below.
 * @property referentialRulesEnabled Enables the ability to use Constraint Templates that reference to objects other than the object currently being evaluated.
 */
public data class FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfig(
    public val auditIntervalSeconds: Int? = null,
    public val constraintViolationLimit: Int? = null,
    public val deploymentConfigs: List? =
        null,
    public val exemptableNamespaces: List? = null,
    public val installSpec: String,
    public val logDeniesEnabled: Boolean? = null,
    public val monitoring: FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigMonitoring? = null,
    public val mutationEnabled: Boolean? = null,
    public val policyContent: FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContent? = null,
    public val referentialRulesEnabled: Boolean? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.gcp.gkehub.outputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfig): FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfig =
            FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfig(
                auditIntervalSeconds = javaType.auditIntervalSeconds().map({ args0 -> args0 }).orElse(null),
                constraintViolationLimit = javaType.constraintViolationLimit().map({ args0 -> args0 }).orElse(null),
                deploymentConfigs = javaType.deploymentConfigs().map({ args0 ->
                    args0.let({ args0 ->
                        com.pulumi.gcp.gkehub.kotlin.outputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigDeploymentConfig.Companion.toKotlin(args0)
                    })
                }),
                exemptableNamespaces = javaType.exemptableNamespaces().map({ args0 -> args0 }),
                installSpec = javaType.installSpec(),
                logDeniesEnabled = javaType.logDeniesEnabled().map({ args0 -> args0 }).orElse(null),
                monitoring = javaType.monitoring().map({ args0 ->
                    args0.let({ args0 ->
                        com.pulumi.gcp.gkehub.kotlin.outputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigMonitoring.Companion.toKotlin(args0)
                    })
                }).orElse(null),
                mutationEnabled = javaType.mutationEnabled().map({ args0 -> args0 }).orElse(null),
                policyContent = javaType.policyContent().map({ args0 ->
                    args0.let({ args0 ->
                        com.pulumi.gcp.gkehub.kotlin.outputs.FeatureFleetDefaultMemberConfigPolicycontrollerPolicyControllerHubConfigPolicyContent.Companion.toKotlin(args0)
                    })
                }).orElse(null),
                referentialRulesEnabled = javaType.referentialRulesEnabled().map({ args0 -> args0 }).orElse(null),
            )
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy