2012-04-12 6 views
1

私はこのエラーをシェフから受け取りましたが、ドキュメントを持っていた人や他の人を見つけることはできません。「データバッグのアイテムをデータバッグにリストできませんでした」の根本原因は何ですか?

根本的な原因は何ですか?

+1

シェフがデータバッグでアイテムを見つけられないときは、起こるようです。おそらく、あなたはdata_bag_itemsでそれをデバッグできますか? [1](http://wiki.opscode.com/display/chef/Data+Bags)[2](http://rubydoc.info/gems/chef/0.10.4/Chef/Mixin/Language) – James

+2

できますchef-client -l debug出力を貼り付けますか? – jtimberman

+0

本当にこの質問に答えるには十分ではありません。 –

答えて

0

さらに詳しい情報がここに役立ちます。これを見ると、どのようなワークフローがダウンしていますか?

私はナイフコールではないことを前提にしています。私はシェフの宝石の中であなたのエラーの原因の周りにいくつかのデバッグを入れようとし、データバッグリストとデータバッグショーと呼ばれました。どちらもミックスインコードに当たっていないようだ。

次は)今、私はdata_bagに他のすべての参照(ので、そのミックスインのコードにアクセスしているものにと途方に暮れてよミックスイン/言語

def data_bag(bag) 
    DataBag.validate_name!(bag.to_s) 
    rbag = DataBag.load(bag) 
    rbag.keys 
    rescue Exception 
    Log.error("Failed to list data bag items in data bag: #{bag.inspect}") 
    raise 
end 

下のシェフの宝石であなたのエラーの原因であります宝石の中では、data_bag_itemオブジェクトの周りのコードを参照してください。

作成したカスタムコードはありますか?間違ったモジュールを参照している可能性はありますか?シェフは、データバッグ「ID」を見つけることができないときは、通常、このエラーを取得する

0

は、私はシェフがdata_bag_itemファイル名を気にしないと信じて、私は次のようdata_bag

data_bags 
    apps 
     mywebserver.json 


apps 
    recipes 
     default.rb 

[mywebserver.json] 
{ 
    "id": "mywebserver" 
} 

[default.rb] 
data_bag_item("apps", "mywebserver") # The id specified in the json 

をロードしたいと言いますデータバッグ項目のjsonファイルの1つに指定された "id"のみを対象としています。

関連する問題