On Sun, Feb 28, 2010 at 12:41 AM, Adam Jacob firstname.lastname@example.org wrote:
ahead and wipe the cache first, but I can see a world where you want
to keep cookbooks around (for example, you want to actually pull from
multiple sources, and clean up after.)
I think we would be happy to accept a patch that lets this be a
configuration/command line option.
Right. Well I also have a related feature to suggest. Its a case of
wanting to know whether you guys would accept a patch for this
particular feature. And if so, how the feature should be written
To make github tarballs unpacking supported with the
chef-solo -r command.
Just look at this:
curl -L http://github.com/mxcl/homebrew/tarball/master | tar xz
–strip 1 -C homebrew
$ chef-solo -r “http://github.com/username/site-cookbooks/tarball/<branch_or_tag_name>”
Could fetch directly from github, and extract correctly as per usual
into “/tmp/cookbooks”, or “/tmp/site-cookbooks”.
Three reasons I believe this feature is worth having:
- Nearly everybody already use github for their cookbooks.
- It avoids any extra step realeasing your cookbooks into special
tarballs onto amazon S3 or somewhere else.
- This approach can also fully cater for your "multiple sources"
scenario Holoway. Just pull in those sparse cookbooks together into a
git branch (perhaps something we already do as part of our regular
How should a user should be able to specify the downloading of both of
the cookbooks? That is to say, when we want “opscode/cookbooks” aswell
as “site-cookbooks” (because within site-cookbooks we may be just
overriding the odd file).
This i think its also useful for those people who want to gaurantee
having everything reproduced exactly the same as per their chef-server
configuration. Or just don’t want the hassle of figuring out which
cookbooks to download. The way ive been doing it is to download them
beforehand with git, or sync them over ssh with unison. But it would
be just so much better to have it all done for me by the
chef-solo -r command. Like some kind of jedi-trick. Just downright
I don’t believe this particular strategy has to necessarily mean there
are too many cookbooks being downloaded. For example all of
opscode/cookbooks is 2.4 megabytes, as a tarball. And its pretty
straightforward make up a seperate git for solo if you want to trim
things down to just whats necessary.
One more thing we might to check whether the commit for that url has
changed. To decide whether its necessary to download the tarball
again. But that should be pretty easy to do with github and standard
Guess i should ask:
Had this feature been considered before? What was the conclusion?