Opsworks Tool
A tool to create and deploy Opsworks stacks to AWS.
Current version - 0.0.1:
- Create a new Python 2.7 AWS Opsworks from included template.
- Deploy AWS Opsworks created with this tool. It generates a CloudFormation file and creates a stack from that template.
Usage:
Create a new opsworks stack:
Usage: opsworkstool new [OPTIONS]
Options:
-d, --directory TEXT target directory for new Opsworks recipe, defaults to
current directory
-n, --name TEXT name of the new opsworks skeleton [required]
-p, --profile TEXT AWS CLI profile to use in the deployment, more details
at http://docs.aws.amazon.com/cli/latest/userguide
/cli-chap-getting-started.html
-r, --region TEXT target region, defaults to your credentials default
region
--debug Turn on debugging
--help Show this message and exit.
Example:
opsworkstool -sn example --region us-east-2 # make a Flask webservice in example/main.py
Create a new opsworks template:
Usage: opsworkstool deploy [OPTIONS]
Options:
-d, --directory TEXT scratch directory for deploy, defaults to /tmp
-p, --profile TEXT AWS CLI profile to use in the deployment
-r, --region TEXT target region, defaults to your credentials default
region
--help Show this message and exit.
Example:
opsworkstool new --name test --profile will --directory /tmp/junk --region us-east-1
More details on AWS profile credentials here.
What just happened
- This just created the needed files
├── config
│ ├── config.ini
│ └── dev
│ └── function.properties
├── recipe
│ ├── Berksfile
│ └── test
│ ├── attributes
│ │ └── default.rb
│ ├── files
│ └── recipes
│ ├── default.rb
│ └── setup.rb
├── template.json
└── utility
├── __init__.py
└── tools.py
The next steps
- Edit the template.json as needed, and edit the config/config.ini for the parameters for the needed stage. Note: The default state is dev
- Edit the recipe/test/recipe/setup.rb recipe
Deploying the Opswork template
opsworkstool deploy --profile will -s dev
What you will need:
- An AWS account
- A VPC setup in that account (or access to create one). See more about AWS default VPC here.
- At least one subnet in that account (or access to create one)
- An IAM role to assign to the opsworks instance. If you do not have a suitable IAM role you can get some idea here.
- A very simple security group
- An S3 bucket where you can put build/deployment artifacts. This bucket must be in the same AWS region as your function.
- A minimal Python 2.7 development environment including virtualenv or virtualenv wrapper
Metadata
Release files for OpsworksTool 0.0.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| OpsworksTool-0.0.2.tar.gz | 15.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| OpsworksTool-0.0.2-py2.py3-none-any.whl | Python 2, Python 3 | none | any | Details |
Total release size: 37.5 kB
Release files / OpsworksTool-0.0.2.tar.gz
| Download URL | OpsworksTool-0.0.2.tar.gz |
|---|---|
| Size | 15.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
35e6e3da18c4fefad415d0d538f3adec7b16e08fdd60c78e111d1e37a879fcda
|
|
BLAKE2b-256 checksum How to use checksums |
c970fac92aa51257fa685fc2b63fd8520d68405be09fe6bfeb2af3a7a885873b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.1.0 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/2.7.10
|
Release files / OpsworksTool-0.0.2-py2.py3-none-any.whl
| Download URL | OpsworksTool-0.0.2-py2.py3-none-any.whl |
|---|---|
| Size | 21.7 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
caf639dc9eda5bf25e6144a0b4545692241675bacf14146bc467e1bf6efff7a0
|
|
BLAKE2b-256 checksum How to use checksums |
a43ed36a14a5c288780e3eb3abd0421ab896555fd7bf57054240dbe6cb909a0c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.1.0 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/2.7.10
|