У меня есть условие в рецепте, который проверяет некоторые данные узла:
if node[:etc][:group].has_key?('someuser') and node[:etc][:group][:someuser][:gid] == 12345
# do something...
else
# do something else...
end
И я использовал knife node edit hostname.mydomain.com
, чтобы добавить эти данные к моему объекту узла, как показано
$ knife node show hostname.mydomain.com -m
Node Name: hostname.mydomain.com
Environment: ...
FQDN: hostname.mydomain.com
IP: ...
Run List: ...
Roles: ...
Recipes: ...
Platform: ...
Tags: ...
Attributes:..
etc:
group:
someuser:
gid: 12345
members:
tags: ...
Однако вместо предложения if
выполняется предложение else
. Я проверил, что это именно та версия рецепта, который выполняется на узле (посмотрел рецепт, который был загружен на узел). Я думал, что правильно настроил свой узел для выполнения предложения if
, так почему же выполняется предложение else
? Спасибо.