in delivery/src/on_package_created/main.py [0:0]
def get_order(order_id: str) -> Optional[dict]:
"""
Retrieve the order from ther Orders service
"""
logger.debug({
"message": "Retreiving order {}".format(order_id),
"orderId": order_id
})
# Create IAM signature helper
request_url = ORDERS_API_URL + order_id
url = urlparse(request_url)
region = boto3.session.Session().region_name
auth = BotoAWSRequestsAuth(aws_host=url.netloc,
aws_region=region,
aws_service='execute-api')
# Send request to order service
response = requests.get(request_url, auth=auth)
if response.status_code != 200:
logger.error({
"message": "Failed to retrieve order {}".format(order_id),
"orderId": order_id,
"statusCode": response.status_code,
"response": response.json()
})
return None
order = response.json()
logger.info({
"message": "Retrieved order {} from Orders service".format(order_id),
"orderId": order_id,
"order": order
})
return order