13

シェフレポのレシピ全体でいくつかの方法を共有したいと思います。クックブック レベルでは、ライブラリ ディレクトリのモジュールにコードを配置できることを知っています (関連する質問を参照)。私が探しているのはそのようなものですが、Chef レポのすべてのクックブックで利用できます。

私はいくつかの解決策を考えることができます:

  • gem を作成し、chef 実行の一部として gem をインストールします。これはやり過ぎのようです。
  • ファイルをいくつかのフォルダーに配置し、そのフォルダーを$LOAD_PATHレシピ ファイルの に追加します。シェフサーバーはリポジトリについて何も知らないため、実際の展開ではうまくいかない気がします。
  • ファイルをいくつかのフォルダに置き、それを各クックブックのライブラリディレクトリにシンボリックリンクします。

最後のオプションが最も実行可能のようです。私がやりたいことを行うためのより良い/より慣用的な方法はありますか?

4

2 に答える 2

1

シェフのリソース (1. LWRP、2. HWRP ) またはメソッド (3. 「ライブラリ」)のいずれかの形式でコードを共有できる 3 つの異なるオプションがあります。最初に LWRP を検討することをお勧めします。この回答は、言及された手法の違いを説明するのに非常に適していると思います。

于 2015-09-15T17:55:30.737 に答える