我正在尝试仅使用数据包中的一个文件来包含多个项目(特别是users食谱)。所有示例都显示了隔离的JSON对象。如何在一个文件中存储多个?
我试过
{
"id": "1"
},
{
"id": "2"
}
和
[
{
"id": "1"
},
{
"id": "2"
}
]
和
{
"id": "1"
}
{
"id": "2"
}
我得到了:
Net::HTTPFatalError: users_manage[xxxxx] (common::default line 76) had an error: Net::HTTPFatalError: 500 "Internal Server Error"
/opt/chef/embedded/lib/ruby/2.1.0/net/http/response.rb:119:in `error!'
/opt/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.8.1/lib/chef/http.rb:145:in `request'
/opt/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.8.1/lib/chef/http.rb:110:in `get'
/opt/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.8.1/lib/chef/search/query.rb:158:in `call_rest_service'
/opt/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.8.1/lib/chef/search/query.rb:87:in `search'
/opt/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.8.1/lib/chef/dsl/data_query.rb:39:in `search'
我正在使用chef-solo -z
和cook-solo-search cookbook。
我不能从一个文件中传递一系列项目吗?
答案 0 :(得分:0)
您不会在Chef中的一个数据包文件中存储多个项目。只需在单独的文件中指定它。这就是Chef的工作原理。
答案 1 :(得分:0)
你可以尝试这样的事情:
{
"id": "users",
"users": [
{ ... user 1 info ... },
{ ... user 2 info ... },
{ ... user 3 info ... },
...
]
}