Konvertiert den Wert einer Ansible-Variablen von Kleinbuchstaben in Großbuchstaben

25

Ich arbeite an einem Playbook, um Linux-Systeme mit Active Directory zu verbinden. Es scheint nicht möglich zu sein, den Wert von ansible_hostname in Großbuchstaben umzuwandeln. Für einen der Befehle, die ich ausführen muss, muss der Hostname in Großbuchstaben angegeben werden.

grahamjgreen
quelle
2
Was hast du versucht?
030
1
Ich habe noch nichts ausprobiert, weil ich keinen dokumentierten Weg gefunden habe, dies zu tun.
Grahamjgreen
Könnten Sie ein Beispiel hinzufügen, ein erwartetes Ergebnis und erklären, warum Sie dies benötigen (Kontext)? Warum muss der Hostname in GROSSBUCHSTABEN angegeben werden?
030
Bitte fügen Sie das Code-Snippet hinzu, das Sie bisher haben, damit die Leute den fehlenden Code hinzufügen können
030
Dies kann in stackoverflow gehören
Jacob Evans

Antworten:

3

In meinem Fall, um den Wert einer Variablen in Großbuchstaben umzuwandeln, wird die Variable wie folgt in Großbuchstaben umgewandelt:

{{ ansible_hostname|upper }}
grahamjgreen
quelle
3
Wie haben Sie das gefunden? Hast du eine Dokumentation gelesen?
030
7
Es sollte auf docs.ansible.com/playbooks_filters.html dokumentiert sein, aber wie bei vielen Dingen in Ansible wird davon ausgegangen, dass Sie "nur wissen"; Ich bin auch oft frustriert. ZB gibt es mehrere Beispiele für das Definieren einer Hostvariablen (als Beispiel wird ein NTP-Server verwendet), aber wie eine solche Hostvariable tatsächlich verwendet wird, wird nirgendwo erläutert.
Wurtel
3
Aktuell ist: {{ansible_hostname | upper}}
@wurtel Unter jinja.pocoo.org/docs/templates/#builtin-filters finden Sie alle Filter, die nicht direkt in Ansible dokumentiert sind.
Tim Malone