Class: Aws::S3Control::Types::LifecycleRule

Inherits:
Struct
  • Object
show all
Defined in:
gems/aws-sdk-s3control/lib/aws-sdk-s3control/types.rb

Overview

Note:

When making an API call, you may pass LifecycleRule data as a hash:

{
  expiration: {
    date: Time.now,
    days: 1,
    expired_object_delete_marker: false,
  },
  id: "ID",
  filter: {
    prefix: "Prefix",
    tag: {
      key: "TagKeyString", # required
      value: "TagValueString", # required
    },
    and: {
      prefix: "Prefix",
      tags: [
        {
          key: "TagKeyString", # required
          value: "TagValueString", # required
        },
      ],
    },
  },
  status: "Enabled", # required, accepts Enabled, Disabled
  transitions: [
    {
      date: Time.now,
      days: 1,
      storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
    },
  ],
  noncurrent_version_transitions: [
    {
      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,
  },
}

The container for the Outposts bucket lifecycle rule.

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#abort_incomplete_multipart_uploadTypes::AbortIncompleteMultipartUpload

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



3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616
3617
# File 'gems/aws-sdk-s3control/lib/aws-sdk-s3control/types.rb', line 3606

class LifecycleRule < Struct.new(
  :expiration,
  :id,
  :filter,
  :status,
  :transitions,
  :noncurrent_version_transitions,
  :noncurrent_version_expiration,
  :abort_incomplete_multipart_upload)
  SENSITIVE = []
  include Aws::Structure
end

#expirationTypes::LifecycleExpiration

Specifies the expiration for the lifecycle of the object in the form of date, days and, whether the object has a delete marker.



3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616
3617
# File 'gems/aws-sdk-s3control/lib/aws-sdk-s3control/types.rb', line 3606

class LifecycleRule < Struct.new(
  :expiration,
  :id,
  :filter,
  :status,
  :transitions,
  :noncurrent_version_transitions,
  :noncurrent_version_expiration,
  :abort_incomplete_multipart_upload)
  SENSITIVE = []
  include Aws::Structure
end

#filterTypes::LifecycleRuleFilter

The container for the filter of lifecycle rule.



3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616
3617
# File 'gems/aws-sdk-s3control/lib/aws-sdk-s3control/types.rb', line 3606

class LifecycleRule < Struct.new(
  :expiration,
  :id,
  :filter,
  :status,
  :transitions,
  :noncurrent_version_transitions,
  :noncurrent_version_expiration,
  :abort_incomplete_multipart_upload)
  SENSITIVE = []
  include Aws::Structure
end

#idString

Unique identifier for the rule. The value cannot be longer than 255 characters.

Returns:

  • (String)


3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616
3617
# File 'gems/aws-sdk-s3control/lib/aws-sdk-s3control/types.rb', line 3606

class LifecycleRule < Struct.new(
  :expiration,
  :id,
  :filter,
  :status,
  :transitions,
  :noncurrent_version_transitions,
  :noncurrent_version_expiration,
  :abort_incomplete_multipart_upload)
  SENSITIVE = []
  include Aws::Structure
end

#noncurrent_version_expirationTypes::NoncurrentVersionExpiration

The noncurrent version expiration of the lifecycle rule.

This is not supported by Amazon S3 on Outposts buckets.



3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616
3617
# File 'gems/aws-sdk-s3control/lib/aws-sdk-s3control/types.rb', line 3606

class LifecycleRule < Struct.new(
  :expiration,
  :id,
  :filter,
  :status,
  :transitions,
  :noncurrent_version_transitions,
  :noncurrent_version_expiration,
  :abort_incomplete_multipart_upload)
  SENSITIVE = []
  include Aws::Structure
end

#noncurrent_version_transitionsArray<Types::NoncurrentVersionTransition>

Specifies the transition rule for the lifecycle rule that describes when noncurrent objects transition to a specific 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 a specific storage class at a set period in the object's lifetime.

This is not supported by Amazon S3 on Outposts buckets.



3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616
3617
# File 'gems/aws-sdk-s3control/lib/aws-sdk-s3control/types.rb', line 3606

class LifecycleRule < Struct.new(
  :expiration,
  :id,
  :filter,
  :status,
  :transitions,
  :noncurrent_version_transitions,
  :noncurrent_version_expiration,
  :abort_incomplete_multipart_upload)
  SENSITIVE = []
  include Aws::Structure
end

#statusString

If 'Enabled', the rule is currently being applied. If 'Disabled', the rule is not currently being applied.

Returns:

  • (String)


3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616
3617
# File 'gems/aws-sdk-s3control/lib/aws-sdk-s3control/types.rb', line 3606

class LifecycleRule < Struct.new(
  :expiration,
  :id,
  :filter,
  :status,
  :transitions,
  :noncurrent_version_transitions,
  :noncurrent_version_expiration,
  :abort_incomplete_multipart_upload)
  SENSITIVE = []
  include Aws::Structure
end

#transitionsArray<Types::Transition>

Specifies when an Amazon S3 object transitions to a specified storage class.

This is not supported by Amazon S3 on Outposts buckets.

Returns:



3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616
3617
# File 'gems/aws-sdk-s3control/lib/aws-sdk-s3control/types.rb', line 3606

class LifecycleRule < Struct.new(
  :expiration,
  :id,
  :filter,
  :status,
  :transitions,
  :noncurrent_version_transitions,
  :noncurrent_version_expiration,
  :abort_incomplete_multipart_upload)
  SENSITIVE = []
  include Aws::Structure
end