Ansible:搞砸变量?

时间:2018-02-12 12:17:43

标签: python ansible

[u'test1', u'test2', u'test3', u'test4']

它尝试创建一个名为/home/test1/的目录,但它应该是最好的- name: Copy SSH key L2 users to host copy: src: files/L2.pub dest: /home/{{ l2_users }}/.ssh/authorized_keys mode: 600 等... 我做错了什么:

'{{ l2_users }}'

我尝试引用我的变量{{ l2_users }},但后来我的目录被引用了... 我做错了什么,我该如何纠正?

我使用--- l2_users: - test1 - test2 - test3 - test4 将用户添加到主机并且工作正常,但复制文件时搞砸了......

谢谢!

编辑:我的VARS文件,以防它可能提供线索:

com.day.cq.wcm.mobile.core.impl.MobileEmulatorProvider

1 个答案:

答案 0 :(得分:1)

您可以循环列表并将密钥复制到主目录

示例:

- name: Copy SSH key L2 users to host
  copy:
    src: files/L2.pub
    dest: /home/{{ item }}/.ssh/authorized_keys
    mode: 600
  with_items: l2_users

但我建议不要复制密钥,而是使用authorized_key模块进行最佳实践。

- name: Set authorized key took from file
  authorized_key:
    user: '{{ item }}'
    state: present
    key: "{{ lookup('file', '/path/of/id_rsa.pub') }}"
  with_items: l2_users