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 回答