in src/mount_efs/__init__.py [0:0]
def get_az_id_info_from_instance_metadata(config, options):
logging.debug("Retrieve availability-zone-id from instance metadata")
instance_az_id_url = get_instance_az_id_metadata_url(config)
metadata_unsuccessful_resp = (
"Unsuccessful retrieval of metadata at %s." % instance_az_id_url
)
metadata_url_error_msg = (
"Unable to reach %s to retrieve instance metadata." % instance_az_id_url
)
global INSTANCE_AZ_ID_METADATA
if INSTANCE_AZ_ID_METADATA:
logging.debug(
"Instance az_id already retrieved in previous call, use the cached values."
)
az_id_metadata = INSTANCE_AZ_ID_METADATA
else:
az_id_metadata = url_request_helper(
config,
instance_az_id_url,
metadata_unsuccessful_resp,
metadata_url_error_msg,
)
INSTANCE_AZ_ID_METADATA = az_id_metadata
# ECS Fargate returns a json response with the AZ-name which we convert to AZ-ID
if az_id_metadata and is_ecs_fargate_client(config):
return get_az_id_from_ecs_fargate_response(config, options, az_id_metadata)
elif az_id_metadata:
return az_id_metadata
return None