>> I have to install a client/server app. The server end is easily set
>> up but I need a puppet module that ensures a package is installed on a
>> managed node only if the server package has already been installed on
>> a different server.
>>
>> Is there a way to do this?
As others have said, it's tricky - Could you maybe try something funky
with exported resources here? (this is untested and pretty hacky :P )
# server
define clientenabled () {
@@package { "client":
ensure => latest,
}
}
package { "server":
ensure => latest,
}
clientenabled { "foo":
require => Package['server']
}
# client
Package <<| title == "client" |>>
Depends on the exact behavior you want, this may be completely the wrong
approach - this will just mean that the client will not get installed
until Puppet has been run and installed the server package first - it
wont actually do the orchestration for you though
--
Craig Dunn |
http://www.craigdunn.org
Yahoo/Skype: craigrdunn | Twitter: @crayfishX