Читать параметры от JSON Chef

Я пытаюсь передать некоторые значения в рецепт шеф-повара из файла JSON.
Все, что я хочу, это установить некоторые значения в моем рецепте из удаленного файла.

Мой файл json my_conf.json выглядит так:

{ 
  "something": {
    "listen_port": "81",
    "listen_path": "/myapp"
  },
  "users":{
     "user": "me"
  }
}

Я запускаю своего шеф-клиента с этим json в параметрах:

chef-client -z run.rb -j my_conf.json

В рецепте я попробовал:

@test = node[:something][:listen_port]
@test = node['something']['listen_port']
@test = node.default[:something][:listen_port]

Но ничего не работает. Есть идеи?

1 ответ

Решение

node['something']['listen_port'] правильно, но node[:something][:listen_port] будет работать так же. Более вероятно присвоение переменной экземпляра (@test =) вместо обычной локальной переменной (test =Запутывает вещи. Шеф-повар делает много магии с Руби внутренне.

Другие вопросы по тегам