Читать параметры от 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 =
Запутывает вещи. Шеф-повар делает много магии с Руби внутренне.