Continuous integration tools let application developers go from short release cycles to a smooth stream of constant improvements. Serving up the infrastructure to properly test and deploy those integrations is no trivial matter. At Agile 2013, Michael Ducy, an enterprise architect at OpsCode, explained how Chef can help.
"We call it infrastructure as code," said Ducy, "Essentially you should be able to define how your infrastructure should look in code." Once the code is checked in through something like Jenkins, Chef kicks in to dynamically build a testing environment. It then runs tests, gathers results and tears the testing environments back down again. "As your application goes through its development cycle," Ducy said, "you can have your infrastructure go through the same cycle as well and ensure that your infrastructure changes in sync with your application changes."