I'm learning Puppet by example and writing some modules to manage our current RHEL and Ubuntu servers. My first serious attempt is a Zend Server module.
Since Puppet has a Yumrepo, but no Aptrepo resource how would you structure a module to add the repo and install the packages in a distro independent way? People who use the module shouldn't have to care which distro the server runs.
Another thing. I'd like to have Puppet set the ZS admin password after installation, but can't find where it's set. Any idea?
-
I'm only beginning to checkout Puppet myself, but I did look at the file:
/usr/local/zend/bin/gui_passwd.shwhich changes that password (it's there in case you forget the original password).At the bottom of the script, it puts the MD5'd password into the file:
/usr/local/zend/gui/application/data/zend-server-user.ini, though it has to edit the file, with 'sed'.Martijn Heemels : Thanks, that seems to work!From Alister Bulman -
Something like:
class usefulclass { if $operatingsystem == "RHEL" { repo { ... before => Package["zend"] } } else { file { "sources.list"... //or however you choose to manage sources.list before => Package["zend"] } } }Don't have a RHEL box handy, but just run
facter operatingsystemto find out what the return value to look for is.Martijn Heemels : So you'd suggest handling the operatingsystem switch in the modules instead of the manifests? Sounds like a good idea since it would make the modules more plug-and-play.BMDan : Indeed, that's how we do it.From BMDan
0 comments:
Post a Comment