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

com.pulumi.gcp.gkebackup.kotlin.outputs.BackupPlanRetentionPolicy.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.12.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.gcp.gkebackup.kotlin.outputs

import kotlin.Boolean
import kotlin.Int
import kotlin.Suppress

/**
 *
 * @property backupDeleteLockDays Minimum age for a Backup created via this BackupPlan (in days).
 * Must be an integer value between 0-90 (inclusive).
 * A Backup created under this BackupPlan will not be deletable
 * until it reaches Backup's (create time + backup_delete_lock_days).
 * Updating this field of a BackupPlan does not affect existing Backups.
 * Backups created after a successful update will inherit this new value.
 * @property backupRetainDays The default maximum age of a Backup created via this BackupPlan.
 * This field MUST be an integer value >= 0 and <= 365. If specified,
 * a Backup created under this BackupPlan will be automatically deleted
 * after its age reaches (createTime + backupRetainDays).
 * If not specified, Backups created under this BackupPlan will NOT be
 * subject to automatic deletion. Updating this field does NOT affect
 * existing Backups under it. Backups created AFTER a successful update
 * will automatically pick up the new value.
 * NOTE: backupRetainDays must be >= backupDeleteLockDays.
 * If cronSchedule is defined, then this must be <= 360 * the creation interval.
 * If rpo_config is defined, then this must be
 * <= 360 * targetRpoMinutes/(1440minutes/day)
 * @property locked This flag denotes whether the retention policy of this BackupPlan is locked.
 * If set to True, no further update is allowed on this policy, including
 * the locked field itself.
 */
public data class BackupPlanRetentionPolicy(
    public val backupDeleteLockDays: Int? = null,
    public val backupRetainDays: Int? = null,
    public val locked: Boolean? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.gcp.gkebackup.outputs.BackupPlanRetentionPolicy): BackupPlanRetentionPolicy = BackupPlanRetentionPolicy(
            backupDeleteLockDays = javaType.backupDeleteLockDays().map({ args0 -> args0 }).orElse(null),
            backupRetainDays = javaType.backupRetainDays().map({ args0 -> args0 }).orElse(null),
            locked = javaType.locked().map({ args0 -> args0 }).orElse(null),
        )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy