Coder Social home page Coder Social logo

sandbox-provisioner's Introduction

Overview

Auto provision resources on AWS org-sagebase-sandbox account. Cloudformation templates in this repo build on top of CF templates in Sage-Bionetworks/sandbox-infra repo.

Note - This project depends on CF templates from other accounts.

Workflow

The workflow to provision AWS resources is done using pull requests. PRs provide history, gating, and a way to review and approve resource requests.

Provision EC2 instances

Instructions and workflow to auto provision and de-provision an EC2 is in Example PR: Auto provision an EC2 instance

Merging the above should create an EC2 instance and join the instance to a Sage Jumpcloud "system group" identified by $JcSystemsGroupId. Jumpcloud "User groups" that have access to $JcSystemsGroupId will have access to the provisioned instance.

EC2 AMIs

We allow provisioning based on custom AMIs. List of Sage IT managed AMIs:

Instance ID Distribution Disk Size

Jumpcloud

We use a directory service Jumpcloud to manage user access to EC2 instances.

Jumpcloud System Groups

Find system groups by using the Jumpcloud API:

curl -X GET https://console.jumpcloud.com/api/v2/systemgroups \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -H 'x-api-key: abcd111122223333aaaabbbbccccddddeeeeffff'

Jumpcloud Systems

Find systems by using the Jumpcloud API:

curl -X GET https://console.jumpcloud.com/api/systems \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -H 'x-api-key: abcd111122223333aaaabbbbccccddddeeeeffff'

Provision a Synapse external S3 bucket

Instructions and workflow to auto provision a Synapse external S3 bucket can be found in Example PR: Auto provision a synapse bucket

Merging the above should create a synapse bucket with the configurations defined in the documentation.

Continuous Integration

We have configured Travis to deploy CF template updates. Travis deploys using sceptre

Contributions

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.

sandbox-provisioner's People

Contributors

zaro0508 avatar thomasyu888 avatar jgockley62 avatar dgutman avatar kimyen avatar zimingd avatar milen-sage avatar xschildw avatar philerooski avatar

Watchers

 avatar James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.