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

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 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.

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.



13928
13929
13930
13931
13932
13933
13934
13935
13936
13937
13938
13939
# File 'gems/aws-sdk-s3/lib/aws-sdk-s3/types.rb', line 13928

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.



13928
13929
13930
13931
13932
13933
13934
13935
13936
13937
13938
13939
# File 'gems/aws-sdk-s3/lib/aws-sdk-s3/types.rb', line 13928

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)


13928
13929
13930
13931
13932
13933
13934
13935
13936
13937
13938
13939
# File 'gems/aws-sdk-s3/lib/aws-sdk-s3/types.rb', line 13928

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.



13928
13929
13930
13931
13932
13933
13934
13935
13936
13937
13938
13939
# File 'gems/aws-sdk-s3/lib/aws-sdk-s3/types.rb', line 13928

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.



13928
13929
13930
13931
13932
13933
13934
13935
13936
13937
13938
13939
# File 'gems/aws-sdk-s3/lib/aws-sdk-s3/types.rb', line 13928

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.

Returns:

  • (String)


13928
13929
13930
13931
13932
13933
13934
13935
13936
13937
13938
13939
# File 'gems/aws-sdk-s3/lib/aws-sdk-s3/types.rb', line 13928

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)


13928
13929
13930
13931
13932
13933
13934
13935
13936
13937
13938
13939
# File 'gems/aws-sdk-s3/lib/aws-sdk-s3/types.rb', line 13928

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.

Returns:



13928
13929
13930
13931
13932
13933
13934
13935
13936
13937
13938
13939
# File 'gems/aws-sdk-s3/lib/aws-sdk-s3/types.rb', line 13928

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