2016-07-11 24 views
0

Ich habe eine Gruppe mit Quelle "VMware vCenter" in Ansible Tower konfiguriert. Gemäß der Dokumentation kann man Quellvariablen zuAusschließen von bestimmten VMs aus Ansible Inventory: VMware

Aufschalten Variablen gefunden in vmware.ini angeben und durch das Inventar Update-Skript verwendet. Für eine detaillierte Beschreibung dieser Variablen sehen Sie vmware.ini in Ansible github repo.

Ein Auszug aus der Datei GitHub -

Specify a prefix filter. Any VMs with names beginning with this string will not be returned. 
prefix_filter = test_ 

In meinem Fall habe ich mindestens drei Präfixe, die ausgeschlossen werden müssen. Wenn ich dies jedoch versuche, indem ich prefix_filter dreimal spezifiziere, scheint nur der erste zu funktionieren. Wie kann ich VMs ausschließen, die mit anderen Namen als Te beginnen?

enter image description here

+0

Ich bin kein Experte mit Tower, aber mit blossem Ansible würde ich versuchen, neuere Inventar-Skript [vmware_inventory.py] (https://github.com/ansible/ansible/blob/devel/contrib/inventory /vmware_inventory.py) mit jinja 'host_filters' oder um vmware.py' if vm.name.startswith (prefix_filter) 'auf etwas zu patchen, das Ihren Anforderungen entspricht. –

+0

Ich versuche, die vmware.py an meine Bedürfnisse anzupassen. Es wird gesagt, dass es auf vmware.ini-Datei beruht, aber ich sehe diese Ini-Datei nirgendwo. Haben Sie eine Vorstellung davon, welcher der richtige Ort ist, um eine solche Datei zu erstellen? Sogar vmware_inventory.py kann sich auf eine ini-Datei verlassen, aber es wird nicht erwähnt, wo man sie findet/erstellt. –

+0

Zuerst 'VMWARE_INI' env var wird auf Pfad überprüft, dann sieht es im selben Verzeichnis aus wie vmware.py –

Antwort

2

Antwort von meinem Kommentar:

Ich würde versuchen, neuere Inventar Skript vmware_inventory.py mit jinja host_filters zu verwenden oder if vm.name.startswith(prefix_filter), um etwas zu flicken vmware.py, die Ihren Bedürfnissen entspricht.