Я знаю, где все мы можем определить атрибуты шеф-повара, типы атрибутов, а также их уровни приоритета. Я просто хочу понять, как они хранятся внутри.
Предположим, я объявляю атрибут
default[:app][:install] = "/etc/app"
1) Как он хранится внутри? Используется ли он в древовидной структуре (иерархии) в объекте узла или в виде хэш-карт или списка переменных в объекте узла?
2) Кроме того, в большинстве поваренных книг я вижу, что атрибуты объявляются на 2 или 3 уровнях, как указано выше. Я не понимаю, является ли это стандартом или лучшей практикой? Существуют ли какие-либо рекомендации относительно того, как должны быть объявлены атрибуты? Это как-то связано с его внутренней памятью. Могу ли я объявить атрибут как
default[:appinstall]= "/etc/app"
и получить к нему доступ, как показано ниже в моем рецепте?
node[:appinstall]