Skip to content

Instantly share code, notes, and snippets.

@stephen-mw
Created March 4, 2014 21:05
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save stephen-mw/9355613 to your computer and use it in GitHub Desktop.
Save stephen-mw/9355613 to your computer and use it in GitHub Desktop.
The Deployment Manifesto
The 10 Tenets of Deployments
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in
[RFC 2119](https://www.ietf.org/rfc/rfc2119.txt).
1. Configuration management MUST NOT be coupled to an external service, such as EC2, Openstack, Foreman, or anything else.
2. Devops SHOULD provide a self-service framework for the automatic creation and destruction of hosts from the ground up.
3. Devops SHOULD work with engineering teams to come up with continuous deployment strategy that doesn’t involve the destruction and creation of fresh operating systems.
4. All code required for deployments MUST be maintained in a centralized source repository.
5. Deployments MUST be derived from immutable, repeatable sources.
6. Hosts being provisioned MUST get their configurations from source control and MUST NOT rely on resources from an individual user or an engineer’s local computer.
7. Developers MUST provide a way to test code before it is deployed.
8. Devops MUST have an automated and tested rollback plan with every deployment.
9. Devops MUST monitor all deployments and have clear, identified benchmarks for success or failure.
10. Devops SHOULD provide feedback and planning support for hardware, infrastructure, and software dependencies necessary to run applications.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment