Estoy buscando una forma de probar si existe un archivo en mi cliente (solo prueba, no creación). He encontrado el camino (File.exists) en chef, pero eso no fue simple con títeres.
Gracias por adelantado.
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 :
fuente
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 generalonlyif
proporciona más flexibilidad.