Ist es möglich, eine Vars-Datei in Ansible dynamisch in eine andere Vars-Datei einzufügen?Wie VARS-Datei in eine VARS-Datei mit ansible?
I.e. Ich habe Vars-Datei:
---
definitions:
- { product: web_v2, suite: mysuite, include: default_step.yml }
- { product: prod2, suite: mysuite2, include: default_step.yml }
Ich möchte den Inhalt des default_step.yml
dem Wörterbuch hinzugefügt werden. Beachten Sie, dass dies in einer vars-Datei ist, so dass die Dokumentation zum Einbinden einer vars-Datei aus einer Aufgabe nicht zutrifft.
Alle ich denken kann, ist diese Datei mit Jinja Vorlage und verwenden seine {% include %}
Funktion, und dann danach include_vars
von der Hauptaufgabe verwenden, aber das scheint kompliziert ...
Vars-Dateien haben keine integrierte include-Anweisung. Wenn Sie eine vars-Datei mit der 'include_vars'-Aufgabe einschließen, wird der Inhalt des Wörterbuchs außer Kraft gesetzt, wenn Sie in Ihrer Ansible-Konfiguration 'hash_behaviour = merge' definiert haben. Alternativ kannst du mein Action-Plugin ['include_vars_merged'] [1] verwenden. Beide Varianten würden jedoch nur das Wörterbuch auf der ersten Ebene zusammenführen. Vielleicht kannst du mein Plugin als Basis verwenden und tiefes Zusammenführen oder direkt ein "Include" implementieren. [1]: https://gist.github.com/udondan/b730206056a018cf9838 – udondan