2017-01-31 1 views
0

Wir haben eine neue Open-Source-ansible Rolle, die Zusammenstellung von einigen benutzerdefinierten Router automatisiert (OpenWRT) Bilder genannt openwisp2-image-generatoransible Rolle Variable lokal

Das Root-Passwort des Root-Benutzer kann in dem Textbuch YAML definiert werden, aber the process to do so is cumbersome .

Ich mag Benutzer lassen, ihr Passwort und Salz im Klartext auf dem YAML zu definieren und dann hinter der Szene so etwas wie:

import crypt; 
password = crypt.crypt('password', '$1$salt-here$') 

Dieser Wert sollte in einer Variablen gespeichert werden, so kann ich leicht Fügen Sie es den richtigen Rollenvorlagen hinzu.

Kann ich diesen Python-Code lokal statt remote ausführen? Was ist der beste Weg, dies zu tun?

Antwort

1

Es gibt Modul in ansible, Sie sollten in Ordnung sein, es lokal zu betreiben.

Beispiel von http://docs.ansible.com/ansible/playbooks_delegation.html

- name: take out of load balancer pool 
    local_action: command /usr/bin/take_out_of_pool {{ inventory_hostname }} 

# ... 

    - name: add back to load balancer pool 
    local_action: command /usr/bin/add_back_to_pool {{ inventory_hostname }} 
Verwandte Themen