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



13865
13866
13867
13868
13869
13870
13871
13872
13873
13874
13875
13876
# File 'gems/aws-sdk-s3/lib/aws-sdk-s3/types.rb', line 13865

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.



13865
13866
13867
13868
13869
13870
13871
13872
13873
13874
13875
13876
# File 'gems/aws-sdk-s3/lib/aws-sdk-s3/types.rb', line 13865

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)


13865
13866
13867
13868
13869
13870
13871
13872
13873
13874
13875
13876
# File 'gems/aws-sdk-s3/lib/aws-sdk-s3/types.rb', line 13865

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.



13865
13866
13867
13868
13869
13870
13871
13872
13873
13874
13875
13876
# File 'gems/aws-sdk-s3/lib/aws-sdk-s3/types.rb', line 13865

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.



13865
13866
13867
13868
13869
13870
13871
13872
13873
13874
13875
13876
# File 'gems/aws-sdk-s3/lib/aws-sdk-s3/types.rb', line 13865

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)


13865
13866
13867
13868
13869
13870
13871
13872
13873
13874
13875
13876
# File 'gems/aws-sdk-s3/lib/aws-sdk-s3/types.rb', line 13865

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)


13865
13866
13867
13868
13869
13870
13871
13872
13873
13874
13875
13876
# File 'gems/aws-sdk-s3/lib/aws-sdk-s3/types.rb', line 13865

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:



13865
13866
13867
13868
13869
13870
13871
13872
13873
13874
13875
13876
# File 'gems/aws-sdk-s3/lib/aws-sdk-s3/types.rb', line 13865

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