Estou tentando criar um conjunto de chaves SSH autorizadas para um conjunto de usuários no Ansible. Eu tenho uma users
variável configurada assim:
users:
- { username: root, name: 'root' }
- { username: user, name: 'User' }
Na mesma função, também tenho um conjunto de arquivos de chave autorizados em um files/public_keys
diretório, um arquivo por chave autorizada:
roles/common/files/public_keys/home
roles/common/files/public_keys/work
Eu quero copiar cada chave pública para cada usuário.
Eu tentei usar a seguinte tarefa:
- name: copy authorized keys
authorized_key: user={{ item.0.username }} key={{ item.1 }}
with_nested:
- users
- lookup('fileglob', 'public_keys/*')
No entanto, item.1
contém a cadeia literal "lookup('fileglob', 'public_keys/*')"
, não cada caminho de arquivo abaixo files/public_keys
.
Existe uma maneira de obter uma lista do files/public_keys
diretório e copiar cada chave pública para cada usuário?