class Aws::S3::Types::Rule

Specifies lifecycle rules for an Amazon S3 bucket. For more information, see [Put Bucket Lifecycle Configuration] in the *Amazon S3 API Reference*. For examples, see [Put Bucket Lifecycle Configuration Examples].

[1]: docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTlifecycle.html [2]: docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html#API_PutBucketLifecycleConfiguration_Examples

@note When making an API call, you may pass Rule

data as a hash:

    {
      expiration: {
        date: Time.now,
        days: 1,
        expired_object_delete_marker: false,
      },
      id: "ID",
      prefix: "Prefix", # required
      status: "Enabled", # required, accepts Enabled, Disabled
      transition: {
        date: Time.now,
        days: 1,
        storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
      },
      noncurrent_version_transition: {
        noncurrent_days: 1,
        storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
      },
      noncurrent_version_expiration: {
        noncurrent_days: 1,
      },
      abort_incomplete_multipart_upload: {
        days_after_initiation: 1,
      },
    }

@!attribute [rw] expiration

Specifies the expiration for the lifecycle of the object.
@return [Types::LifecycleExpiration]

@!attribute [rw] id

Unique identifier for the rule. The value can't be longer than 255
characters.
@return [String]

@!attribute [rw] prefix

Object key prefix that identifies one or more objects to which this
rule applies.

Replacement must be made for object keys containing special
characters (such as carriage returns) when using XML requests. For
more information, see [ XML related object key constraints][1].

[1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints
@return [String]

@!attribute [rw] status

If `Enabled`, the rule is currently being applied. If `Disabled`,
the rule is not currently being applied.
@return [String]

@!attribute [rw] transition

Specifies when an object transitions to a specified storage class.
For more information about Amazon S3 lifecycle configuration rules,
see [Transitioning Objects Using Amazon S3 Lifecycle][1] in the
*Amazon S3 User Guide*.

[1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/lifecycle-transition-general-considerations.html
@return [Types::Transition]

@!attribute [rw] noncurrent_version_transition

Container for the transition rule that describes when noncurrent
objects transition to the `STANDARD_IA`, `ONEZONE_IA`,
`INTELLIGENT_TIERING`, `GLACIER`, or `DEEP_ARCHIVE` storage class.
If your bucket is versioning-enabled (or versioning is suspended),
you can set this action to request that Amazon S3 transition
noncurrent object versions to the `STANDARD_IA`, `ONEZONE_IA`,
`INTELLIGENT_TIERING`, `GLACIER`, or `DEEP_ARCHIVE` storage class at
a specific period in the object's lifetime.
@return [Types::NoncurrentVersionTransition]

@!attribute [rw] noncurrent_version_expiration

Specifies when noncurrent object versions expire. Upon expiration,
Amazon S3 permanently deletes the noncurrent object versions. You
set this lifecycle configuration action on a bucket that has
versioning enabled (or suspended) to request that Amazon S3 delete
noncurrent object versions at a specific period in the object's
lifetime.
@return [Types::NoncurrentVersionExpiration]

@!attribute [rw] abort_incomplete_multipart_upload

Specifies the days since the initiation of an incomplete multipart
upload that Amazon S3 will wait before permanently removing all
parts of the upload. For more information, see [ Aborting Incomplete
Multipart Uploads Using a Bucket Lifecycle Policy][1] in the *Amazon
S3 User Guide*.

[1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config
@return [Types::AbortIncompleteMultipartUpload]

@see docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Rule AWS API Documentation

Constants

SENSITIVE