A small and basic package to create AWS instances and Atlas clusters with basic task management.
Project description
Deploy AWS Blueprint
This is a basic tool to deploy a series of AWS Instances when building a Cloud Formation or using Terraform / Habitat or others is overkill.
Installation
From PyPi
Not yet implemented.
From Source
Download all source code here. From the root directory of the git clone, run pip install --editable .
Use
Help
graboskycMBP:~ graboskyc$ DeployBlueprint --help
usage: DeployBlueprint [-h] [-b BLUEPRINT] [-s] [-d DAYS] [-k KEYPATH]
CLI Tool to esily deploy a blueprint to aws instances
optional arguments:
-h, --help show this help message and exit
-b BLUEPRINT path to the blueprint
-s, --sample download a sample blueprint yaml
-d DAYS how many days should we reserve this for before reaping
-k KEYPATH ssh private key location, required if using tasks
Sample
$ python deployAWSBlueprint.py -b sampleblueprint.yaml
Blueprint Syntax
See the sampleblueprint.yaml for an example. But here is the hierarchy:
Root | Child | Child | Notes |
---|---|---|---|
apiversion: v1 |
API version to use, use v1 for now | ||
resources |
begins list of things to dpeloy | ||
-name |
name of deployed vm | ||
description |
used in description tag | ||
os |
ubuntu ,rhel ,win2016dc , amazon , or amazon2 |
||
size |
name of AWS sizes | ||
postinstallorder |
order of operations, only use if tasks are provided. Useful for things where one VM must be configured before others. Lower numbers get done before higher ones. | ||
tasks |
OPTIONAL and completed in order | ||
-type |
playbook , shell , ps for ansible or bash/winrm |
||
url |
URL to where the script sits | ||
description |
text field to describe what it does |
Order of operations
- All instances are deployed in the order listed. We use launch instance API and check for pass/fail
- VM names are prepended with a random 8 character string and taged with
use-group
of this UUID so you know they were deployed together - Wait for all instances to return
running
state - NOT IMPLEMENTED YET BELOW THIS LINE:
- The post configuration plan is generated as follows:
- Loop through blueprint and find all resources that have a
task
list - Order the resources based on
postinstallorder
in ascending order - Tasks for each resource are done in order listed
- Execute this plan in the order provided
- Loop through blueprint and find all resources that have a
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
DeployBlueprint-0.5.3.tar.gz
(9.5 kB
view details)
Built Distribution
File details
Details for the file DeployBlueprint-0.5.3.tar.gz
.
File metadata
- Download URL: DeployBlueprint-0.5.3.tar.gz
- Upload date:
- Size: 9.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/2.7.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5527c2585f41997506f100547316b2f630a3a6c7e34f2cd4d65606993cbe3b88 |
|
MD5 | 4c86b0c296ec2259e81a4544de85e624 |
|
BLAKE2b-256 | 36ee47f7bf4022af7487e50ece338577236e25ad37af102ff9be7e6cb45be6bc |
File details
Details for the file DeployBlueprint-0.5.3-py2-none-any.whl
.
File metadata
- Download URL: DeployBlueprint-0.5.3-py2-none-any.whl
- Upload date:
- Size: 11.8 kB
- Tags: Python 2
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/2.7.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 32d208a03a100250c7f2e5348dd7e81019f48206a6626d31192957ec9de02988 |
|
MD5 | 1fc88eb29615e8258901306ac9f87a07 |
|
BLAKE2b-256 | b90130a925ab9aea90c7857bfac31ae2ede4f43ce1bc964abd0c6ddd6d8fb3aa |