Skip to content

Commit f870553

Browse files
authored
Better timezone management (#575)
1 parent cf74598 commit f870553

File tree

5 files changed

+14
-7
lines changed

5 files changed

+14
-7
lines changed

cfn-templates/cid-cfn.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ Parameters:
136136
CidVersion:
137137
Type: String
138138
MinLength: 5
139-
Default: 0.2.21
139+
Default: 0.2.22
140140
Description: A version of CID package
141141
Suffix:
142142
Type: String

cid/_version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11

2-
__version__ = '0.2.21'
2+
__version__ = '0.2.22'

cid/helpers/quicksight/__init__.py

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1067,11 +1067,15 @@ def ensure_dataset_refresh_schedule(self, dataset_id, schedules: list):
10671067
if exec_env()['terminal'] in ('lambda'):
10681068
schedule_frequency_timezone = get_parameters().get("timezone", timezone.get_default_timezone())
10691069
else:
1070+
default_timezone = timezone.get_default_timezone()
10701071
schedule_frequency_timezone = get_parameter("timezone",
1071-
message='Please select timezone for datasets scheduled refresh time',
1072-
choices=timezone.get_all_timezones(),
1073-
default=timezone.get_default_timezone()
1072+
message='Please select timezone for datasets scheduled refresh.',
1073+
choices=sorted(list(set(timezone.get_all_timezones() + [default_timezone]))),
1074+
default=default_timezone
10741075
)
1076+
if not schedule_frequency_timezone:
1077+
logger.warning(f'Cannot get timezone. Please provide --timezone parameter. Please make sure scheduled refresh is configured manualy.')
1078+
return
10751079

10761080
for schedule in schedules:
10771081

cid/helpers/randtime.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
def pseudo_random_generator(hashable_string: str, maximum: int=100) -> int:
77
"""Gernerate a pseudo random integer number, but the same for any given hashable_string identifier """
8-
hash_hex = hashlib.md5(bytes(hashable_string, "utf-8"), usedforsecurity=False).hexdigest()[:16] # nosec B303 - not used for security
8+
hash_hex = hashlib.md5(bytes(hashable_string, "utf-8")).hexdigest()[:16] # nosec B303, B324 - not used for security
99
bigint_value = int.from_bytes(bytes.fromhex(hash_hex), 'little', signed=True)
1010
return bigint_value % int(maximum)
1111

cid/helpers/timezone.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,4 +65,7 @@ def get_default_timezone():
6565
def get_all_timezones():
6666
"""Get all zones"""
6767
# zoneinfo is not working with 3.7, 3.8
68-
return sorted(list(win_tz.values()))
68+
69+
return sorted(list(set(
70+
list(win_tz.values()) + list(MAPPING_REGION_2_TIMEZONE.values())
71+
)))

0 commit comments

Comments
 (0)