Назад | Перейти на главную страницу

Puppet Testing, если файл существует

Я ищу способ проверить, существует ли файл в моем клиенте (просто тестируйте, а не создание). Я нашел способ (File.exists) в шеф-поваре, но с марионеткой это было непросто.

Заранее спасибо.

Вы должны создать свою собственную функцию или использовать exec с командой onlyif. что-то вроде :

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

«Родной» способ сделать это без руководителей, если вы используете Puppet 2.6.6+:

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

(Эта функция существует, начиная с Puppet 2.6.0, но был ряд проблем с аудитом, которые действительно были устранены только в выпуске 2.6.6.)

Если вы используете более старую версию, вы также можете указать ресурсу запускаться в noop режим, который просто отображает сообщение, когда Puppet запущен, а файл не существует:

file { '/path/to/myfile':
  ensure => 'present',
  noop   => 'true',
}