Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove ALL leading '/'s when destroying aws_s3_bucket_object resource #7584

Merged
merged 4 commits into from
Feb 12, 2021

Conversation

ewbankkit
Copy link
Contributor

Fixes #7583.
Acceptance tests:

$ make testacc TEST=./aws/ TESTARGS='-run=TestAccAWSS3BucketObject_'==> Checking that code complies with gofmt requirements...
TF_ACC=1 go test ./aws/ -v -parallel 20 -run=TestAccAWSS3BucketObject_ -timeout 120m
=== RUN   TestAccAWSS3BucketObject_source
=== PAUSE TestAccAWSS3BucketObject_source
=== RUN   TestAccAWSS3BucketObject_content
=== PAUSE TestAccAWSS3BucketObject_content
=== RUN   TestAccAWSS3BucketObject_contentBase64
=== PAUSE TestAccAWSS3BucketObject_contentBase64
=== RUN   TestAccAWSS3BucketObject_withContentCharacteristics
=== PAUSE TestAccAWSS3BucketObject_withContentCharacteristics
=== RUN   TestAccAWSS3BucketObject_updates
=== PAUSE TestAccAWSS3BucketObject_updates
=== RUN   TestAccAWSS3BucketObject_updatesWithVersioning
=== PAUSE TestAccAWSS3BucketObject_updatesWithVersioning
=== RUN   TestAccAWSS3BucketObject_kms
=== PAUSE TestAccAWSS3BucketObject_kms
=== RUN   TestAccAWSS3BucketObject_sse
=== PAUSE TestAccAWSS3BucketObject_sse
=== RUN   TestAccAWSS3BucketObject_acl
=== PAUSE TestAccAWSS3BucketObject_acl
=== RUN   TestAccAWSS3BucketObject_storageClass
=== PAUSE TestAccAWSS3BucketObject_storageClass
=== RUN   TestAccAWSS3BucketObject_tags
=== PAUSE TestAccAWSS3BucketObject_tags
=== RUN   TestAccAWSS3BucketObject_tagsLeadingSingleSlash
=== PAUSE TestAccAWSS3BucketObject_tagsLeadingSingleSlash
=== RUN   TestAccAWSS3BucketObject_tagsLeadingMultipleSlashes
=== PAUSE TestAccAWSS3BucketObject_tagsLeadingMultipleSlashes
=== CONT  TestAccAWSS3BucketObject_source
=== CONT  TestAccAWSS3BucketObject_tagsLeadingMultipleSlashes
=== CONT  TestAccAWSS3BucketObject_tagsLeadingSingleSlash
=== CONT  TestAccAWSS3BucketObject_tags
=== CONT  TestAccAWSS3BucketObject_storageClass
=== CONT  TestAccAWSS3BucketObject_acl
=== CONT  TestAccAWSS3BucketObject_sse
=== CONT  TestAccAWSS3BucketObject_kms
=== CONT  TestAccAWSS3BucketObject_updatesWithVersioning
=== CONT  TestAccAWSS3BucketObject_updates
=== CONT  TestAccAWSS3BucketObject_withContentCharacteristics
=== CONT  TestAccAWSS3BucketObject_contentBase64
=== CONT  TestAccAWSS3BucketObject_content
--- PASS: TestAccAWSS3BucketObject_source (33.38s)
--- PASS: TestAccAWSS3BucketObject_withContentCharacteristics (33.74s)
--- PASS: TestAccAWSS3BucketObject_contentBase64 (34.83s)
--- PASS: TestAccAWSS3BucketObject_content (35.10s)
--- PASS: TestAccAWSS3BucketObject_sse (35.16s)
--- PASS: TestAccAWSS3BucketObject_updatesWithVersioning (54.79s)
--- PASS: TestAccAWSS3BucketObject_updates (55.21s)
--- PASS: TestAccAWSS3BucketObject_kms (57.66s)
--- PASS: TestAccAWSS3BucketObject_acl (80.32s)
--- PASS: TestAccAWSS3BucketObject_tagsLeadingMultipleSlashes (100.98s)
--- PASS: TestAccAWSS3BucketObject_storageClass (101.12s)
--- PASS: TestAccAWSS3BucketObject_tagsLeadingSingleSlash (101.38s)
--- PASS: TestAccAWSS3BucketObject_tags (102.20s)
PASS
ok  	github.com/terraform-providers/terraform-provider-aws/aws	102.224s

@ghost ghost added size/M Managed by automation to categorize the size of a PR. service/s3 Issues and PRs that pertain to the s3 service. tests PRs: expanded test coverage. Issues: expanded coverage, enhancements to test infrastructure. labels Feb 15, 2019
@ewbankkit
Copy link
Contributor Author

Without the fix the new test case (multiple leading /s) fails:

$ make testacc TEST=./aws/ TESTARGS='-run=TestAccAWSS3BucketObject_tagsLeadingMultipleSlashes'
==> Checking that code complies with gofmt requirements...
TF_ACC=1 go test ./aws/ -v -parallel 20 -run=TestAccAWSS3BucketObject_tagsLeadingMultipleSlashes -timeout 120m
=== RUN   TestAccAWSS3BucketObject_tagsLeadingMultipleSlashes
=== PAUSE TestAccAWSS3BucketObject_tagsLeadingMultipleSlashes
=== CONT  TestAccAWSS3BucketObject_tagsLeadingMultipleSlashes
--- FAIL: TestAccAWSS3BucketObject_tagsLeadingMultipleSlashes (22.21s)
    testing.go:538: Step 0 error: After applying this step, the plan was not empty:
        
        DIFF:
        
        UPDATE: aws_s3_bucket.object_bucket
          versioning.0.enabled: "false" => "true"
        
        STATE:
        
        aws_s3_bucket.object_bucket:
          ID = tf-object-test-bucket-926427732731469703
          provider = provider.aws
          acceleration_status = 
          acl = private
          arn = arn:aws:s3:::tf-object-test-bucket-926427732731469703
          bucket = tf-object-test-bucket-926427732731469703
          bucket_domain_name = tf-object-test-bucket-926427732731469703.s3.amazonaws.com
          bucket_regional_domain_name = tf-object-test-bucket-926427732731469703.s3.us-west-2.amazonaws.com
          cors_rule.# = 0
          force_destroy = false
          hosted_zone_id = Z3BJ6K6RIION7M
          lifecycle_rule.# = 0
          logging.# = 0
          object_lock_configuration.# = 0
          region = us-west-2
          replication_configuration.# = 0
          request_payer = BucketOwner
          server_side_encryption_configuration.# = 0
          tags.% = 0
          versioning.# = 1
          versioning.0.enabled = false
          versioning.0.mfa_delete = false
          website.# = 0
        aws_s3_bucket_object.object:
          ID = /////test-key
          provider = provider.aws
          acl = private
          bucket = tf-object-test-bucket-926427732731469703
          cache_control = 
          content = stuff
          content_disposition = 
          content_encoding = 
          content_language = 
          content_type = binary/octet-stream
          etag = c13d88cb4cb02003daedb8a84e5d272a
          key = /////test-key
          server_side_encryption = 
          storage_class = STANDARD
          tags.% = 3
          tags.Key1 = AAA
          tags.Key2 = BBB
          tags.Key3 = CCC
          version_id = OE4XcZtAOTf.lHaIoEbDNof9doXFNq_M
          website_redirect = 
        
          Dependencies:
            aws_s3_bucket.object_bucket
    testing.go:599: Error destroying resource! WARNING: Dangling resources
        may exist. The full state and error is shown below.
        
        Error: Error applying: 1 error occurred:
        	* aws_s3_bucket.object_bucket (destroy): 1 error occurred:
        	* aws_s3_bucket.object_bucket: error deleting S3 Bucket (tf-object-test-bucket-926427732731469703): BucketNotEmpty: The bucket you tried to delete is not empty. You must delete all versions in the bucket.
        	status code: 409, request id: 249E3D6013695F97, host id: 0KadprvwsNt0GMz38CNh5cPNOwfmfTQZG8vkB355xNIJOyq+smI8iTeo53Bl1+HijO6h6eFY56s=
        
        
        
        
        
        State: aws_s3_bucket.object_bucket:
          ID = tf-object-test-bucket-926427732731469703
          provider = provider.aws
          acceleration_status = 
          acl = private
          arn = arn:aws:s3:::tf-object-test-bucket-926427732731469703
          bucket = tf-object-test-bucket-926427732731469703
          bucket_domain_name = tf-object-test-bucket-926427732731469703.s3.amazonaws.com
          bucket_regional_domain_name = tf-object-test-bucket-926427732731469703.s3.us-west-2.amazonaws.com
          cors_rule.# = 0
          force_destroy = false
          hosted_zone_id = Z3BJ6K6RIION7M
          lifecycle_rule.# = 0
          logging.# = 0
          object_lock_configuration.# = 0
          region = us-west-2
          replication_configuration.# = 0
          request_payer = BucketOwner
          server_side_encryption_configuration.# = 0
          tags.% = 0
          versioning.# = 1
          versioning.0.enabled = true
          versioning.0.mfa_delete = false
          website.# = 0
FAIL
FAIL	github.com/terraform-providers/terraform-provider-aws/aws	22.224s

@ewbankkit
Copy link
Contributor Author

Handle the fact that multiple /s inside or at the end of a key name are compressed to a single /.
Acceptance tests:

$ make testacc TEST=./aws/ TESTARGS='-run=TestAccAWSS3BucketObject_'
==> Checking that code complies with gofmt requirements...
TF_ACC=1 go test ./aws/ -v -parallel 5 -run=TestAccAWSS3BucketObject_ -timeout 120m
=== RUN   TestAccAWSS3BucketObject_source
=== PAUSE TestAccAWSS3BucketObject_source
=== RUN   TestAccAWSS3BucketObject_content
=== PAUSE TestAccAWSS3BucketObject_content
=== RUN   TestAccAWSS3BucketObject_contentBase64
=== PAUSE TestAccAWSS3BucketObject_contentBase64
=== RUN   TestAccAWSS3BucketObject_withContentCharacteristics
=== PAUSE TestAccAWSS3BucketObject_withContentCharacteristics
=== RUN   TestAccAWSS3BucketObject_updates
=== PAUSE TestAccAWSS3BucketObject_updates
=== RUN   TestAccAWSS3BucketObject_updatesWithVersioning
=== PAUSE TestAccAWSS3BucketObject_updatesWithVersioning
=== RUN   TestAccAWSS3BucketObject_kms
=== PAUSE TestAccAWSS3BucketObject_kms
=== RUN   TestAccAWSS3BucketObject_sse
=== PAUSE TestAccAWSS3BucketObject_sse
=== RUN   TestAccAWSS3BucketObject_acl
=== PAUSE TestAccAWSS3BucketObject_acl
=== RUN   TestAccAWSS3BucketObject_storageClass
=== PAUSE TestAccAWSS3BucketObject_storageClass
=== RUN   TestAccAWSS3BucketObject_tags
=== PAUSE TestAccAWSS3BucketObject_tags
=== RUN   TestAccAWSS3BucketObject_tagsLeadingSingleSlash
=== PAUSE TestAccAWSS3BucketObject_tagsLeadingSingleSlash
=== RUN   TestAccAWSS3BucketObject_tagsLeadingMultipleSlashes
=== PAUSE TestAccAWSS3BucketObject_tagsLeadingMultipleSlashes
=== RUN   TestAccAWSS3BucketObject_tagsMultipleSlashes
=== PAUSE TestAccAWSS3BucketObject_tagsMultipleSlashes
=== CONT  TestAccAWSS3BucketObject_source
=== CONT  TestAccAWSS3BucketObject_acl
=== CONT  TestAccAWSS3BucketObject_tagsLeadingMultipleSlashes
=== CONT  TestAccAWSS3BucketObject_tagsMultipleSlashes
=== CONT  TestAccAWSS3BucketObject_kms
=== CONT  TestAccAWSS3BucketObject_sse
--- PASS: TestAccAWSS3BucketObject_source (33.52s)
--- PASS: TestAccAWSS3BucketObject_kms (57.56s)
=== CONT  TestAccAWSS3BucketObject_tags
--- PASS: TestAccAWSS3BucketObject_sse (33.17s)
=== CONT  TestAccAWSS3BucketObject_tagsLeadingSingleSlash
--- PASS: TestAccAWSS3BucketObject_acl (80.31s)
=== CONT  TestAccAWSS3BucketObject_updatesWithVersioning
--- PASS: TestAccAWSS3BucketObject_tagsLeadingMultipleSlashes (102.69s)
=== CONT  TestAccAWSS3BucketObject_storageClass
--- PASS: TestAccAWSS3BucketObject_tagsMultipleSlashes (104.39s)
=== CONT  TestAccAWSS3BucketObject_contentBase64
--- PASS: TestAccAWSS3BucketObject_updatesWithVersioning (56.07s)
=== CONT  TestAccAWSS3BucketObject_withContentCharacteristics
--- PASS: TestAccAWSS3BucketObject_contentBase64 (32.43s)
=== CONT  TestAccAWSS3BucketObject_content
--- PASS: TestAccAWSS3BucketObject_tags (101.67s)
=== CONT  TestAccAWSS3BucketObject_updates
--- PASS: TestAccAWSS3BucketObject_tagsLeadingSingleSlash (100.73s)
--- PASS: TestAccAWSS3BucketObject_withContentCharacteristics (32.21s)
--- PASS: TestAccAWSS3BucketObject_content (31.75s)
--- PASS: TestAccAWSS3BucketObject_storageClass (99.98s)
--- PASS: TestAccAWSS3BucketObject_updates (55.21s)
PASS
ok  	github.com/terraform-providers/terraform-provider-aws/aws	214.491s

@aeschright aeschright requested a review from a team June 26, 2019 00:48
@ewbankkit
Copy link
Contributor Author

Rebased to remove conflict.
Re-ran acceptance tests:

$ make testacc TEST=./aws/ TESTARGS='-run=TestAccAWSS3BucketObject_tags'
==> Checking that code complies with gofmt requirements...
TF_ACC=1 go test ./aws/ -v -count 1 -parallel 5 -run=TestAccAWSS3BucketObject_tags -timeout 120m
go: finding github.com/terraform-providers/terraform-provider-tls v2.1.1+incompatible
go: finding github.com/terraform-providers/terraform-provider-tls v2.1.1+incompatible
=== RUN   TestAccAWSS3BucketObject_tags
=== PAUSE TestAccAWSS3BucketObject_tags
=== RUN   TestAccAWSS3BucketObject_tagsLeadingSingleSlash
=== PAUSE TestAccAWSS3BucketObject_tagsLeadingSingleSlash
=== RUN   TestAccAWSS3BucketObject_tagsLeadingMultipleSlashes
=== PAUSE TestAccAWSS3BucketObject_tagsLeadingMultipleSlashes
=== RUN   TestAccAWSS3BucketObject_tagsMultipleSlashes
=== PAUSE TestAccAWSS3BucketObject_tagsMultipleSlashes
=== CONT  TestAccAWSS3BucketObject_tags
=== CONT  TestAccAWSS3BucketObject_tagsMultipleSlashes
=== CONT  TestAccAWSS3BucketObject_tagsLeadingMultipleSlashes
=== CONT  TestAccAWSS3BucketObject_tagsLeadingSingleSlash
--- PASS: TestAccAWSS3BucketObject_tagsLeadingMultipleSlashes (102.69s)
--- PASS: TestAccAWSS3BucketObject_tags (103.32s)
--- PASS: TestAccAWSS3BucketObject_tagsLeadingSingleSlash (103.88s)
--- PASS: TestAccAWSS3BucketObject_tagsMultipleSlashes (103.96s)
PASS
ok  	github.com/terraform-providers/terraform-provider-aws/aws	104.001s

@ewbankkit
Copy link
Contributor Author

Rebased to include changes from #10388.

$ make testacc TEST=./aws/ TESTARGS='-run=TestAccAWSS3BucketObject_'
==> Checking that code complies with gofmt requirements...
TF_ACC=1 go test ./aws/ -v -count 1 -parallel 2 -run=TestAccAWSS3BucketObject_ -timeout 120m
go: finding github.com/terraform-providers/terraform-provider-tls v2.1.1+incompatible
go: finding github.com/terraform-providers/terraform-provider-tls v2.1.1+incompatible
=== RUN   TestAccAWSS3BucketObject_noNameNoKey
=== PAUSE TestAccAWSS3BucketObject_noNameNoKey
=== RUN   TestAccAWSS3BucketObject_empty
=== PAUSE TestAccAWSS3BucketObject_empty
=== RUN   TestAccAWSS3BucketObject_source
=== PAUSE TestAccAWSS3BucketObject_source
=== RUN   TestAccAWSS3BucketObject_content
=== PAUSE TestAccAWSS3BucketObject_content
=== RUN   TestAccAWSS3BucketObject_etagEncryption
=== PAUSE TestAccAWSS3BucketObject_etagEncryption
=== RUN   TestAccAWSS3BucketObject_contentBase64
=== PAUSE TestAccAWSS3BucketObject_contentBase64
=== RUN   TestAccAWSS3BucketObject_withContentCharacteristics
=== PAUSE TestAccAWSS3BucketObject_withContentCharacteristics
=== RUN   TestAccAWSS3BucketObject_NonVersioned
=== PAUSE TestAccAWSS3BucketObject_NonVersioned
=== RUN   TestAccAWSS3BucketObject_updates
=== PAUSE TestAccAWSS3BucketObject_updates
=== RUN   TestAccAWSS3BucketObject_updateSameFile
=== PAUSE TestAccAWSS3BucketObject_updateSameFile
=== RUN   TestAccAWSS3BucketObject_updatesWithVersioning
=== PAUSE TestAccAWSS3BucketObject_updatesWithVersioning
=== RUN   TestAccAWSS3BucketObject_kms
=== PAUSE TestAccAWSS3BucketObject_kms
=== RUN   TestAccAWSS3BucketObject_sse
=== PAUSE TestAccAWSS3BucketObject_sse
=== RUN   TestAccAWSS3BucketObject_acl
=== PAUSE TestAccAWSS3BucketObject_acl
=== RUN   TestAccAWSS3BucketObject_metadata
=== PAUSE TestAccAWSS3BucketObject_metadata
=== RUN   TestAccAWSS3BucketObject_storageClass
=== PAUSE TestAccAWSS3BucketObject_storageClass
=== RUN   TestAccAWSS3BucketObject_tags
=== PAUSE TestAccAWSS3BucketObject_tags
=== RUN   TestAccAWSS3BucketObject_tagsLeadingSingleSlash
=== PAUSE TestAccAWSS3BucketObject_tagsLeadingSingleSlash
=== RUN   TestAccAWSS3BucketObject_tagsLeadingMultipleSlashes
=== PAUSE TestAccAWSS3BucketObject_tagsLeadingMultipleSlashes
=== RUN   TestAccAWSS3BucketObject_tagsMultipleSlashes
=== PAUSE TestAccAWSS3BucketObject_tagsMultipleSlashes
=== RUN   TestAccAWSS3BucketObject_ObjectLockLegalHoldStartWithNone
=== PAUSE TestAccAWSS3BucketObject_ObjectLockLegalHoldStartWithNone
=== RUN   TestAccAWSS3BucketObject_ObjectLockLegalHoldStartWithOn
=== PAUSE TestAccAWSS3BucketObject_ObjectLockLegalHoldStartWithOn
=== RUN   TestAccAWSS3BucketObject_ObjectLockRetentionStartWithNone
=== PAUSE TestAccAWSS3BucketObject_ObjectLockRetentionStartWithNone
=== RUN   TestAccAWSS3BucketObject_ObjectLockRetentionStartWithSet
=== PAUSE TestAccAWSS3BucketObject_ObjectLockRetentionStartWithSet
=== CONT  TestAccAWSS3BucketObject_noNameNoKey
=== CONT  TestAccAWSS3BucketObject_ObjectLockRetentionStartWithSet
--- PASS: TestAccAWSS3BucketObject_noNameNoKey (2.59s)
=== CONT  TestAccAWSS3BucketObject_ObjectLockRetentionStartWithNone
--- PASS: TestAccAWSS3BucketObject_ObjectLockRetentionStartWithNone (80.32s)
=== CONT  TestAccAWSS3BucketObject_ObjectLockLegalHoldStartWithOn
--- PASS: TestAccAWSS3BucketObject_ObjectLockRetentionStartWithSet (101.13s)
=== CONT  TestAccAWSS3BucketObject_ObjectLockLegalHoldStartWithNone
--- PASS: TestAccAWSS3BucketObject_ObjectLockLegalHoldStartWithOn (56.35s)
=== CONT  TestAccAWSS3BucketObject_tagsMultipleSlashes
--- PASS: TestAccAWSS3BucketObject_ObjectLockLegalHoldStartWithNone (79.58s)
=== CONT  TestAccAWSS3BucketObject_tagsLeadingMultipleSlashes
--- PASS: TestAccAWSS3BucketObject_tagsMultipleSlashes (100.83s)
=== CONT  TestAccAWSS3BucketObject_tagsLeadingSingleSlash
--- PASS: TestAccAWSS3BucketObject_tagsLeadingMultipleSlashes (100.45s)
=== CONT  TestAccAWSS3BucketObject_tags
--- PASS: TestAccAWSS3BucketObject_tagsLeadingSingleSlash (99.84s)
=== CONT  TestAccAWSS3BucketObject_storageClass
--- PASS: TestAccAWSS3BucketObject_tags (100.39s)
=== CONT  TestAccAWSS3BucketObject_metadata
--- PASS: TestAccAWSS3BucketObject_metadata (75.85s)
=== CONT  TestAccAWSS3BucketObject_acl
--- PASS: TestAccAWSS3BucketObject_storageClass (120.14s)
=== CONT  TestAccAWSS3BucketObject_sse
--- PASS: TestAccAWSS3BucketObject_sse (32.38s)
=== CONT  TestAccAWSS3BucketObject_kms
--- PASS: TestAccAWSS3BucketObject_acl (80.33s)
=== CONT  TestAccAWSS3BucketObject_updatesWithVersioning
--- PASS: TestAccAWSS3BucketObject_kms (56.39s)
=== CONT  TestAccAWSS3BucketObject_updateSameFile
--- PASS: TestAccAWSS3BucketObject_updatesWithVersioning (55.32s)
=== CONT  TestAccAWSS3BucketObject_updates
--- PASS: TestAccAWSS3BucketObject_updateSameFile (55.43s)
=== CONT  TestAccAWSS3BucketObject_NonVersioned
--- SKIP: TestAccAWSS3BucketObject_NonVersioned (1.16s)
    provider_test.go:756: skipping tests; TF_ACC_ASSUME_ROLE_ARN must be set
=== CONT  TestAccAWSS3BucketObject_withContentCharacteristics
--- PASS: TestAccAWSS3BucketObject_withContentCharacteristics (32.00s)
=== CONT  TestAccAWSS3BucketObject_contentBase64
--- PASS: TestAccAWSS3BucketObject_updates (55.00s)
=== CONT  TestAccAWSS3BucketObject_etagEncryption
--- PASS: TestAccAWSS3BucketObject_contentBase64 (32.08s)
=== CONT  TestAccAWSS3BucketObject_content
--- PASS: TestAccAWSS3BucketObject_etagEncryption (32.32s)
=== CONT  TestAccAWSS3BucketObject_source
--- PASS: TestAccAWSS3BucketObject_content (31.78s)
=== CONT  TestAccAWSS3BucketObject_empty
--- PASS: TestAccAWSS3BucketObject_source (32.47s)
--- PASS: TestAccAWSS3BucketObject_empty (32.36s)
PASS
ok  	github.com/terraform-providers/terraform-provider-aws/aws	733.724s

Copy link
Member

@YakDriver YakDriver left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ewbankkit

Some tests are failing:

    resource_aws_s3_bucket_object_test.go:839: Step 2/4 error: Check failed: Check 6/8 error: aws_s3_bucket_object.object: Attribute 'tags.Key3' expected "XXX", got "X X"
=== CONT  TestAccAWSS3BucketObject_tagsLeadingMultipleSlashes
    resource_aws_s3_bucket_object_test.go:775: Step 2/4 error: Check failed: Check 6/8 error: aws_s3_bucket_object.object: Attribute 'tags.Key3' expected "XXX", got "X X"
--- FAIL: TestAccAWSS3BucketObject_tagsMultipleSlashes (35.20s)
--- FAIL: TestAccAWSS3BucketObject_tagsLeadingMultipleSlashes (35.33s)
--- PASS: TestAccAWSS3BucketObject_tags (81.06s)
--- PASS: TestAccAWSS3BucketObject_tagsLeadingSingleSlash (81.90s)

@ghost ghost added size/L Managed by automation to categorize the size of a PR. and removed size/M Managed by automation to categorize the size of a PR. labels Feb 12, 2021
@ghost ghost added size/L Managed by automation to categorize the size of a PR. provider Pertains to the provider itself, rather than any interaction with AWS. labels Feb 12, 2021
Copy link
Member

@YakDriver YakDriver left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good! 🎉

GovCloud:


--- PASS: TestAccAWSS3BucketObject_acl (84.15s)
--- PASS: TestAccAWSS3BucketObject_content (26.56s)
--- PASS: TestAccAWSS3BucketObject_contentBase64 (31.26s)
--- PASS: TestAccAWSS3BucketObject_defaultBucketSSE (36.39s)
--- PASS: TestAccAWSS3BucketObject_empty (28.43s)
--- PASS: TestAccAWSS3BucketObject_etagEncryption (31.68s)
--- PASS: TestAccAWSS3BucketObject_ignoreTags (48.66s)
--- PASS: TestAccAWSS3BucketObject_kms (34.85s)
--- PASS: TestAccAWSS3BucketObject_metadata (74.43s)
--- PASS: TestAccAWSS3BucketObject_noNameNoKey (4.83s)
--- PASS: TestAccAWSS3BucketObject_ObjectLockLegalHoldStartWithNone (83.68s)
--- PASS: TestAccAWSS3BucketObject_ObjectLockLegalHoldStartWithOn (60.52s)
--- PASS: TestAccAWSS3BucketObject_ObjectLockRetentionStartWithNone (83.96s)
--- PASS: TestAccAWSS3BucketObject_ObjectLockRetentionStartWithSet (104.96s)
--- PASS: TestAccAWSS3BucketObject_source (26.07s)
--- PASS: TestAccAWSS3BucketObject_sse (34.14s)
--- PASS: TestAccAWSS3BucketObject_storageClass (125.56s)
--- PASS: TestAccAWSS3BucketObject_tags (105.27s)
--- PASS: TestAccAWSS3BucketObject_tagsLeadingMultipleSlashes (99.13s)
--- PASS: TestAccAWSS3BucketObject_tagsLeadingSingleSlash (105.41s)
--- PASS: TestAccAWSS3BucketObject_tagsMultipleSlashes (105.27s)
--- PASS: TestAccAWSS3BucketObject_updates (52.36s)
--- PASS: TestAccAWSS3BucketObject_updateSameFile (52.59s)
--- PASS: TestAccAWSS3BucketObject_updatesWithVersioning (56.18s)
--- PASS: TestAccAWSS3BucketObject_updatesWithVersioningViaAccessPoint (60.40s)
--- PASS: TestAccAWSS3BucketObject_withContentCharacteristics (31.28s)
--- SKIP: TestAccAWSS3BucketObject_NonVersioned (1.26s)

us-west-2:


--- PASS: TestAccAWSS3BucketObject_acl (96.02s)
--- PASS: TestAccAWSS3BucketObject_content (30.30s)
--- PASS: TestAccAWSS3BucketObject_contentBase64 (39.05s)
--- PASS: TestAccAWSS3BucketObject_defaultBucketSSE (47.83s)
--- PASS: TestAccAWSS3BucketObject_empty (29.54s)
--- PASS: TestAccAWSS3BucketObject_etagEncryption (38.80s)
--- PASS: TestAccAWSS3BucketObject_ignoreTags (45.30s)
--- PASS: TestAccAWSS3BucketObject_kms (45.17s)
--- PASS: TestAccAWSS3BucketObject_metadata (74.50s)
--- PASS: TestAccAWSS3BucketObject_noNameNoKey (6.73s)
--- PASS: TestAccAWSS3BucketObject_ObjectLockLegalHoldStartWithNone (96.17s)
--- PASS: TestAccAWSS3BucketObject_ObjectLockLegalHoldStartWithOn (74.66s)
--- PASS: TestAccAWSS3BucketObject_ObjectLockRetentionStartWithNone (91.88s)
--- PASS: TestAccAWSS3BucketObject_ObjectLockRetentionStartWithSet (114.22s)
--- PASS: TestAccAWSS3BucketObject_source (29.98s)
--- PASS: TestAccAWSS3BucketObject_sse (45.58s)
--- PASS: TestAccAWSS3BucketObject_storageClass (126.24s)
--- PASS: TestAccAWSS3BucketObject_tags (108.77s)
--- PASS: TestAccAWSS3BucketObject_tagsLeadingMultipleSlashes (110.95s)
--- PASS: TestAccAWSS3BucketObject_tagsLeadingSingleSlash (114.39s)
--- PASS: TestAccAWSS3BucketObject_tagsMultipleSlashes (110.87s)
--- PASS: TestAccAWSS3BucketObject_updates (67.10s)
--- PASS: TestAccAWSS3BucketObject_updateSameFile (74.98s)
--- PASS: TestAccAWSS3BucketObject_updatesWithVersioning (75.59s)
--- PASS: TestAccAWSS3BucketObject_updatesWithVersioningViaAccessPoint (76.95s)
--- PASS: TestAccAWSS3BucketObject_withContentCharacteristics (30.37s)
--- SKIP: TestAccAWSS3BucketObject_NonVersioned (0.83s)

@YakDriver YakDriver added this to the v3.28.0 milestone Feb 12, 2021
@YakDriver YakDriver merged commit 1b94378 into hashicorp:main Feb 12, 2021
@ewbankkit ewbankkit deleted the issue-7583 branch February 12, 2021 12:56
@ghost
Copy link

ghost commented Feb 12, 2021

This has been released in version 3.28.0 of the Terraform AWS provider. Please see the Terraform documentation on provider versioning or reach out if you need any assistance upgrading.

For further feature requests or bug reports with this functionality, please create a new GitHub issue following the template for triage. Thanks!

@ghost
Copy link

ghost commented Mar 14, 2021

I'm going to lock this issue because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active issues.

If you feel this issue should be reopened, we encourage creating a new issue linking back to this one for added context. Thanks!

@ghost ghost locked as resolved and limited conversation to collaborators Mar 14, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
provider Pertains to the provider itself, rather than any interaction with AWS. service/s3 Issues and PRs that pertain to the s3 service. size/L Managed by automation to categorize the size of a PR. tests PRs: expanded test coverage. Issues: expanded coverage, enhancements to test infrastructure.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

r/aws_s3_bucket_object: Remove ALL leading '/'s from key when destroying
2 participants