Назад | Перейти на главную страницу

Шаблонные ключи dict в доступном YAML

Я пытаюсь использовать dict в задаче Ansible, которая определяется следующим образом:

в vars/main.yml файл:

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

Это не работает в Ansible 2.9: кажется, что Ansible не интерполирует значение для "{{ username }}"

IIRC, это отлично работало с Ansible 2.5

Что изменилось? Как мне теперь переписать свои роли и сценарии?

Игра

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

дает:

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

Это то, что вы ищете?