BucketRetentionPolicyArgs

data class BucketRetentionPolicyArgs(val effectiveTime: Output<String>? = null, val isLocked: Output<Boolean>? = null, val retentionPeriod: Output<String>? = null) : ConvertibleToJava<BucketRetentionPolicyArgs>

The bucket's retention policy. The retention policy enforces a minimum retention time for all objects contained in the bucket, based on their creation time. Any attempt to overwrite or delete objects younger than the retention period will result in a PERMISSION_DENIED error. An unlocked retention policy can be modified or removed from the bucket via a storage.buckets.update operation. A locked retention policy cannot be removed or shortened in duration for the lifetime of the bucket. Attempting to remove or decrease period of a locked retention policy will result in a PERMISSION_DENIED error.

Constructors

Link copied to clipboard
fun BucketRetentionPolicyArgs(effectiveTime: Output<String>? = null, isLocked: Output<Boolean>? = null, retentionPeriod: Output<String>? = null)

Functions

Link copied to clipboard
open override fun toJava(): BucketRetentionPolicyArgs

Properties

Link copied to clipboard
val effectiveTime: Output<String>? = null

Server-determined value that indicates the time from which policy was enforced and effective. This value is in RFC 3339 format.

Link copied to clipboard
val isLocked: Output<Boolean>? = null

Once locked, an object retention policy cannot be modified.

Link copied to clipboard
val retentionPeriod: Output<String>? = null

The duration in seconds that objects need to be retained. Retention duration must be greater than zero and less than 100 years. Note that enforcement of retention periods less than a day is not guaranteed. Such periods should only be used for testing purposes.