首页 文章

为不同的本地用户运行相同的Ansible Playbook

提问于
浏览
1

我想使用ansible playbook为我的localhost(即admin&brian)上的两个不同用户设置相同的配置 . 目前,“common”角色安装两个用户都可访问的程序 . 另外,我具有用户特定的设置(例如,桌面壁纸) . 当我运行我的Playbook时,用户特定的设置会从一个用户更新而不是另一个用户 . 例如,如果我运行我的剧本,布莱恩的壁纸会改变,但管理员的壁纸保持不变 . 我知道的是become_user,但是对于我运行的每个任务都不希望这样 . 是否可以以这样的方式定义hosts文件或playbook,我可以简单地指定localhost上的用户我希望该playbook能够运行?

我在每个角色级别上尝试了Is there anyway to run multiple Ansible playbooks as multiple users more efficiently?但是收到以下错误:

致命:[localhost]:失败! => {“已更改”:false,“module_stderr”:“/ usr / bin / python2:无法打开文件'/home/brian/.ansible/tmp/ansible-tmp-1525409723.54-208533437554058/apt.py': [Errno 13] Permission denied \ n“,”module_stdout“:”“,”msg“:”MODULE FAILURE“,”rc“:2}

site.yml

---
- name: ansible master playbook
  hosts: localhost
  connection: local

  roles:
    - role: common

角色/普通/任务/ main.yml

---
  - import_tasks: gsettings.yml

角色/普通/任务/ gsettings.yml

---
- name:  Use 12 hr. clock format  
  dconf:
    key: "/org/gnome/desktop/interface/clock-format"
    value: "'12h'"

2 回答

相关问题