5

変数付きのテンプレートがあります。これらの変数はデータバッグにあり、環境によって異なります。例:

# Template
address =$foo

# Environment:
develoment

# Databag:
$foo = "sdfsdf"

どうすればそれらすべてを組み合わせることができますか?、情報をどこに置くべきかわかりません。

テンプレート内

address = "Http://ffff/dfg/"

ここに変数を入れる必要があります

address = $pepe

私のデータバッグには、環境に応じて次のデータがあります。

 $pepe = "Http://ffff/dfg/"
 $pepep ="Http://ffff/dewrwerw/

レシピに何を書けばいいのかわからない。

4

1 に答える 1

11

レンプレート:

address = <%= @pepe %>

データバッグ:

{
  "_default": {
    "pepe": "Http://ffff/dfg/"
  },
  "staging": {
    "pepe": "Http://ffff/staging"
  },
  "production": {
    "pepe": "Http://ffff/prod"
  }
}

レシピ:

data = data_bag_item( 'databagname', 'itemname' )

template '/path/to/file' do
  variables( pepe: data[node.chef_environment]['pepe'] )
end
于 2013-02-18T11:29:53.160 に答える