diff --git a/hub/store/s3_file_system_replacement.py b/hub/store/s3_file_system_replacement.py index 03198f3545..a77a0af893 100644 --- a/hub/store/s3_file_system_replacement.py +++ b/hub/store/s3_file_system_replacement.py @@ -20,11 +20,13 @@ def get_mapper(self, root: str, check=False, create=False): root = "s3://" + root client_kwargs = self._kwargs.get("client_kwargs") endpoint_url = client_kwargs and client_kwargs.get("endpoint_url") or None + aws_region = client_kwargs and client_kwargs.get("region_name") or None return S3Storage( self, root, aws_access_key_id=self._kwargs.get("key"), aws_secret_access_key=self._kwargs.get("secret"), aws_session_token=self._kwargs.get("token"), + aws_region=aws_region, endpoint_url=endpoint_url, ) diff --git a/hub/store/s3_storage.py b/hub/store/s3_storage.py index 949f9c05f2..7917c40804 100644 --- a/hub/store/s3_storage.py +++ b/hub/store/s3_storage.py @@ -27,12 +27,14 @@ def __init__( aws_session_token=None, parallel=25, endpoint_url=None, + aws_region=None, ): self.s3fs = s3fs self.root = {} self.url = url self.public = public self.parallel = parallel + self.aws_region = aws_region self.endpoint_url = endpoint_url self.bucket = url.split("/")[2] self.path = "/".join(url.split("/")[3:]) @@ -54,6 +56,7 @@ def __init__( aws_session_token=aws_session_token, config=client_config, endpoint_url=endpoint_url, + region_name=aws_region, ) self.resource = boto3.resource( @@ -63,6 +66,7 @@ def __init__( aws_session_token=aws_session_token, config=client_config, endpoint_url=endpoint_url, + region_name=aws_region, ) def __setitem__(self, path, content):