Policy files @chefsummit London 2014

Another round, this time about an experimental feature of Chef: the introduction of policy files.
16.10.2014
Jan Nabbefeld
Tags

Between the DevOpsDays in Warsaw and Berlin Robert and I took a trip to the #Chefsummit in London. It had been a short trip indeed, however there are some things we would like to share with you, so read on …

Another round, this time about an experimental feature of Chef: the introduction of policy files. This feature is about getting rid of strong dependencies bundled with semantic cookbook versioning. Daniel DeLeo explained his intentions behind the introduction of the policy file feature. On the one hand it pins down the current state of a collection of local cookbooks based on a checksum rather then on version numbers. Such bundles can be uploaded to a Chef server and used as such. This means you can deploy a node with this exact bundle. This can help to avoid name clashes, e.g. with custom cookbook implementation vs. those living on Chef supermarket. Instead of resolving the cookbook dependencies on the Chef server based on semantic versions it clearly defines a run list of uploaded cookbooks that will be used. On the other hand it (once fully implemented) could be a substitute for the traditional Chef roles and environments.

This is clearly a major change on how Chef delivers configuration code today and not everybody will like it, I guess. There is a blog post explaining the itches and scratches at the getchef blog. Additionally one can have a look at GitHub to see what is already implemented and give it a try. Dan has been asked when he expects policy files functionality to be released: “Not as part of Chef 12.0”.