2012-03-27 17 views
22

vciderをインストールするための私のコードの下に。私はシェフを勉強していますが、dpkgをインストールするのに何も見ていません。私はスクリプトでバージョンを使用したいと思います。以下のコードは動作します。シェフを使ってDebianパッケージをインストールする慣用方法は何ですか?

script "install_vcider" do 
    interpreter "bash" 
    user "root" 
    cwd "/tmp" 
    code <<-EOH 
    wget https://my.vcider.com/m/downloads/vcider_2.0.1b_amd64.deb 
    dpkg -i vcider__amd64.deb 
    EOH 
end 

上記のコードでも、2.0.1bを#{version}に置き換えることはできますか? 属性ファイル - >デフォルトの[:vcider] [:バージョン] 2.0.1b

recipe file - > version = node[:vcider][:version] 

答えて

41

正しいことは、組み込みのリソースタイプを使用することです。また....これは私がインストールした後に正しいです:)

remote_file "/tmp/vcider_#{version}_#{arch}.deb" do 
    source "https://my.vcider.com/m/downloads/vcider_#{version}_#{arch}.deb" 
    mode 0644 
    checksum "" # PUT THE SHA256 CHECKSUM HERE 
end 

dpkg_package "vcider" do 
    source "/tmp/vcider_#{version}_#{arch}.deb" 
    action :install 
end 
+0

ありがとう:あなたは適切versionarch変数を設定していると仮定?サービス "vcider-nmd" do は、ステータス=> true、:restart => true、:reload => trueを返します。 アクション[:enable、:start] end – Tampa

+0

@Tampaは妥当と思われます。私は実際に人形館にいるのは残念ですが、私のシェフはますます錆びています。 –

+0

ああ....私はそれを動作させるために必要なものを取り除かなければならなかった。 – Tampa

関連する問題