4

cubridクックブックにいくつかのレシピがあり、VagrantボックスにCUBRIDデータベースをインストールするために使用しています。各レシピには独自の属性ファイルがあります。例えば:

# attributes/default.rb for recipe/default.rb
default['cubrid']['home'] = "/opt/cubrid"

それで:

# attributes/demodb.rb for recipe/demodb.rb
set['cubrid']['demodb_dir'] = "#{node['cubrid']['home']}/databases/demodb"

次に、私のレシピ/ demodb.rbで、次のような属性を参照します。

include_recipe "cubrid"

CUBRID_DEMODB_DIR = "#{node['cubrid']['demodb_dir']}"

# create a "demodb" directory if it doesn't exist
directory "#{CUBRID_DEMODB_DIR}" do
  user "vagrant"
  action :create
  not_if "test -d #{CUBRID_DEMODB_DIR}"
end

上記は/opt/ cubrid / databases/demodbディレクトリを作成する必要があります。ただし、 / databases / demodbディレクトリを作成しようとするため、失敗します。つまり、 #{node['cubrid']['home']}が設定されていません。

親属性ファイルに設定されている属性を正しく参照するにはどうすればよいですか?

4

1 に答える 1

4

ChefWikiをチェックしてください=>クックブック属性ファイルの順序

使用する

include_attribute 'cubrid'

あなたのattributes/demodb.rbで

于 2012-12-28T09:25:47.633 に答える