Я хочу выполнить следующую команду, только когда файл (/ usr / local / bin / papply) не существует. не уверен что туда поставить.
exec { 'git add url':
command =>'git remote add origin https://github.com/testing/puppet.git',
require => Exec['git init'],
cwd => '/home/vagrant/django',
user => 'vagrant',
onlyif => "not sure what to put here"
}
Если вы на Linux, просто сделайте
ls вернется с ненулевым кодом возврата, если файл не существует, и если только он не разрешит исполняемому файлу, на котором он выполняется, если его тест вернет ненулевой код возврата.
источник
На Linux и Puppet> 3,8 попробуйте:
exec не будет работать, если
/a/file.txt
существует.источник
Вы можете рассмотреть возможность использования create , который существует для этой цели:
источник