On Mar 16, 2012, at 10:21 AM, jimbob palmer wrote: > The Core Types Cheat Sheet at > http://projects.puppetlabs.com/projects/puppet/wiki/Core_Types_Cheat_Sheet/ > says: > > > The Trifecta > > Package/file/service: Learn it, live it, love it. If you can only do this, > you can still do a lot. > > package { 'openssh-server': > ensure => installed, > } > > file { '/etc/ssh/sshd_config': > source => 'puppet:///modules/sshd/sshd_config', > owner => 'root', > group => 'root', > mode => '640', > notify => Service['sshd'], # sshd will restart whenever you edit this > file. > require => Package['openssh-server'], > } > > service { 'sshd': > ensure => running, > enable => true, > hasstatus => true, > hasrestart => true, > } > > > I can see two problems with this example, and rather than open a ticket I > wanted to make sure I haven't overlooked something. > > 1. Is there any special magic requiring that the config file exist before > Puppet starts the sshd service? > If not, shouldn't there be a requires in the service on the config file?
A notify relationship sets up a resource chain, just as a requires does. A resource with a notify attribute will always be managed before its notify target and a resource with a requires attribute will always be managed after its require target. > 2. The sentence "sshd will restart whenever you edit this file." is a bit > confusing, because it hints at puppet using some kind of inotify mechanism to > restart sshd when the config file changes. > Would it be better to write that sshd will restart whenever puppet updates > this file? Puppet will restart the sshd on its next run even if you've changed the config file locally. Prior to restarting the service, though, Puppet will have undone your local edits. -- Peter M. Bukowinski Sr. Systems Engineer Janelia Farm Research Campus, HHMI -- 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.
