So I have the following puppet rule. Pasted below. The problem is,
sometimes, I see it looks like it is running the File before it sets the
variable $sendmail_file in the case statement above. The reason I believe
this, is because of the error message that it reports. Which is
Error Message:
err: /File[sendmailcf]/ensure: change from absent to file failed: Could not
set 'file on ensure: No such file or directory -
/etc/mail/sendmail.cf.puppettmp_6850 at
/etc/puppet/modules/sendmail/manifests/client.pp:40
What I can't figure out, is how to ensure that that variable gets set,
before it gets used. Any pointers?
My puppet rule.
class sendmail::client {
case $::operatingsystem {
/^(RedHat|CentOS)/: {
case $::lsbmajdistrelease {
'5': {
$sendmail_file = 'sendmail.cf.rhel5'
}
'6': {
$sendmail_file = 'sendmail.cf.rhel6'
}
default: {
fail("Unsupported OS Major version ${::operatingsystem}
${::lsbmajdistrelease}")
}
}
}
default: {
fail("Unsupported operating system: ${::operatingsystem}")
}
}
service { sendmail:
name => sendmail,
enable => true,
ensure => running,
}
file { sendmailcf:
path => "/etc/mail/sendmail.cf",
mode => 644,
owner => root,
group => root,
ensure => present,
source => "puppet:///modules/sendmail/$sendmail_file",
notify => Service[sendmail],
}
}
--
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 [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/puppet-users/234cfec6-ce05-4861-8334-f4daab55c20c%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.