2017-10-19 24 views
-1

Permettez-moi d'abord de mentionner que je suis nouveau à ansible. donc mon approche pourrait être complètement faux ici. J'essaye d'utiliser ansible pour orchestrer quelques étapes pour moi. J'essaie d'écrire un livre de jeu qui va exécuter modifier le chef run_list de mon localhost en utilisant un couteau. Je crois que je suis supposé utiliser delgate_to.Utiliser Ansible pour orchestrer (delegate_to)

Maintenant, si je lance: ansible-PlayBook site.yml --limit = host1, host2, host3

Ma tâche ressemble à ceci au moment, mais son ne fonctionne pas. J'ai une variable de noeud mais ce que je veux vraiment, c'est tous les nœuds qui sont en dehors de l'option --limit ci-dessus et je veux itérer dessus. comment suis-je censé accomplir cela?

- name: Adding monitoring chef cookbooks to node's run list 
    shell: knife node run_list add {{ item }} {{ run_list }} 
    with_items: "{{ node }}" 
    delegate_to: localhost 

Merci.

+0

Il serait probablement plus facile de créer un petit module personnalisé en utilisant PyChef ou une liaison API Python similaire. – coderanger

Répondre

-1
- name: Test 
    hosts: all 
    connection: local 
    tasks: 
    - shell: knife node run_list add {{ inventory_hostname }} {{ run_list }} 
     delegate_to: localhost 
+0

Merci. Tu es incroyable! – sebastianwth

+0

La variable "{{node}}" ne serait-elle pas hors de portée puisque c'est une nouvelle pièce? –