我想使用 ansible playbook 为我的本地主机上的两个不同用户(即 admin 和 brian)设置相同的配置。目前,“普通”角色安装两个用户都可以访问的程序。此外,我还有用户特定的设置(例如,桌面壁纸)。当我运行我的剧本时,用户特定的设置会从一个用户而不是另一个用户更新。例如,如果我运行我的剧本,布赖恩的壁纸会改变,但管理员的壁纸保持不变。我知道 become_user,但不想为我运行的每个任务都这样做。是否可以以这样一种方式定义主机文件或剧本,以便我可以简单地指定我希望剧本运行的本地主机上的用户?
我已经尝试过 是否可以更有效地以多个用户的身份运行多个 Ansible 剧本?在每个角色级别上,但出现以下错误:
致命的:[本地主机]:失败!=> {"changed": false, "module_stderr": "/usr/bin/python2: 无法打开文件'/home/brian/.ansible/tmp/ansible-tmp-1525409723.54-208533437554058/apt.py': [Errno 13] 权限被拒绝\n", "module_stdout": "", "msg": "MODULE FAILURE", "rc": 2}
网站.yml
---
- name: ansible master playbook
hosts: localhost
connection: local
roles:
- role: common
角色/公共/任务/main.yml
---
- import_tasks: gsettings.yml
角色/common/tasks/gsettings.yml
---
- name: Use 12 hr. clock format
dconf:
key: "/org/gnome/desktop/interface/clock-format"
value: "'12h'"