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, GLACIER_IR
  },
  noncurrent_version_transition: {
    noncurrent_days: 1,
    storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE, GLACIER_IR
    newer_noncurrent_versions: 1,
  },
  noncurrent_version_expiration: {
    noncurrent_days: 1,
    newer_noncurrent_versions: 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 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

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 S3 User Guide*.

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



15456
15457
15458
15459
15460
15461
15462
15463
15464
15465
15466
15467
# File 'lib/aws-sdk-s3/types.rb', line 15456

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.



15456
15457
15458
15459
15460
15461
15462
15463
15464
15465
15466
15467
# File 'lib/aws-sdk-s3/types.rb', line 15456

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.

Returns:

  • (String)


15456
15457
15458
15459
15460
15461
15462
15463
15464
15465
15466
15467
# File 'lib/aws-sdk-s3/types.rb', line 15456

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.



15456
15457
15458
15459
15460
15461
15462
15463
15464
15465
15466
15467
# File 'lib/aws-sdk-s3/types.rb', line 15456

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_IR`, `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_IR`, `GLACIER`, or `DEEP_ARCHIVE` storage class at a specific period in the object’s lifetime.



15456
15457
15458
15459
15460
15461
15462
15463
15464
15465
15466
15467
# File 'lib/aws-sdk-s3/types.rb', line 15456

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.

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]: docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints

Returns:

  • (String)


15456
15457
15458
15459
15460
15461
15462
15463
15464
15465
15466
15467
# File 'lib/aws-sdk-s3/types.rb', line 15456

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.

Returns:

  • (String)


15456
15457
15458
15459
15460
15461
15462
15463
15464
15465
15466
15467
# File 'lib/aws-sdk-s3/types.rb', line 15456

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 S3 User Guide*.

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

Returns:



15456
15457
15458
15459
15460
15461
15462
15463
15464
15465
15466
15467
# File 'lib/aws-sdk-s3/types.rb', line 15456

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