Skip to content

Instantly share code, notes, and snippets.

@KyMidd
Last active December 27, 2024 19:11
Show Gist options
  • Select an option

  • Save KyMidd/94647005a607e6f2b1aac6ee209f5b05 to your computer and use it in GitHub Desktop.

Select an option

Save KyMidd/94647005a607e6f2b1aac6ee209f5b05 to your computer and use it in GitHub Desktop.
# Main function
if __name__ == "__main__":
# Run in local development mode
print("๐Ÿš€ Local server starting starting")
# Fetch secret package
secrets = get_secret(bot_secret_name, "us-east-1")
# Disambiguate the secrets with json lookups
secrets_json = json.loads(secrets)
token = secrets_json["SLACK_BOT_TOKEN"]
signing_secret = secrets_json["SLACK_SIGNING_SECRET"]
....
# Get GitHubPAT secret from AWS Secrets Manager that we'll use to start the githubcop workflow
def get_secret(secret_name, region_name):
# Create a Secrets Manager client
session = boto3.session.Session()
client = session.client(service_name="secretsmanager", region_name=region_name)
try:
get_secret_value_response = client.get_secret_value(SecretId=secret_name)
except ClientError as e:
# For a list of exceptions thrown, see
# https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_GetSecretValue.html
print("Had an error attempting to get secret from AWS Secrets Manager:", e)
raise e
# Decrypts secret using the associated KMS key.
secret = get_secret_value_response["SecretString"]
# Print happy joy joy
print("๐Ÿš€ Successfully got secret", secret_name, "from AWS Secrets Manager")
# Return the secret
return secret
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment