傀儡可以运行一个shell脚本(它从主下载),而不保存它?
我在Puppet模块中有一个步骤,粗略地做了以下设置一些应用程序键: file { '/root/setup_app_keys.sh': ensure => file, owner => 'root', group => 'root', mode => '0700', source => 'puppet:///modules/app_module/setup_app_keys.sh', } exec { 'setup_app_keys': unless => '/etc/pki/tls/private/app-foo.key', command => '/root/setup_app_keys.sh', user => 'root', group => 'root', } setup_app_keys.sh脚本有点太长,无法做成(可读的)单行程序,所以我把它保存到机器的文件系统中并从那里执行。 它在/etc/pki…创build它的文件/etc/pki…并且它工作得很好。 令人讨厌的是,shell脚本基本上是一次性使用的东西。 它不应该再次运行在机器的生命周期,但它必须留在Puppet存储它的文件系统。 如果它被删除,Puppet再次有用地重新创build它。 我认为必须有一种方法来使用exec完全重写,这将允许我在需要的时候从puppetmaster下载脚本,执行一次,然后放弃脚本(或者不把它存储在第一位)。 但是我试过的一切都是这样的: command => 'puppet:///modules/app_module/setup_app_keys.sh', 要么 command => 'curl http://__[various puppetmaster URLs]__ | sh', […]