From 30737bbffb9a091c091e95525f690f4f1f578898 Mon Sep 17 00:00:00 2001 From: Richard Shade Date: Thu, 9 Jan 2025 16:18:22 -0600 Subject: [PATCH] Converting to BucketV2, fixes #1716 --- testing-integration-py/resource_s3.py | 8 ++++---- testing-integration-py/test_s3_it.py | 22 ++++++++++++++-------- testing-unit-ts/mocha/bucket_pair.ts | 8 ++++---- 3 files changed, 22 insertions(+), 16 deletions(-) diff --git a/testing-integration-py/resource_s3.py b/testing-integration-py/resource_s3.py index e07bc4a39..92d8fe9ed 100644 --- a/testing-integration-py/resource_s3.py +++ b/testing-integration-py/resource_s3.py @@ -1,14 +1,14 @@ import pulumi from pulumi_aws import s3 -BUCKET_NAME = 'pulumi-it-bucket' -OUTPUT_KEY_BUCKET_NAME = 'bucket_name' -OUTPUT_KEY_REGION = 'region' +BUCKET_NAME = "pulumi-it-bucket" +OUTPUT_KEY_BUCKET_NAME = "bucket_name" +OUTPUT_KEY_REGION = "region" def create_s3_bucket(): # Create an AWS resource (S3 Bucket) - bucket = s3.Bucket(BUCKET_NAME) + bucket = s3.BucketV2(BUCKET_NAME) # Export the value of the bucket pulumi.export(OUTPUT_KEY_BUCKET_NAME, bucket.bucket) diff --git a/testing-integration-py/test_s3_it.py b/testing-integration-py/test_s3_it.py index 804c4baa3..08b560689 100644 --- a/testing-integration-py/test_s3_it.py +++ b/testing-integration-py/test_s3_it.py @@ -11,16 +11,18 @@ class TestS3(unittest.TestCase): @classmethod def setUpClass(cls) -> None: - cls.STACK_NAME = 'staging' - cls.REGION_NAME = 'eu-north-1' + cls.STACK_NAME = "staging" + cls.REGION_NAME = "eu-north-1" cls.WORK_DIR = os.path.join(os.path.dirname(__file__)) - cls.FILE_NAME = 'bucket.txt' + cls.FILE_NAME = "bucket.txt" - cls.stack = auto.create_or_select_stack(stack_name=cls.STACK_NAME, work_dir=cls.WORK_DIR) + cls.stack = auto.create_or_select_stack( + stack_name=cls.STACK_NAME, work_dir=cls.WORK_DIR + ) cls.stack.set_config("aws:region", auto.ConfigValue(value=cls.REGION_NAME)) cls.stack.up(on_output=print) cls.outputs = cls.stack.outputs() - cls.s3 = boto3.resource('s3') + cls.s3 = boto3.resource("s3") @classmethod def tearDownClass(cls) -> None: @@ -45,14 +47,18 @@ def test_s3_exist(self): def test_s3_create_permission(self): output_bucket_name = self.outputs.get(OUTPUT_KEY_BUCKET_NAME).value - created_response = self.s3.Bucket(output_bucket_name).put_object(Key=self.FILE_NAME, Body='Hi') + created_response = self.s3.Bucket(output_bucket_name).put_object( + Key=self.FILE_NAME, Body="Hi" + ) self.assertEqual(created_response.key, self.FILE_NAME) def test_s3_delete_permission(self): output_bucket_name = self.outputs.get(OUTPUT_KEY_BUCKET_NAME).value - delete_response = self.s3.meta.client.delete_object(Bucket=output_bucket_name, Key=self.FILE_NAME) + delete_response = self.s3.meta.client.delete_object( + Bucket=output_bucket_name, Key=self.FILE_NAME + ) self.assertIsNotNone(delete_response) -if __name__ == '__main__': +if __name__ == "__main__": unittest.main() diff --git a/testing-unit-ts/mocha/bucket_pair.ts b/testing-unit-ts/mocha/bucket_pair.ts index 10cf2d75a..2629dcb09 100644 --- a/testing-unit-ts/mocha/bucket_pair.ts +++ b/testing-unit-ts/mocha/bucket_pair.ts @@ -3,17 +3,17 @@ import * as pulumi from "@pulumi/pulumi"; export class BucketPair extends pulumi.ComponentResource { - contentBucket: aws.s3.Bucket; - logsBucket: aws.s3.Bucket; + contentBucket: aws.s3.BucketV2; + logsBucket: aws.s3.BucketV2; constructor(contentBucketName: string, logsBucketName: string, opts: any) { super("pulumi:examples:BucketPair", "BucketPair", {}, opts); - this.contentBucket = new aws.s3.Bucket("contentBucket", { + this.contentBucket = new aws.s3.BucketV2("contentBucket", { bucket: contentBucketName, }, { parent: this }); - this.logsBucket = new aws.s3.Bucket("logsBucket", { + this.logsBucket = new aws.s3.BucketV2("logsBucket", { bucket: logsBucketName, }, { parent: this });