Responible con "Diseño de directorio alternativo" y con bóvedas

Estoy tratando de usar elDiseño de directorio alternativo y bóvedas ansibles dentro. Pero cuando ejecuto mi libro de jugadas, las variables que están encriptadas en almacén no pueden resolverse con esa estructura de directorios. Entonces, ¿qué estoy haciendo mal?

Ejecuto a través de:

ansible-playbook -i inventories/inv/hosts playbooks/inv/invTest.yml --check --ask-vault

Aquí está mi estructura:

.
├── inventories
│   ├── inv
│   │   ├── group_vars
│   │   │   ├── var.yml
│   │   │   └── vault.yml
│   │   └── hosts
│   └── staging
│       ├── group_vars
│       │   ├── var.yml
│       │   └── vault.yml
│       └── hosts
├── playbooks
│   ├── staging
│   │   └── stagingTest.yml
│   └── inv
│       ├── invTest.retry
│       └── invTest.yml
└── roles
    ├── basic-linux
    │   ├── defaults
    │   │   └── main.yml
    │   └── tasks
    │       └── main.yml
    ├── test
    │   ├── defaults
    │   │   └── main.yml
    │   └── tasks
    │       └── main.yml
    └── webserver
        ├── defaults
        │   └── main.yml
        ├── files
        ├── handler
        │   └── main.yml
        ├── tasks
        │   └── main.yml
        └── templates

este es mi archivo de hosts (inventories/inv/hosts):

[inv]
testvm-01    ansible_ssh_port=22    ansible_ssh_host=172.16.0.101    ansible_ssh_user=root
testvm-02    ansible_ssh_port=22    ansible_ssh_host=172.16.0.102    ansible_ssh_user=root

libro de jugadas (playbooks/inv/invTest.yml):

---
  - name: this is test
    hosts: inv
    roles:
      - { role: ../../roles/test }
...

rol que utiliza la bóveda encriptada var (roles/test/tasks/main.yml):

---
  - name: create test folder
    file:
        path: "/opt/test/{{ app_user }}/"
        state: directory
        owner: "{{ default_user }}"
        group: "{{ default_group }}"
        mode: 2755
        recurse: yes
...

var que apunta a la bóveda (inventarios / inv / group_vars / var.yml):

---
app_user: '{{ vault_app_user }}'
app_pass: '{{ vault_app_pass }}'
...

archivo de almacenamiento (ansible-vault edit inventories/inv/group_vars/vault.yml):

vault_app_user: itest
vault_app_pass: itest123

El mensaje de error que iam está obteniendo es algo como esto:

¡HA FALLADO! => {"falló": verdadero, "mensaje": "el campo 'args' tiene un valor no válido, que parece incluir una variable que no está definida. El error fue: {{app_user}}: 'app_user' está indefinido \ n \ nEl error parece haber estado en 'roles / test / tareas / main.yml': pero puede \ n estar en otra parte del archivo dependiendo del problema exacto de sintaxis. \ n \ nLa línea ofensiva parece ser: \ n \ n \ n - nombre: crear carpeta de prueba \ n ^ aquí \ n "}

Respuestas a la pregunta(1)

Su respuesta a la pregunta