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

com.pulumi.gcp.secretmanager.kotlin.inputs.SecretRotationArgs.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.secretmanager.kotlin.inputs

import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.gcp.secretmanager.inputs.SecretRotationArgs.builder
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName

/**
 *
 * @property nextRotationTime Timestamp in UTC at which the Secret is scheduled to rotate.
 * A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
 * @property rotationPeriod The Duration between rotation notifications. Must be in seconds and at least 3600s (1h) and at most 3153600000s (100 years).
 * If rotationPeriod is set, `next_rotation_time` must be set. `next_rotation_time` will be advanced by this period when the service automatically sends rotation notifications.
 */
public data class SecretRotationArgs(
    public val nextRotationTime: Output? = null,
    public val rotationPeriod: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.gcp.secretmanager.inputs.SecretRotationArgs =
        com.pulumi.gcp.secretmanager.inputs.SecretRotationArgs.builder()
            .nextRotationTime(nextRotationTime?.applyValue({ args0 -> args0 }))
            .rotationPeriod(rotationPeriod?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [SecretRotationArgs].
 */
@PulumiTagMarker
public class SecretRotationArgsBuilder internal constructor() {
    private var nextRotationTime: Output? = null

    private var rotationPeriod: Output? = null

    /**
     * @param value Timestamp in UTC at which the Secret is scheduled to rotate.
     * A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
     */
    @JvmName("jysfnboxvpbthjlq")
    public suspend fun nextRotationTime(`value`: Output) {
        this.nextRotationTime = value
    }

    /**
     * @param value The Duration between rotation notifications. Must be in seconds and at least 3600s (1h) and at most 3153600000s (100 years).
     * If rotationPeriod is set, `next_rotation_time` must be set. `next_rotation_time` will be advanced by this period when the service automatically sends rotation notifications.
     */
    @JvmName("uwgxqklangqhcbao")
    public suspend fun rotationPeriod(`value`: Output) {
        this.rotationPeriod = value
    }

    /**
     * @param value Timestamp in UTC at which the Secret is scheduled to rotate.
     * A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
     */
    @JvmName("xnhfevnomnfxulum")
    public suspend fun nextRotationTime(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.nextRotationTime = mapped
    }

    /**
     * @param value The Duration between rotation notifications. Must be in seconds and at least 3600s (1h) and at most 3153600000s (100 years).
     * If rotationPeriod is set, `next_rotation_time` must be set. `next_rotation_time` will be advanced by this period when the service automatically sends rotation notifications.
     */
    @JvmName("kuivtsjlhnyqblmp")
    public suspend fun rotationPeriod(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.rotationPeriod = mapped
    }

    internal fun build(): SecretRotationArgs = SecretRotationArgs(
        nextRotationTime = nextRotationTime,
        rotationPeriod = rotationPeriod,
    )
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy