This project was originally private but is not currently being maintained. It has been open sourced in the interest of sharing knowledge.
Hird is a RESTful web service that deploys and manages your applications on AWS following some of the best practices used by companies with years of DevOps experience. You keep your infrastructure within your own AWS account. You drive that infrastructure through code. We provide the means to do that.
- Cattle, not pets.
- Immutability.
- Zero-downtime deployments.
- High-availability.
- Secure hosting environments.
- Consistent approach.
Requires content-type "text/yaml" and accepts a YAML file that describes the
deployment. If :name does not exist, it is created. Otherwise :name is
updated.
Events are output in log format as they are received.
If :name exists, deletes it. Otherwise does nothing.
Events are output in log format as they are received.
Receives input like PUT /api/v1/stacks/:name, but outputs the JSON template
that would be applied with CloudFormation.
Receives input like PUT /api/v1/stacks/:name, but outputs the YAML config
with all default values filled in.
An entire VPC, with public and private subnets.
description: Hird VPC
network:
cidr: 10.0.0.0/16A docker-based web application.
description: Example stack
depends: [vpc]
instances:
scale: 2
containers:
webapp:
image: d11wtq/chriscorbyn-co-uk:2015-04-21-01
ports: {80: 8080}A hosted zone with some DNS records:
description: Hosted Zone for w3style.co.uk
zone: w3style.co.uk
domains:
w3style.co.uk:
MX:
ttl: 3600
records:
- "1 ASPMX.L.GOOGLE.COM"
- "5 ALT1.ASPMX.L.GOOGLE.COM"
- "5 ALT2.ASPMX.L.GOOGLE.COM"
- "10 ALT3.ASPMX.L.GOOGLE.COM"
- "10 ALT4.ASPMX.L.GOOGLE.COM"A Postgres database master:
description: Example PostgreSQL RDS DB
depends: [vpc]
database:
engine: postgres/9.4.1
username: postgres
password: sergtsop