You are viewing documentation for version 3 of the AWS SDK for Ruby. Version 2 documentation can be found here.

Class: Aws::S3::Types::LifecycleRule

Inherits:
Struct
  • Object
show all
Defined in:
gems/aws-sdk-s3/lib/aws-sdk-s3/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",
  prefix: "Prefix",
  filter: {
    prefix: "Prefix",
    tag: {
      key: "ObjectKey", # required
      value: "Value", # required
    },
    and: {
      prefix: "Prefix",
      tags: [
        {
          key: "ObjectKey", # required
          value: "Value", # required
        },
      ],
    },
  },
  status: "Enabled", # required, accepts Enabled, Disabled
  transitions: [
    {
      date: Time.now,
      days: 1,
      storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA
    },
  ],
  noncurrent_version_transitions: [
    {
      noncurrent_days: 1,
      storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA
    },
  ],
  noncurrent_version_expiration: {
    noncurrent_days: 1,
  },
  abort_incomplete_multipart_upload: {
    days_after_initiation: 1,
  },
}

Instance Attribute Summary collapse

Instance Attribute Details

#abort_incomplete_multipart_uploadTypes::AbortIncompleteMultipartUpload

Specifies the days since the initiation of an Incomplete Multipart Upload that Lifecycle will wait before permanently removing all parts of the upload.



3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
# File 'gems/aws-sdk-s3/lib/aws-sdk-s3/types.rb', line 3744

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

#expirationTypes::LifecycleExpiration



3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
# File 'gems/aws-sdk-s3/lib/aws-sdk-s3/types.rb', line 3744

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

#filterTypes::LifecycleRuleFilter

The Filter is used to identify objects that a Lifecycle Rule applies to. A Filter must have exactly one of Prefix, Tag, or And specified.



3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
# File 'gems/aws-sdk-s3/lib/aws-sdk-s3/types.rb', line 3744

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

#idString

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

Returns:

  • (String)


3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
# File 'gems/aws-sdk-s3/lib/aws-sdk-s3/types.rb', line 3744

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

#noncurrent_version_expirationTypes::NoncurrentVersionExpiration

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.



3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
# File 'gems/aws-sdk-s3/lib/aws-sdk-s3/types.rb', line 3744

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

#noncurrent_version_transitionsArray<Types::NoncurrentVersionTransition>



3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
# File 'gems/aws-sdk-s3/lib/aws-sdk-s3/types.rb', line 3744

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

#prefixString

Prefix identifying one or more objects to which the rule applies. This is deprecated; use Filter instead.

Returns:

  • (String)


3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
# File 'gems/aws-sdk-s3/lib/aws-sdk-s3/types.rb', line 3744

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

#statusString

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

Returns:

  • (String)


3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
# File 'gems/aws-sdk-s3/lib/aws-sdk-s3/types.rb', line 3744

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

#transitionsArray<Types::Transition>

Returns:



3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
# File 'gems/aws-sdk-s3/lib/aws-sdk-s3/types.rb', line 3744

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