It does seem like its not being included :-) ... What does:
echo "# foo" >> /etc/ntp.conf puppet apply -d -e 'include ntp' Do? ken. On Mon, Jun 20, 2011 at 11:46 PM, Craig White <craig.wh...@ttiltd.com> wrote: > > On Jun 20, 2011, at 3:37 PM, Jacob Helwig wrote: > >> On Mon, 20 Jun 2011 15:11:09 -0700, Craig White wrote: >>> Date: Mon, 20 Jun 2011 15:11:09 -0700 >>> From: Craig White <craig.wh...@ttiltd.com> >>> To: puppet-users@googlegroups.com >>> Subject: Re: [Puppet Users] confused about file ensure/require >>> X-Mailer: Apple Mail (2.1084) >>> Message-Id: <290592db-a4cd-4982-9eb0-4c5d09d2e...@ttiltd.com> >>> >>> >>> On Jun 20, 2011, at 2:35 PM, Jacob Helwig wrote: >>> >>>> On Mon, 20 Jun 2011 14:17:46 -0700, Craig White wrote: >>>>> >>>>> my base/default includes this ntp manifest >>>>> >>>>> # cat modules/ntp/manifests/ntp.pp >>>>> # ntp.pp >>>>> >>>>> class ntp { >>>>> case $operatingsystem { >>>>> centos, redhat: { >>>>> $service_name = 'ntpd' >>>>> $conf_file = 'ntp.conf.el' >>>>> } >>>>> debian, ubuntu: { >>>>> $service_name = 'ntp' >>>>> $conf_file = 'ntp.conf.debian' >>>>> } >>>>> } >>>>> >>>>> package { 'ntp': >>>>> ensure => installed, >>>>> } >>>>> >>>>> service { 'ntp': >>>>> name => $service_name, >>>>> ensure => running, >>>>> enable => true, >>>>> subscribe => File['ntp.conf'], >>>>> } >>>>> >>>>> file { 'ntp.conf': >>>>> path => '/etc/ntp.conf', >>>>> ensure => file, >>>>> require => Package['ntp'], >>>>> source => "puppet:///ntp/files/${conf_file}", >>>>> } >>>>> } >>>>> >>>>> # class {'ntp': } >>>>> >>>>> So my questions... >>>>> >>>>> 1. I tested this by moving /etc/ntp.conf on my test client but it doesn't >>>>> seem to replace the file though it clearly says 'ensure => file' >>>>> Is my understanding wrong? >>>>> >>>> >>>> That should replace the file. What output are you getting (if >>>> anything)? >>>> >>>> % cat ../test.pp >>>> file { 'blab': >>>> path => '/tmp/blab.txt', >>>> ensure => 'file', >>>> content => 'asdf', >>>> } >>>> >>>> % puppet apply ../test.pp >>>> notice: /Stage[main]//File[blab]/ensure: defined content as >>>> '{md5}912ec803b2ce49e4a541068d495ab570' >>>> notice: Finished catalog run in 0.06 seconds >>>> >>>> % rm /tmp/blab.txt >>>> >>>> % puppet apply ../test.pp >>>> notice: /Stage[main]//File[blab]/ensure: defined content as >>>> '{md5}912ec803b2ce49e4a541068d495ab570' >>>> notice: Finished catalog run in 0.06 seconds >>>> >>>> % puppet apply ../test.pp >>>> notice: Finished catalog run in 0.04 seconds >>>> >>>>> 2. Files ntp.conf.el & ntp.conf.debian are located in >>>>> /etc/puppet/modules/ntp/files - source => >>>>> 'puppet://puppet:///ntp/files/${conf_file} is this correct? >>>>> >>>> >>>> You should include 'modules' in the 'puppet://' URI, since the form >>>> without it has been deprecated for a while. IIRC it should look >>>> something like: >>>> >>>> puppet:///modules/ntp/files/${conf_file} >>> ----- >>> I sort of think it should just work but it doesn't >>> >>> # mv /etc/ntp.conf /root/ >>> root@ubuntu:/var/www/puppet-dashboard# puppet agent --test --verbose >>> --server ubuntu.ttinet >>> info: Retrieving plugin >>> info: Caching catalog for ubuntu.ttinet >>> info: Applying configuration version '1308606646' >>> notice: Finished catalog run in 0.14 seconds >>> >>> still no /etc/ntp.conf >>> >>> root@ubuntu:/var/www/puppet-dashboard# puppet apply >>> /etc/puppet/modules/ntp/manifests/ntp.pp >>> notice: Finished catalog run in 0.01 seconds >>> >>> above is what I got from the 'puppet apply' command and before from puppet >>> agent command, neither replaced /etc/ntp.conf and neither indicated an >>> error. >>> >>> root@ubuntu:/var/www/puppet-dashboard# ls -l /etc/ntp.conf >>> ls: cannot access /etc/ntp.conf: No such file or directory >>> >>> and this was after I changed the source as you indicated... >>> >>> # tail -n 5 /etc/puppet/modules/ntp/manifests/ntp.pp >>> source => "puppet:///modules/ntp/files/${conf_file}", >>> } >>> } >>> >>> # class {'ntp': } >>> >>> Craig >>> >> >> Doesn't look like you're including the ntp class? >> >> The line that would do it is commented out in >> /etc/puppet/modules/ntp/manifests/ntp.pp, if you're going to apply >> /etc/puppet/modules/ntp/manifests/ntp.pp directly. > ---- > I thought it should work at least for the 'puppet agent' commands... > > # cat manifests/site.pp > import "templates" > import "nodes" > import "modules" > > root@ubuntu:/etc/puppet# cat manifests/templates.pp > class baseclass { > } > > node default { > include baseclass > include ntp > include facts > } > > and the nodes all have > > include baseclass > > in them > > Craig > > -- > You received this message because you are subscribed to the Google Groups > "Puppet Users" group. > To post to this group, send email to puppet-users@googlegroups.com. > To unsubscribe from this group, send email to > puppet-users+unsubscr...@googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/puppet-users?hl=en. > > -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.