Continuous delivery is a software development practice where code changes (in source control) are automatically:
- built (run build and unit tests), known as continuous integration,
- tested (deploy to test environments, run all the tests), known as continuous testing, and
- prepared for a release (deploy to production environment), known as continuous deployment.
To understand the first steps of this pipeline, check out an example of a cookbook for Chef: how to write a Suricata cookbook.