Puppet Testing se existir um arquivo

8

Estou procurando uma maneira de testar se existe um arquivo no meu cliente (apenas teste e não criação). Eu encontrei o caminho (File.exists) no chef, mas isso não era simples com fantoche.

Obrigado antecipadamente.

    
por bazic 12.04.2011 / 12:19

2 respostas

6

A maneira "nativa" de fazer isso sem executivos se você estiver no Puppet 2.6.6 +:

file { '/path/to/myfile':
  ensure => 'present',
  audit  => 'all',
}

(Essa funcionalidade existe desde o Puppet 2.6.0, mas houve vários problemas com a auditoria que só foram resolvidos com a versão 2.6.6).

Se você estiver em uma versão mais antiga, também poderá dizer ao recurso para ser executado no modo noop , que exibirá apenas uma mensagem quando o Puppet for executado e o arquivo não existir:

file { '/path/to/myfile':
  ensure => 'present',
  noop   => 'true',
}
    
por 12.04.2011 / 18:58
9

Você deve criar sua própria função ou usar exec com o comando onlyif. algo como:

exec { "mycommand":
  path => "/usr/bin:/usr/sbin:/bin",
  onlyif => "test -f /etc/blalba" //yours command 
}
    
por 12.04.2011 / 12:26

Tags