Debian

如何使用 puppet 和 .deb 文件更新包

  • October 11, 2010

我正在嘗試找出使用本地源 deb 文件中的 puppet 更新/升級 deb 包的正確方法。我目前的配置看起來像這樣……

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 文件複製到客戶端電腦,然後使用“package”並將提供程序設置為“dpkg”。這有效,我安裝了正確的版本。

我的問題是將來更新此軟體包的正確方法是什麼。我可以簡單地更改源文件並且 puppet 會知道它是一個不同的版本並更新這個包嗎?puppet 如何確定它安裝的軟體包版本與源 deb 文件的版本?

我對 puppet 很陌生,所以如果您對改進我現有的配置有任何建議,我們將不勝感激。

我還在 puppet 使用者組上發布了這個問題,這是我得到的回复。

如果添加確保最新,它將根據目前安裝的包檢查源文件,如果是最新的,則安裝新的。我仍然不確定您將如何回滾到舊版本,但這似乎解決了我現在的問題。

package { "puppet-dashboard":
provider => dpkg,
ensure   => latest,
source   => "/tmp/puppet-dashboard_1.0.4rc2-1_all.deb"
}

這是 puppet 使用者組文章的連結… http://groups.google.com/group/puppet-users/browse_thread/thread/53f5e7119012fb3e/59e8596701fcaf3f

引用自:https://serverfault.com/questions/188632