Je peux actuellement extraire un attribut d'un nœud à la fois via le nœud de recherche Je veux récupérer deux attributs simultanément via un seul Invocation, quelque chose comme ceci: p> Bien sûr, cela ne fonctionne pas, un seul attribut est obtenu. Depuis que je n'ai presque pas de connaissances chef / couteau, quelqu'un pourrait-il me faire savoir comment faire cela, ou une autre façon d'y parvenir. P> p> code> comme ceci:
3 Réponses :
J'ai commencé à regarder comment écrire mon propre plugin de couteau, mais c'était surchargé.
Couteau Exec Code> a résolu ce problème plutôt élégamment et simplement:
knife exec -E 'nodes.find(:name => "i-7a421114") { |n| puts "#{n.cloud.public_hostname} - #{n.cloud.local_hostname}" }'
à partir d'aujourd'hui (chef: 12.19.36) Votre deuxième requête fonctionne réellement (et vous pouvez ajouter autant d'attributs que vous le souhaitez):
knife search node "chef_environment:production AND name:i-7a421114" -a cloud.public_hostname -a cloud.local_hostname
C'est ce qui a fonctionné pour mes besoins: