我在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中创建它的文件……它运行得很好.
令人讨厌的是,shell脚本基本上是一次性使用的东西.它不应该在机器的生命周期中再次运行,但它必须保留在Puppet存储它的文件系统上.如果它被删除,Puppet会再次帮助重新创建它.
我认为必须有一种方法可以使用exec专门重写它,这将允许我在需要时从puppetmaster下载脚本,执行一次,然后丢弃脚本(或者不首先存储它).但我尝试的一切都是以下形式:
command => 'puppet:///modules/app_module/setup_app_keys.sh',
要么
command => 'curl http://__[various puppetmaster URLs]__ | sh',
这两种方法似乎都不起作用.我问的太多了,还是这种方法有缺陷?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。