2017-07-14 12 views
-1

Das ist mein Textbuch ist,Vars_prompt in Playbooks

--- 
- hosts: alpha 
    vars: 
    company: vogo 
    tasks: 
    - name: debugging 
     debug: 
     msg: "{{ansible_hostname}}" 
    vars_prompt: 
    - name: "company" 
     prompt: "Where do you work" 
     private: no 

- hosts: webservers 
    vars_prompt: 
    - name: "fathercompany" 
     prompt: "Where your father works" 
     private: no 
    tasks: 
    - name: test 
     debug: 
     msg: just testing "{{company2}}" 

Hier werden die Schritte der Ausführungsablauf sind, wenn ich das Textbuch laufen,

1 - Prompt 1 (Wo arbeitest du)

2 - Aufgabe Debuggen

3 - Prompt 2 (Wo Ihr Vater arbeitet)

4 - Aufgabe tes t

Ich habe ein paar Fragen.

Zuerst, wenn ich dieses Playbook ausführe, sollte die Aufgabe "Debugging" zuerst ausgeführt werden und dann sollte die Eingabeaufforderung nach dem Firmennamen fragen. Aber wenn ich dieses Buch lese, fragt es im allerersten Schritt nach "Wo arbeitest du?". Warum zuerst auffordern? Fehle ich eine Art von Parameter, die ich hätte passieren sollen?

Zweitens, ich habe zwei Aufforderungen hier setzen,

ich die Eingabeaufforderung Wert company im Hostblock verwenden möchten. Aber es gibt mir einen Fehler, wenn ich das versuche.

Kann ich den Eingabeaufforderungswert von einem Host-Block in einen anderen nicht verwenden?

Drittens

Wie kann ich Aufforderungen in Rollen?

Antwort

2

vars_prompt sind an bestimmte spielen gebunden, so dass Sie sie nicht in anderen Spielen direkt verwenden können. Sie können jedoch set_fact im ersten Spiel verwenden, um einen Fakt für einen Host festzulegen, und in späteren Spielen über hostvars darauf zugreifen.

Prompts am Anfang jeden Spiels ausgeführt werden, funktioniert sie nicht, wo Sie vars_prompt Block platzieren Rolle - vor oder nach tasks Abschnitt (es ist ein nach allen YAML-Wörterbuch, in der Tastenfolge bedeutet nichts).

Ich würde vorschlagen, keine Eingabeaufforderungen zu verwenden, wenn Sie einige externe Daten benötigen, übergeben Sie es über extra variables.

Verwandte Themen