11

デプロイされたクックブックのバージョンはどこにありますか? 自動属性はバージョンをリッスンしていないようです。

レシピまたはテンプレートのどこかに cookbook_version にアクセスする方法はありますか?

4

1 に答える 1

15

Chef の実行が認識しているクックブック コレクションにアクセスする必要があります。

run_context.cookbook_collection[cookbook_name].metadata.version

実行コンテキストは、Chef 実行のコンテキストを追跡するオブジェクトです。

cookbook_collection メソッドは、Chef がローカル キャッシュに持っているすべてのクックブックのハッシュのようなオブジェクトを返します。

cookbook_name メソッドは「この」クックブックの名前を返すため、コレクション内のクックブックを検索します。コレクションには、アクセサーを介して選択できるクックブックのすべてのメタデータが含まれています。この場合、「バージョン」が必要なので、「バージョン」アクセサーを使用します。

于 2012-12-04T19:34:04.373 に答える