it-swarm.com.de

Ansible Bedingungen - Wildcard Match String

Ich habe die folgende Bedingung in einer Ansible-Aufgabe:

when: ec2_tag_Name == 'testhost01'

Es funktioniert gut, aber ich möchte einen Platzhalter auf dem ec2_tag_Name Feld.

Also so etwas

when: ec2_tag_Name == 'testhost*'

Das Ziel ist es, etwas wie testhostxtesthost12testhostABC etc etc nur alles, was mit testhost am Anfang der Zeichenfolge übereinstimmt.

Ist das möglich? Kann nicht scheinen, es zum Laufen zu bringen.

5
emmdee

Von Strings testen :

Verwenden Sie den Filter "Übereinstimmung" oder "Suche", um Zeichenfolgen mit einem Teilstring oder einem regulären Ausdruck abzugleichen

In Ihrem Fall:

when: ec2_tag_Name is match("testhost.*")
6

Das funktioniert auch.

when: "ec2_tag_Name.startswith('testhost')"

Sie können auch logische Operatoren wie und und oder kombinieren

2
samtoddler