/aws-infra

Global Sage Bionetworks AWS Infrastructure

Primary LanguagePythonApache License 2.0Apache-2.0

Overview

This project contains shared templates for building out and maintaining the Sage Bionetworks infrastructure on AWS.

Contributions

Contributions are welcome.

Requirements:

  • Install pre-commit app
  • Clone this repo
  • Run pre-commit install to install the git hook.

Testing

As a pre-deployment step we syntatically validate files files with pre-commit.

Please install pre-commit, once installed the file validations will automatically run on every commit. Alternatively you can manually execute the validations by running pre-commit run --all-files.

We have setup taskcat to test that the shared cloudformation templates can actually deploy resources to our AWS accounts. The test runs in our Admincentral account. We only validate on us-east-1 region.

Continuous Integration

We have configured the CI to deploy CF template to a public S3 bucket on the AWS Admincentral account. The purpose is to allow us to share those templates.

Deployments

Templates can be deployed using the AWSCLI. We use sceptre for more functionality. Examples of deployments of templats in this repo can be found in our other Sage-Bionetworks/*-infa repos (i.e. sandbox-infra)

Issues

Builds

Secrets

  • We use the AWS SSM to store secrets for this project. Sceptre retrieves the secrets using a sceptre ssm resolver and passes them to the cloudformation stack on deployment.