]> git-server-git.apps.pok.os.sepia.ceph.com Git - s3-tests.git/commitdiff
sns: clear region_name for s3 clients 619/head
authorCasey Bodley <cbodley@redhat.com>
Fri, 14 Feb 2025 20:31:32 +0000 (15:31 -0500)
committerCasey Bodley <cbodley@redhat.com>
Fri, 14 Feb 2025 20:31:34 +0000 (15:31 -0500)
work around sns failures due to default region_name='':

> ERROR s3tests_boto3/functional/test_sns.py::test_account_topic_publish - botocore.exceptions.EndpointResolutionError: Invalid region: region was not a valid DNS name.
> ERROR s3tests_boto3/functional/test_sns.py::test_cross_account_topic_publish - botocore.exceptions.EndpointResolutionError: Invalid region: region was not a valid DNS name.

Signed-off-by: Casey Bodley <cbodley@redhat.com>
s3tests_boto3/functional/__init__.py
s3tests_boto3/functional/test_sns.py

index 7ca874b4ad1a4297d8e5c139f165ab4faf27f943..9339403fc4d8c6c15fc2f4fe890c4a061b525d71 100644 (file)
@@ -415,25 +415,25 @@ def get_v2_client():
     return client
 
 def get_sts_client(**kwargs):
+    kwargs.setdefault('region_name', '')
     kwargs.setdefault('aws_access_key_id', config.alt_access_key)
     kwargs.setdefault('aws_secret_access_key', config.alt_secret_key)
     kwargs.setdefault('config', Config(signature_version='s3v4'))
 
     client = boto3.client(service_name='sts',
                           endpoint_url=config.default_endpoint,
-                          region_name='',
                           use_ssl=config.default_is_secure,
                           verify=config.default_ssl_verify,
                           **kwargs)
     return client
 
 def get_iam_client(**kwargs):
+    kwargs.setdefault('region_name', '')
     kwargs.setdefault('aws_access_key_id', config.iam_access_key)
     kwargs.setdefault('aws_secret_access_key', config.iam_secret_key)
 
     client = boto3.client(service_name='iam',
                         endpoint_url=config.default_endpoint,
-                        region_name='',
                         use_ssl=config.default_is_secure,
                         verify=config.default_ssl_verify,
                         **kwargs)
@@ -453,22 +453,22 @@ def get_iam_s3client(**kwargs):
 
 def get_iam_root_client(**kwargs):
     kwargs.setdefault('service_name', 'iam')
+    kwargs.setdefault('region_name', '')
     kwargs.setdefault('aws_access_key_id', config.iam_root_access_key)
     kwargs.setdefault('aws_secret_access_key', config.iam_root_secret_key)
 
     return boto3.client(endpoint_url=config.default_endpoint,
-                        region_name='',
                         use_ssl=config.default_is_secure,
                         verify=config.default_ssl_verify,
                         **kwargs)
 
 def get_iam_alt_root_client(**kwargs):
     kwargs.setdefault('service_name', 'iam')
+    kwargs.setdefault('region_name', '')
     kwargs.setdefault('aws_access_key_id', config.iam_alt_root_access_key)
     kwargs.setdefault('aws_secret_access_key', config.iam_alt_root_secret_key)
 
     return boto3.client(endpoint_url=config.default_endpoint,
-                        region_name='',
                         use_ssl=config.default_is_secure,
                         verify=config.default_ssl_verify,
                         **kwargs)
index 589343b135a19d0b70cb3adfb441613874b89e36..60d0662d7002afc6af9c79bbc6efb9cbbcda8522 100644 (file)
@@ -41,13 +41,15 @@ def sns_alt(iam_alt_root):
 
 @pytest.fixture
 def s3(iam_root):
-    client = get_iam_root_client(service_name='s3')
+    # clear region_name to work around Invalid region: region was not a valid DNS name.
+    client = get_iam_root_client(service_name='s3', region_name=None)
     yield client
     nuke_prefixed_buckets(get_prefix(), client)
 
 @pytest.fixture
 def s3_alt(iam_alt_root):
-    client = get_iam_alt_root_client(service_name='s3')
+    # clear region_name to work around Invalid region: region was not a valid DNS name.
+    client = get_iam_alt_root_client(service_name='s3', region_name=None)
     yield client
     nuke_prefixed_buckets(get_prefix(), client)