in handler.py [0:0]
def get_secrets():
secret_teams_name = "MicrosoftChannelID"
secret_slack_name = "SlackChannelID"
secret_chime_name = "ChimeChannelID"
region_name = os.environ['AWS_REGION']
get_secret_value_response_assumerole = ""
get_secret_value_response_eventbus = ""
get_secret_value_response_chime = ""
get_secret_value_response_teams = ""
get_secret_value_response_slack = ""
event_bus_name = "EventBusName"
secret_assumerole_name = "AssumeRoleArn"
# create a Secrets Manager client
session = boto3.session.Session()
client = session.client(
service_name='secretsmanager',
region_name=region_name
)
# Iteration through the configured AWS Secrets
try:
get_secret_value_response_teams = client.get_secret_value(
SecretId=secret_teams_name
)
except ClientError as e:
if e.response['Error']['Code'] == 'AccessDeniedException':
print("No AWS Secret configured for Teams, skipping")
teams_channel_id = "None"
else:
print("There was an error with the Teams secret: ",e.response)
teams_channel_id = "None"
finally:
if 'SecretString' in get_secret_value_response_teams:
teams_channel_id = get_secret_value_response_teams['SecretString']
else:
teams_channel_id = "None"
try:
get_secret_value_response_slack = client.get_secret_value(
SecretId=secret_slack_name
)
except ClientError as e:
if e.response['Error']['Code'] == 'AccessDeniedException':
print("No AWS Secret configured for Slack, skipping")
slack_channel_id = "None"
else:
print("There was an error with the Slack secret: ",e.response)
slack_channel_id = "None"
finally:
if 'SecretString' in get_secret_value_response_slack:
slack_channel_id = get_secret_value_response_slack['SecretString']
else:
slack_channel_id = "None"
try:
get_secret_value_response_chime = client.get_secret_value(
SecretId=secret_chime_name
)
except ClientError as e:
if e.response['Error']['Code'] == 'AccessDeniedException':
print("No AWS Secret configured for Chime, skipping")
chime_channel_id = "None"
else:
print("There was an error with the Chime secret: ",e.response)
chime_channel_id = "None"
finally:
if 'SecretString' in get_secret_value_response_chime:
chime_channel_id = get_secret_value_response_chime['SecretString']
else:
chime_channel_id = "None"
try:
get_secret_value_response_assumerole = client.get_secret_value(
SecretId=secret_assumerole_name
)
except ClientError as e:
if e.response['Error']['Code'] == 'AccessDeniedException':
print("No AWS Secret configured for Assume Role, skipping")
assumerole_channel_id = "None"
else:
print("There was an error with the Assume Role secret: ",e.response)
assumerole_channel_id = "None"
finally:
if 'SecretString' in get_secret_value_response_assumerole:
assumerole_channel_id = get_secret_value_response_assumerole['SecretString']
else:
assumerole_channel_id = "None"
try:
get_secret_value_response_eventbus = client.get_secret_value(
SecretId=event_bus_name
)
except ClientError as e:
if e.response['Error']['Code'] == 'AccessDeniedException':
print("No AWS Secret configured for EventBridge, skipping")
eventbus_channel_id = "None"
else:
print("There was an error with the EventBridge secret: ",e.response)
eventbus_channel_id = "None"
finally:
if 'SecretString' in get_secret_value_response_eventbus:
eventbus_channel_id = get_secret_value_response_eventbus['SecretString']
else:
eventbus_channel_id = "None"
secrets = {
"teams": teams_channel_id,
"slack": slack_channel_id,
"chime": chime_channel_id,
"eventbusname": eventbus_channel_id,
"ahaassumerole": assumerole_channel_id
}
# uncomment below to verify secrets values
#print("Secrets: ",secrets)
return secrets