scenarios/basics/s3/README.md
This scenario demonstrates how to use the AWS SDK to interact with Amazon Simple Storage Service (S3) using AWS Batch. The scenario covers various operations such as creating a batch job, modifying the job, and adding additional tags to the job.
To successfully run this basic scenario, the program requires an IAM (Identity and Access Management) role. However, the program creates the IAM role by using an AWS CloudFormation template.
The program performs the following tasks:
Create Batch Job:
CreateJobDescribe Batch Job:
DescribeJobDescribe the tags associated with the job:
getJobTaggingUpdate Batch Job Tags:
putJobTaggingList Batch Jobs:
listJobsUpdate an existing S3 Batch Operations job's priority:
updateJobPriorityupdateJobStatusdeleteJobTaggingS3BatchScenario class.The provided code demonstrates the following key features of the AWS SDK and the S3 Batch functionality:
User Interaction: The program begins with a user prompt to provide the AWS account ID and continues to interact with the user for input to proceed with various steps of the scenario.
Resource Setup: It uses AWS CloudFormation to set up necessary resources, such as an IAM role required for S3 Batch operations.
Bucket Operations: Creates an S3 bucket and uploads required files, including a manifest file listing the objects for the batch job.
Job Creation: Creates an S3 Batch job to tag objects listed in the manifest file with specific tags.
Job Priority Update: Modifies the priority of the created S3 Batch job.
Job Cancellation: Provides the option to cancel the S3 Batch job based on user input.
Job Description: Retrieves and displays details of the created S3 Batch job.
Job Tag Description: Retrieves and displays tags associated with the S3 Batch job.
Job Tag Update: Updates the tags of the S3 Batch job.
List Batch Jobs: Lists all batch jobs in the account.
Delete Job Tags: Provides the option to delete the tags associated with the S3 Batch job.
Cleanup Resources: Provides the option to delete the created S3 bucket, its contents, and the CloudFormation stack to clean up resources used in the scenario.