define puppet_directory($ensure = directory) {
notify { "pupdir-$name": tag => test }
file { $name:
ensure => $ensure,
mode => 664,
recurse => true,
ignore => [".gitignore", ".*.sw?"],
tag => test
}
}
puppet_directory { "/tmp/files": }
first run
1
2
3
notice: //Puppet_directory[/tmp/files]/File[/tmp/files]/ensure: created
notice: pupdir-/tmp/files
notice: //Puppet_directory[/tmp/files]/Notify[pupdir-/tmp/files]/message: defined 'message' as 'pupdir-/tmp/files'
change it
1
2
% touch /tmp/files/foo
% chmod 400 /tmp/files/foo
2nd run
1
2
3
4
5
6
notice: /File[/tmp/files/foo]/mode: mode changed '400' to '664'
notice: pupdir-/tmp/files
notice: //Puppet_directory[/tmp/files]/Notify[pupdir-/tmp/files]/message: defined 'message' as 'pupdir-/tmp/files'
$ ls -l /tmp/files
-rw-rw-r-- 1 rip rip 0 Aug 5 13:44 foo