ローカルソースの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ファイルをクライアントマシンにコピーしてから、プロバイダーを 'dpkg'に設定して 'package'を使用します。これは機能し、正しいバージョンがインストールされます。
私の質問は、将来このパッケージを更新する適切な方法は何ですか。ソースファイルを変更するだけで、puppetはそれが別のバージョンであることを認識し、このパッケージを更新できますか?インストールされているパッケージのバージョンとソースのdebファイルのバージョンを比較して、puppetはどのように判断しますか?
私はパペットにかなり慣れていないので、私の既存の構成を改善するための提案があれば、それらは非常に感謝されます。
私はまた、この質問をパペットユーザーグループに投稿しましたが、これは私が得た返答でした。
追加latestを追加すると、現在インストールされているパッケージに対してソースファイルがチェックされ、最新の場合は新しいパッケージがインストールされます。古いバージョンにどのようにロールバックするかはまだわかりませんが、これで今のところ問題が解決しているようです。
package { "puppet-dashboard":
provider => dpkg,
ensure => latest,
source => "/tmp/puppet-dashboard_1.0.4rc2-1_all.deb"
}
ここにパペットユーザーグループの投稿へのリンクがあります... http://groups.google.com/group/puppet-users/browse_thread/thread/53f5e7119012fb3e/59e8596701fcaf3f