Skip to content

Commit 11d70fa

Browse files
fix: remove unneccesary boto3 call to verify region (#1042)
1 parent fbecfe1 commit 11d70fa

File tree

5 files changed

+10
-26
lines changed

5 files changed

+10
-26
lines changed

aws_advanced_python_wrapper/aws_secrets_manager_plugin.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -210,8 +210,7 @@ def _apply_secret_to_properties(self, properties: Properties):
210210
WrapperProperties.PASSWORD.set(properties, password_value)
211211

212212
def _get_rds_region(self, secret_id: str, props: Properties) -> str:
213-
session = self._session if self._session else boto3.Session()
214-
region = self._region_utils.get_region(props, WrapperProperties.SECRETS_MANAGER_REGION.name, session=session)
213+
region = self._region_utils.get_region(props, WrapperProperties.SECRETS_MANAGER_REGION.name)
215214

216215
if region:
217216
return region
@@ -221,7 +220,7 @@ def _get_rds_region(self, secret_id: str, props: Properties) -> str:
221220
region = match.group("region")
222221

223222
if region:
224-
return self._region_utils.verify_region(region)
223+
return region
225224
else:
226225
raise AwsWrapperError(
227226
Messages.get_formatted("AwsSecretsManagerPlugin.MissingRequiredConfigParameter",

aws_advanced_python_wrapper/federated_plugin.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ def _connect(self, host_info: HostInfo, props: Properties, connect_func: Callabl
8484

8585
host = IamAuthUtils.get_iam_host(props, host_info)
8686
port = IamAuthUtils.get_port(props, host_info, self._plugin_service.database_dialect.default_port)
87-
region = self._region_utils.get_region(props, WrapperProperties.IAM_REGION.name, host, self._session)
87+
region = self._region_utils.get_region(props, WrapperProperties.IAM_REGION.name, host)
8888
if not region:
8989
error_message = "RdsUtils.UnsupportedHostname"
9090
logger.debug(error_message, host)

aws_advanced_python_wrapper/iam_plugin.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ def _connect(self, host_info: HostInfo, props: Properties, connect_func: Callabl
7878
raise AwsWrapperError(Messages.get_formatted("IamAuthPlugin.IsNoneOrEmpty", WrapperProperties.USER.name))
7979

8080
host = IamAuthUtils.get_iam_host(props, host_info)
81-
region = self._region_utils.get_region(props, WrapperProperties.IAM_REGION.name, host, self._session)
81+
region = self._region_utils.get_region(props, WrapperProperties.IAM_REGION.name, host)
8282
if not region:
8383
error_message = "RdsUtils.UnsupportedHostname"
8484
logger.debug(error_message, host)

aws_advanced_python_wrapper/okta_plugin.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ def _connect(self, host_info: HostInfo, props: Properties, connect_func: Callabl
8080

8181
host = IamAuthUtils.get_iam_host(props, host_info)
8282
port = IamAuthUtils.get_port(props, host_info, self._plugin_service.database_dialect.default_port)
83-
region = self._region_utils.get_region(props, WrapperProperties.IAM_REGION.name, host, self._session)
83+
region = self._region_utils.get_region(props, WrapperProperties.IAM_REGION.name, host)
8484
if not region:
8585
error_message = "RdsUtils.UnsupportedHostname"
8686
logger.debug(error_message, host)

aws_advanced_python_wrapper/utils/region_utils.py

Lines changed: 5 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,7 @@
1919
if TYPE_CHECKING:
2020
from aws_advanced_python_wrapper.utils.properties import Properties
2121

22-
from boto3 import Session
23-
24-
from aws_advanced_python_wrapper.errors import AwsWrapperError
2522
from aws_advanced_python_wrapper.utils.log import Logger
26-
from aws_advanced_python_wrapper.utils.messages import Messages
2723
from aws_advanced_python_wrapper.utils.rdsutils import RdsUtils
2824

2925
logger = Logger(__name__)
@@ -36,23 +32,12 @@ def __init__(self):
3632
def get_region(self,
3733
props: Properties,
3834
prop_key: str,
39-
hostname: Optional[str] = None,
40-
session: Optional[Session] = None) -> Optional[str]:
35+
hostname: Optional[str] = None) -> Optional[str]:
4136
region = props.get(prop_key)
4237
if region:
43-
return self.verify_region(region, session)
44-
45-
return self.get_region_from_hostname(hostname, session)
46-
47-
def get_region_from_hostname(self, hostname: Optional[str], session: Optional[Session] = None) -> Optional[str]:
48-
region = self._rds_utils.get_rds_region(hostname)
49-
return self.verify_region(region, session) if region else None
38+
return region
5039

51-
def verify_region(self, region: str, session: Optional[Session] = None) -> str:
52-
session = session if session is not None else Session()
53-
if region not in session.get_available_regions("rds"):
54-
error_message = "AwsSdk.UnsupportedRegion"
55-
logger.debug(error_message, region)
56-
raise AwsWrapperError(Messages.get_formatted(error_message, region))
40+
return self.get_region_from_hostname(hostname)
5741

58-
return region
42+
def get_region_from_hostname(self, hostname: Optional[str]) -> Optional[str]:
43+
return self._rds_utils.get_rds_region(hostname)

0 commit comments

Comments
 (0)