我正在尝试为Ansible中的一组用户创建一组授权的SSH密钥。我有一个users
像这样设置的变量:
users:
- { username: root, name: 'root' }
- { username: user, name: 'User' }
在同一角色中,我在files/public_keys
目录中还有一组授权密钥文件,每个授权密钥一个文件:
roles/common/files/public_keys/home
roles/common/files/public_keys/work
我想将每个公钥复制到每个用户。
我尝试使用以下任务:
- name: copy authorized keys
authorized_key: user={{ item.0.username }} key={{ item.1 }}
with_nested:
- users
- lookup('fileglob', 'public_keys/*')
但是,item.1
包含文字字符串"lookup('fileglob', 'public_keys/*')"
,而不是下的每个文件路径files/public_keys
。
有没有一种方法可以获取files/public_keys
目录列表并将每个公钥复制到每个用户?