Our group is currently moving from RHEL5 and an in-house baseline
management system and yum repositories to RHEL6, Puppet , and RHN Satellite.
With our old homebrew management framework we had a lot of flexibility and
ease in declaring which packages should be allowed or disallowed, defined
either by-system or by-class/role of system.
A couple examples:
In Joe's server definition file:
install - tomcat, java17-oracle, httpd, tomcat, confluence
uninstall - java16-sun
Or 'class development workstation':
install - hg, git, subversion, eclipse, vim, ...(tens or hundreds of RPMs)
uninstall - rcs, emacs
Now for puppet it seems you can only declare/manage a package resource in 1
place across all of puppet, so the only semi-viable way to manage package
baselines so far is to make a module for each RPM we care about managing,
then add those modules to node definitions or to classes, since you can
include a module many times and it doesn't mind.
An example would now be:
manifests/nodes/joe_ws.domain.tld/node.pp:
include development_workstation
And in manifests/classes/development_workstation/init.pp
include mercurial
include git
include subversion
include eclipse
include vim
I kind of feel like I'm doing things in a more complicated way than I need
to, but I'm not sure how to simplify - so I ask the more experienced puppet
peeps out there, how are you managing software baselines?
Thanks!
--
You received this message because you are subscribed to the Google Groups "Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-users+unsubscribe@googlegroups.com.
To post to this group, send email to puppet-users@googlegroups.com.
Visit this group at http://groups.google.com/group/puppet-users?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.