On 2/23/2009 9:40 AM, Michael L. Artz wrote:
> - distributing an RPM to a series of clients (namely RabbitMQ) and
> installing the package? I realize that I can do it naively by pulling
> the file from the puppetmaster and then using the package resource to
> install it via RPM, but I was wondering if there was a better way to
> do this.
Make a regular http- or ftp-accessible repository (instead of using the
puppetmaster's file distribution facility), and use one of the
higher-level rpm-based package providers with the puppet package type
(yum, aptrpm, etc.). You might also be able to do this just with rpm and
a repository (I'm Redhat-illiterate). But the important thing would be
to ensure you can check if a package is already installed before you
attempt another rpm installation. Even if you had to fall back to an
exec { "install-rabbit":
command => "rpm -Uvh http://path/to/rabbit.rpm"
}
you could make that idempotent with an unless parameter:
exec { "install-rabbit":
command => "rpm -Uvh http://path/to/rabbit.rpm",
unless => "rpm -qsomethingsomething rabbit | grep -q installed"
}
> - distributing and compiling a tarball? Its a pretty standard
> autoconf/automake tarball (i.e. './configure --prefix=/usr; make; make
> install') ... is there a "standard" way to do this with puppet. I'm
> also using a source-built Ruby and RubyGems, which would be nice to
> manage with puppet.
I use GNU stow and a stowedpackage definition:
http://blogs.cae.tntech.edu/mwr/2008/02/01/the-autostow-is-dead-long-live-stowedpackage/
-- this wouldn't exactly work for things you insist on building per
node, but could be modified. It'd be very similar to what Jeremy pointed
to in the other reply.
--
Mike Renfro / R&D Engineer, Center for Manufacturing Research,
931 372-3601 / Tennessee Technological University
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Puppet Users" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/puppet-users?hl=en
-~----------~----~----~----~------~----~------~--~---