ActiveMQ cookbook needs to rev to 5.5.1

The mirror no longer has 5.5.0 so the activemq cookbook fails to
download it - hence the cookbook fails.

This caused me an outage this morning. :frowning:

Idea:
Would there be a way to write the cookbooks so they grab their
external downloads and stash them in a repository.
Then normal operation would get them from the repository.

Cheers,
Edward

On Oct 26, 2011, at 9:58 AM, Edward Sargisson wrote:

Would there be a way to write the cookbooks so they grab their
external downloads and stash them in a repository.
Then normal operation would get them from the repository.

I've been told by Opscode personnel that it is Best Current Practice for a site to set up their own local repo for all the repos & packages that they depend on, and then to use that local repo during their provisioning process. However, at least for RPM-based OSes like CentOS, I have not yet found a chef cookbook for easily mirroring repos. There is the yum-utils package that can be installed, and it has a reposync tool that it includes, but I have yet to find any cookbook that has been wrapped around these tools to make this process more automated.

I just recently started a private discussion with some others in the chef community on this very subject. I don't know if we'll end up doing a collaboration or not, or maybe we can just turn up a suitable cookbook that has already been developed.

But I think we're all in the same boat on that subject, so this is clearly a community issue that needs to be addressed one way or the other.

--
Brad Knowles bknowles@ihiji.com
SAGE Level IV, Chef Level 0.0.1

Hello!

On Wed, Oct 26, 2011 at 8:58 AM, Edward Sargisson esarge@pobox.com wrote:

The mirror no longer has 5.5.0 so the activemq cookbook fails to
download it - hence the cookbook fails.

This caused me an outage this morning. :frowning:

You can set the version to download as an attribute. For example in an
"activemq-broker" role:

name "activemq-broker"
description "Servers that provide ActiveMQ"
run_list("recipe[activemq]")
default_attributes(
"activemq" => {
"version" => "5.5.1"
}
)

Chef will use the value from the role over the value in the cookbook's
attributes file when it runs.

Idea:
Would there be a way to write the cookbooks so they grab their
external downloads and stash them in a repository.
Then normal operation would get them from the repository.

That is outside the purview of Chef and cookbooks.

However it is totally reasonable to write a cookbook that sets up a
yum repository for you. I wouldn't do the download/sync of packages in
such a cookbook as that can take a long time depending on your
connection (and what packages you're downloading). I wrote our
reprepro cookbook for that purpose for Debian/Ubuntu systems.

--
Opscode, Inc
Joshua Timberman, Technical Program Manager
IRC, Skype, Twitter, Github: jtimberman