我试图找出正确的方式来更新/升级deb包使用木偶从本地源deb文件。 我目前的configuration看起来像这样…
class adobe-air-2-0-4 { file { "/opt/air-debs": ensure => directory } file { "/opt/air-debs/adobeair-2.0.4.deb": owner => root, group => root, mode => 644, ensure => present, source => "puppet://puppet/adobe-air-2-0-4/adobeair-2.0.4.deb" } package { "adobeair": provider => dpkg, ensure => installed, source => "/opt/air-debs/adobeair-2.0.4.deb" } }
我首先将deb文件复制到客户端机器,然后使用提供程序设置为'dpkg'的'package'。 这工作,我得到正确的版本安装。
我的问题是什么是未来更新这个包的正确方法。 我可以简单地更换源文件,puppet会知道这是一个不同的版本,并更新这个包? puppet如何确定它已安装的软件包的版本与源deb文件的版本?
我对傀儡很新,所以如果你有一个改进我的现有configuration的build议,他们非常感激。
我也把这个问题发布在傀儡用户组,这是我回来的回应。
如果添加确保最新它将检查源文件对当前安装的软件包,并安装新的,如果它是最新的。 我仍然不确定如何回滚到旧版本,但现在似乎解决了我的问题。
package { "puppet-dashboard": provider => dpkg, ensure => latest, source => "/tmp/puppet-dashboard_1.0.4rc2-1_all.deb" }
这是一个链接到puppet用户组的post… http://groups.google.com/group/puppet-users/browse_thread/thread/53f5e7119012fb3e/59e8596701fcaf3f