Respuestas:
La forma "nativa" de hacer esto sin ejecutivos si está en Puppet 2.6.6+:
file { '/path/to/myfile':
ensure => 'present',
audit => 'all',
}
(Esta funcionalidad existe desde Puppet 2.6.0, pero hubo una serie de problemas con la auditoría que solo se resolvieron con la versión 2.6.6).
Si tiene una versión anterior, también puede indicarle al recurso que se ejecute en noop
modo, que solo mostrará un mensaje cuando Puppet se ejecute y el archivo no exista:
file { '/path/to/myfile':
ensure => 'present',
noop => 'true',
}
Debe crear su propia función o usar exec con el comando onlyif. algo como :
exec { "mycommand":
path => "/usr/bin:/usr/sbin:/bin",
onlyif => "test -f /etc/blalba" //yours command
}
creates => '/etc/blabla'
" mejor que un " onlyif
"?
creates
tendría el mismo resultado y sería mucho más simple (y un poco más rápido). Sí, en general onlyif
proporciona más flexibilidad.