Próbuję napisać bibliotekę do książki kucharskiej, która upraszcza niektóre typowe wyszukiwania.Jak uzyskać dostęp do bieżącego węzła z biblioteki w książce kucharskiej Chef?
Na przykład chciałbym być w stanie zrobić coś takiego w cookbook/libraries/library.rb
a następnie używać go z przepisu w tej samej książki kucharskiej:
module Example
def self.search_attribute(attribute_name)
return search(:nodes, node[attribute_name])
end
end
Problemem jest to, że wewnątrz pliku biblioteki Chef ani obiekt node
ani funkcja search
nie są dostępne.
Wyszukiwanie wydaje się możliwe przy użyciu Chef::Search::Query.new().search(...)
, ale nie mogę znaleźć niczego, co działa w celu uzyskania dostępu do node
. Wynikowy błąd z tego to:
undefined local variable or method `node' for Example:Module
Korzystanie z Chef 10.16.4.
powiązane http://stackoverflow.com/a/22081109/1626687 – spuder