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

com.pulumi.gcp.secretmanager.kotlin.inputs.RegionalSecretRotationArgs.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.13.1.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.RegionalSecretRotationArgs.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 RegionalSecretRotationArgs(
    public val nextRotationTime: Output? = null,
    public val rotationPeriod: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.gcp.secretmanager.inputs.RegionalSecretRotationArgs =
        com.pulumi.gcp.secretmanager.inputs.RegionalSecretRotationArgs.builder()
            .nextRotationTime(nextRotationTime?.applyValue({ args0 -> args0 }))
            .rotationPeriod(rotationPeriod?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [RegionalSecretRotationArgs].
 */
@PulumiTagMarker
public class RegionalSecretRotationArgsBuilder 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("sxtvxikywclbhqvj")
    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("lrlefdsprjngtgbj")
    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("vcykwhuqrpceboxa")
    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("vtapxdxbvfxqyfmu")
    public suspend fun rotationPeriod(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.rotationPeriod = mapped
    }

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




© 2015 - 2025 Weber Informatics LLC | Privacy Policy