in athena_glue_service_logs/utils.py [0:0]
def get_regions_in_partition(self, prefix=None, delimiter='/'):
"""Scan a given prefix and return all regions in that partition with an optional delimiter
Returns a list of AWS region names that exist in prefix
"""
if prefix is None:
prefix = self.s3_path
else:
prefix = self._strip_slashes(prefix)
query_params = {
'Bucket': self.s3_bucket,
'Prefix': prefix + '/',
'Delimiter': delimiter
}
# We currently should be able to get all regions in a single request
# TODO: Fail if we get a next token - there's more to this prefix than meets the eye
region_list = []
response = self.s3_client.list_objects_v2(**query_params)
for c_prefix in response.get('CommonPrefixes', []):
region = self._extract_region_from_prefix(c_prefix)
if region:
region_list.append(region)
return region_list