Class: Aws::S3::Types::Rule

Inherits:
Struct
  • Object
show all
Includes:
Aws::Structure
Defined in:
lib/aws-sdk-s3/types.rb

Overview

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,
  },
}

Specifies lifecycle rules for an Amazon S3 bucket. For more information, see [Put Bucket Lifecycle Configuration] in the *Amazon Simple Storage Service 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

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 will wait before permanently removing all parts of the upload. For more information, see [ Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle Policy] in the *Amazon Simple Storage Service Developer Guide*.

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



13547
13548
13549
13550
13551
13552
13553
13554
13555
13556
13557
13558
# File 'lib/aws-sdk-s3/types.rb', line 13547

class Rule < Struct.new(
  :expiration,
  :id,
  :prefix,
  :status,
  :transition,
  :noncurrent_version_transition,
  :noncurrent_version_expiration,
  :abort_incomplete_multipart_upload)
  SENSITIVE = []
  include Aws::Structure
end

#expirationTypes::LifecycleExpiration

Specifies the expiration for the lifecycle of the object.



13547
13548
13549
13550
13551
13552
13553
13554
13555
13556
13557
13558
# File 'lib/aws-sdk-s3/types.rb', line 13547

class Rule < Struct.new(
  :expiration,
  :id,
  :prefix,
  :status,
  :transition,
  :noncurrent_version_transition,
  :noncurrent_version_expiration,
  :abort_incomplete_multipart_upload)
  SENSITIVE = []
  include Aws::Structure
end

#idString

Unique identifier for the rule. The value can’t be longer than 255 characters.



13547
13548
13549
13550
13551
13552
13553
13554
13555
13556
13557
13558
# File 'lib/aws-sdk-s3/types.rb', line 13547

class Rule < Struct.new(
  :expiration,
  :id,
  :prefix,
  :status,
  :transition,
  :noncurrent_version_transition,
  :noncurrent_version_expiration,
  :abort_incomplete_multipart_upload)
  SENSITIVE = []
  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.



13547
13548
13549
13550
13551
13552
13553
13554
13555
13556
13557
13558
# File 'lib/aws-sdk-s3/types.rb', line 13547

class Rule < Struct.new(
  :expiration,
  :id,
  :prefix,
  :status,
  :transition,
  :noncurrent_version_transition,
  :noncurrent_version_expiration,
  :abort_incomplete_multipart_upload)
  SENSITIVE = []
  include Aws::Structure
end

#noncurrent_version_transitionTypes::NoncurrentVersionTransition

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.



13547
13548
13549
13550
13551
13552
13553
13554
13555
13556
13557
13558
# File 'lib/aws-sdk-s3/types.rb', line 13547

class Rule < Struct.new(
  :expiration,
  :id,
  :prefix,
  :status,
  :transition,
  :noncurrent_version_transition,
  :noncurrent_version_expiration,
  :abort_incomplete_multipart_upload)
  SENSITIVE = []
  include Aws::Structure
end

#prefixString

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



13547
13548
13549
13550
13551
13552
13553
13554
13555
13556
13557
13558
# File 'lib/aws-sdk-s3/types.rb', line 13547

class Rule < Struct.new(
  :expiration,
  :id,
  :prefix,
  :status,
  :transition,
  :noncurrent_version_transition,
  :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.



13547
13548
13549
13550
13551
13552
13553
13554
13555
13556
13557
13558
# File 'lib/aws-sdk-s3/types.rb', line 13547

class Rule < Struct.new(
  :expiration,
  :id,
  :prefix,
  :status,
  :transition,
  :noncurrent_version_transition,
  :noncurrent_version_expiration,
  :abort_incomplete_multipart_upload)
  SENSITIVE = []
  include Aws::Structure
end

#transitionTypes::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] in the *Amazon Simple Storage Service Developer Guide*.

[1]: docs.aws.amazon.com/AmazonS3/latest/dev/lifecycle-transition-general-considerations.html



13547
13548
13549
13550
13551
13552
13553
13554
13555
13556
13557
13558
# File 'lib/aws-sdk-s3/types.rb', line 13547

class Rule < Struct.new(
  :expiration,
  :id,
  :prefix,
  :status,
  :transition,
  :noncurrent_version_transition,
  :noncurrent_version_expiration,
  :abort_incomplete_multipart_upload)
  SENSITIVE = []
  include Aws::Structure
end