chef-solo不使用-j标志设置覆盖属性

时间:2018-06-15 16:12:32

标签: attributes chef-solo

我在/var/chef/roles/my_role.json中有一个角色文件:

"name": "reports_server",
  "description": "A test role for setting attributes for our Reports Server",
  "override_attributes": {
    "dn_reports_server": {
      "reports": {
        "branch": "testing",
      },
    }
  },
  "run_list": [
    "recipe[cookbook::user_group]",
    "recipe[cookbook::install_nodejs]",
    "recipe[cookbook::install_reports]",
    "recipe[cookbook::html_to_pdf]"
  ]
}

我在/etc/chef/solo.rb中有一个配置:

cookbook_path "/var/chef/cookbooks"
data_bag_path "/var/chef/data_bags"
file_cache_path "/var/chef/cookbooks/"
log_level :info
log_location STDOUT
role_path "/var/chef/roles"
solo true

我使用的命令是:chef-solo -c /etc/chef/solo.rb -j /var/chef/roles/my_role.json和chef-solo 14.1.12

在运行期间,Chef仅使用在cookbook的attributes/default.rb部分中建立的默认属性。我很确定这不应该发生。我是否错误地调用了这些JSON属性?尽管被调用,为什么chef-solo会忽略JSON文件中的值,尤其是“override_attributes”?对于不同的版本,必须使用两种不同的烹饪书是没有意义的。

0 个答案:

没有答案