Chef Ideas

We believe that the best way to build software is to do it in close collaboration with the people who use it. We invite you to submit your ideas using the form below. Please be sure to include the problem for which you are solving and the benefits of implementing the idea.

We do our best to implement as many Ideas as we can. Our Product team will evaluate all submitted ideas in a timely manner and will disposition each into one of the following categories: will integrate into the product roadmap, further research is needed, unlikely to implement.

Thanks for collaborating with us!

Chef-client should support multiple -j options

Chef-client should support multiple -j/--json-attributes options and merge them.

~/chef $ cat a.json 
{
"my_cookbook": {
"attribute_a": 1
}
}
~/chef $ cat b.json
{
"run_list": [
"my_cookbook"
],
"my_cookbook": {
"attribute_b": 1
}
}

With chef-client run and providing the above 2 json files, it should merge and associate both "attribute_a": 1 and "attribute_b": 1 to the node attributes. In current scenario, it just honours the last passed json file:

chef-client -z -c solo.rb -j a.json -j b.json

Node will have only "attribute_b": 1 and "attribute_a": 1 is ignored.

This also relates to https://github.com/chef/chef/issues/5345 which was auto closed via bot.

  • Guest
  • Sep 28 2020
  • Currently Declined
  • Attach files
  • Admin
    Tim Smith commented
    25 Jan, 2021 05:21am

    Thank you for your suggestion. At this point, we are not actively expanding the functionality of running Chef Infra Client in Solo mode. Due to this, we won't be exploring this feature. We'd still gladly accept any GitHub Pull Requests for this functionality, so if you feel you could implement it yourself that would be a potential option.