[chef] Re: Chef cookbooks versions and chef versions.


Chronological Thread 
  • From: Joshua Timberman < >
  • To:
  • Subject: [chef] Re: Chef cookbooks versions and chef versions.
  • Date: Fri, 22 Apr 2011 21:22:03 -0600

HI there!

On Thursday, April 21, 2011 at 1:49 AM, Hedge Hog wrote:
> I'd appreciate it opscode can confirm that in their cookbooks repo,
> they bump any of the major or minor or patch version numbers of any
> affected cookbook when they release a Chef version?

Not necessarily.

It depends on whether particular cookbooks need to be modified for a 
particular Chef release. We're pretty happy overall with the Recipe DSL, so 
it doesn't (hasn't?) changed in a way that really needs recipe refactoring, 
and most of the cookbooks we publish just have recipes. When updates to 
cookbooks occur from tickets, or work we've done with clients or helping 
users, we release new versions on the Community site.

Sometimes behavior is deprecated, such as the removal of the "@node" 
notation, or the meta-parameter "notifies" usage. We update cookbooks for 
those, and try and lag a bit on the time between the releases, but there 
hasn't been a very formal release or version management. I've tried to make 
sure and mention versions of Chef required where applicable in the README.

That said, we do have a number of changes that will be coming along with the 
0.10.0 release. I have another post for the mailing lists coming next week to 
describe a number of the changes the 0.10.rc.0 branch is going to introduce, 
so stay tuned.

> with the version in the metadata.json (creating/updating the
> metadata.json as required).
> I'm wondering if there is some assurance that, for example, v0.6.2 of
> zenoss will always point to the cookbook as it was when Chef was at
> v0.9.12.
> Or, in other words, is it possible that when the changes in the
> Cookbooks 0.10.rc.0 branch get merged into master, that an affected
> cookbook metadata version number does not get bumped?
As Matt mentioned, a chef_version in metadata may be useful for this, if 
nothing else to indicate which version of Chef to use when browsing the 
Community site for cookbooks - and exposing that information when using knife 
cookbook site commands.

We definitely recommend that folks obtain the cookbooks from the Community 
site, rather than using the GitHub repository. There are a number of reasons 
for this, least of which is version management, but also discoverability - it 
can be really hard to find cookbooks on GitHub since there's so many forks. 
Also, it is easier to lock into a version, especially with the upcoming 
"Environments"[1][2] and "Cookbook Version Constraints"[3] features in Chef 
0.10. We'll probably tag the repository with something related to 0.9 before 
merging the 0.10 branch.

[1]: http://www.opscode.com/blog/2011/04/21/chef-0-10-preview-environments/
[2]: http://wiki.opscode.com/display/chef/Environments
[3] http://wiki.opscode.com/display/chef/Version+Constraints

-- 
Opscode, Inc.
Joshua Timberman, Director of Training and Services
IRC, Skype, Twitter, Github: jtimberman




Archive powered by MHonArc 2.6.16.

§