From 4defdfeb256c341f5e9b8ad0224400daf25d0b97 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ra=C3=BAl=20Pedroche?= <129501338+raulpedroche@users.noreply.github.com> Date: Wed, 25 Oct 2023 09:10:07 +0200 Subject: [PATCH] Use HeadBucket instead of GetBucketLocation (#1979) --- plugins/connection/aws_ssm.py | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/plugins/connection/aws_ssm.py b/plugins/connection/aws_ssm.py index 5c2d6d57788..0c60292cbca 100644 --- a/plugins/connection/aws_ssm.py +++ b/plugins/connection/aws_ssm.py @@ -427,13 +427,12 @@ def _get_bucket_endpoint(self): ) # Fetch the location of the bucket so we can open a client against the 'right' endpoint # This /should/ always work - bucket_location = tmp_s3_client.get_bucket_location( + head_bucket = tmp_s3_client.head_bucket( Bucket=(self.get_option("bucket_name")), ) - if bucket_location["LocationConstraint"]: - bucket_region = bucket_location["LocationConstraint"] - else: - bucket_region = "us-east-1" + bucket_region = head_bucket.get("ResponseMetadata", {}).get("HTTPHeaders", {}).get("x-amz-bucket-region", None) + if bucket_region is None: + bucket_region = "us-east-1" if self.get_option("bucket_endpoint_url"): return self.get_option("bucket_endpoint_url"), bucket_region