如何--nogpgcheck
通过 puppet 获取 yum 选项?我试过
package { 'unsigned-package':
ensure => latest,
install_options => ['--nogpgcheck'],
}
和
package { 'unsigned-package':
ensure => latest,
install_options => ['nogpgcheck'],
}
但查看代理运行的输出,yum 没有获得该选项。
另外(这也许是它对我不起作用的原因),我如何验证我的木偶是否具有安装选项特征?
我正在运行 puppet 3.3.0-rc2。
答案1
我发现使用 puppet 3.7.1 将“install_options”传递给 yum 提供程序是可行的。我能够使用它成功传递“--nogpgcheck”。现在只需更新您的 puppet 即可。
答案2
我已经能够回答我的第二个问题了,看起来安装选项在 3.3.0-rc2 版中尚未实现 yum。
$ grep -ro install_options /usr/lib/ruby/site_ruby/1.8/puppet/provider/package/ | sort | uniq
/usr/lib/ruby/site_ruby/1.8/puppet/provider/package/msi.rb:install_options
/usr/lib/ruby/site_ruby/1.8/puppet/provider/package/sun.rb:install_options
/usr/lib/ruby/site_ruby/1.8/puppet/provider/package/windows.rb:install_options
真正的问题的答案是,由于这是一个自定义存储库,因此技巧是禁用 gpg 检查。这可以在实例化木偶尤姆雷波类型,例如
yumrepo { 'customrepo':
gpgcheck => 0,
}
另一个选择,正如我在问题下方的评论中所述,是对软件包进行 gpg 签名。
答案3
从 Puppet 3.4.0 开始
class pkgoptions {
package { 'strace':
ensure => 'installed',
provider => 'yum',
install_options => [ '--noplugins', '--enablerepo=fedora' ],
# or install_options => [ '-t', 'squeeze-backports' ], for Debian backports
}
}
参考:http://www.unixdaemon.net/tools/puppet/puppet-package-install-options.html