class Aws::S3Control::Types::JobOperation
The operation that you want this job to perform on every object listed in the manifest. For more information about the available operations, see [Operations] in the *Amazon S3 User Guide*.
[1]: docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-operations.html
@note When making an API call, you may pass JobOperation
data as a hash: { lambda_invoke: { function_arn: "FunctionArnString", }, s3_put_object_copy: { target_resource: "S3BucketArnString", canned_access_control_list: "private", # accepts private, public-read, public-read-write, aws-exec-read, authenticated-read, bucket-owner-read, bucket-owner-full-control access_control_grants: [ { grantee: { type_identifier: "id", # accepts id, emailAddress, uri identifier: "NonEmptyMaxLength1024String", display_name: "NonEmptyMaxLength1024String", }, permission: "FULL_CONTROL", # accepts FULL_CONTROL, READ, WRITE, READ_ACP, WRITE_ACP }, ], metadata_directive: "COPY", # accepts COPY, REPLACE modified_since_constraint: Time.now, new_object_metadata: { cache_control: "NonEmptyMaxLength1024String", content_disposition: "NonEmptyMaxLength1024String", content_encoding: "NonEmptyMaxLength1024String", content_language: "NonEmptyMaxLength1024String", user_metadata: { "NonEmptyMaxLength1024String" => "MaxLength1024String", }, content_length: 1, content_md5: "NonEmptyMaxLength1024String", content_type: "NonEmptyMaxLength1024String", http_expires_date: Time.now, requester_charged: false, sse_algorithm: "AES256", # accepts AES256, KMS }, new_object_tagging: [ { key: "TagKeyString", # required value: "TagValueString", # required }, ], redirect_location: "NonEmptyMaxLength2048String", requester_pays: false, storage_class: "STANDARD", # accepts STANDARD, STANDARD_IA, ONEZONE_IA, GLACIER, INTELLIGENT_TIERING, DEEP_ARCHIVE un_modified_since_constraint: Time.now, sse_aws_kms_key_id: "KmsKeyArnString", target_key_prefix: "NonEmptyMaxLength1024String", object_lock_legal_hold_status: "OFF", # accepts OFF, ON object_lock_mode: "COMPLIANCE", # accepts COMPLIANCE, GOVERNANCE object_lock_retain_until_date: Time.now, bucket_key_enabled: false, }, s3_put_object_acl: { access_control_policy: { access_control_list: { owner: { # required id: "NonEmptyMaxLength1024String", display_name: "NonEmptyMaxLength1024String", }, grants: [ { grantee: { type_identifier: "id", # accepts id, emailAddress, uri identifier: "NonEmptyMaxLength1024String", display_name: "NonEmptyMaxLength1024String", }, permission: "FULL_CONTROL", # accepts FULL_CONTROL, READ, WRITE, READ_ACP, WRITE_ACP }, ], }, canned_access_control_list: "private", # accepts private, public-read, public-read-write, aws-exec-read, authenticated-read, bucket-owner-read, bucket-owner-full-control }, }, s3_put_object_tagging: { tag_set: [ { key: "TagKeyString", # required value: "TagValueString", # required }, ], }, s3_delete_object_tagging: { }, s3_initiate_restore_object: { expiration_in_days: 1, glacier_job_tier: "BULK", # accepts BULK, STANDARD }, s3_put_object_legal_hold: { legal_hold: { # required status: "OFF", # required, accepts OFF, ON }, }, s3_put_object_retention: { bypass_governance_retention: false, retention: { # required retain_until_date: Time.now, mode: "COMPLIANCE", # accepts COMPLIANCE, GOVERNANCE }, }, }
@!attribute [rw] lambda_invoke
Directs the specified job to invoke an Lambda function on every object in the manifest. @return [Types::LambdaInvokeOperation]
@!attribute [rw] s3_put_object_copy
Directs the specified job to run a PUT Copy object call on every object in the manifest. @return [Types::S3CopyObjectOperation]
@!attribute [rw] s3_put_object_acl
Directs the specified job to run a PUT Object acl call on every object in the manifest. @return [Types::S3SetObjectAclOperation]
@!attribute [rw] s3_put_object_tagging
Directs the specified job to run a PUT Object tagging call on every object in the manifest. @return [Types::S3SetObjectTaggingOperation]
@!attribute [rw] s3_delete_object_tagging
Directs the specified job to execute a DELETE Object tagging call on every object in the manifest. @return [Types::S3DeleteObjectTaggingOperation]
@!attribute [rw] s3_initiate_restore_object
Directs the specified job to initiate restore requests for every archived object in the manifest. @return [Types::S3InitiateRestoreObjectOperation]
@!attribute [rw] s3_put_object_legal_hold
Contains the configuration for an S3 Object Lock legal hold operation that an S3 Batch Operations job passes every object to the underlying `PutObjectLegalHold` API. For more information, see [Using S3 Object Lock legal hold with S3 Batch Operations][1] in the *Amazon S3 User Guide*. [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-legal-hold.html @return [Types::S3SetObjectLegalHoldOperation]
@!attribute [rw] s3_put_object_retention
Contains the configuration parameters for the Object Lock retention action for an S3 Batch Operations job. Batch Operations passes every object to the underlying `PutObjectRetention` API. For more information, see [Using S3 Object Lock retention with S3 Batch Operations][1] in the *Amazon S3 User Guide*. [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-retention-date.html @return [Types::S3SetObjectRetentionOperation]
@see docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/JobOperation AWS API Documentation
Constants
- SENSITIVE