once per day Once a week to once a month Once a week to once a month (but less often) Lead time Less than one hour One week to a month One week to a month (but less often) Mean Time to Recover Less than one hour Less than one day One day to one week
patterns » Test infrastructure changes as part of development » Post-incident reviews » Build pipelines » Changes during business hours » Isolation testing » Optimized batch sizing
efficient • Test them in isolation. Deploy in isolation. • Teams must be able to work on the entire lifecycle of the task • Application architecture must support small changes
the Puppet State of DevOps Report 23x 44x 27x Deployment patterns are reused Testing patterns are reused Configurations in a Config Management tool High performance
and build and test each change automatically, as early as possible, usually several times a day. Continuous Delivery -- the software can be released to production at any time, often by automatically pushing changes to a staging system. Continuous Deployment pushes changes to the production automatically. CI / CD
The purpose of deployment is to validate the running application AND its deployment. Production-like environments should be automatically replicable Your first deploy should be the infrastructure. Production-like environments