Vordefinierte Diktierschlüssel in Ansible YAML

Vordefinierte Diktierschlüssel in Ansible YAML

Ich versuche, in einer Ansible-Aufgabe ein Dict zu verwenden, das wie folgt definiert ist:

im vars/main.ymlOrdner:

username: user1
userpass: pass1
users:
  "{{ username }}":
    pass: "{{ userpass }}"

Dies funktioniert nicht in Ansible 2.9: Ansible scheint den Wert für"{{ username }}"

Soweit ich mich erinnere, hat das bei Ansible 2.5 gut funktioniert.

Was hat sich geändert? Wie sollte ich meine Rollen und Playbooks jetzt umschreiben?

Antwort1

Das Spiel

- hosts: localhost
  vars:
    username: user1
    userpass: pass1
    users: "{{ {username: {'pass': userpass}} }}"
  tasks:
    - debug:
        var: users

gibt:

"users": {
    "user1": {
        "pass": "pass1"
    }
}

Ist es das, wonach Sie suchen?

verwandte Informationen