我正在編寫一個Ansible角色以將Docker容器部署到主機。我的庫存文件包含CoreOS和Ubuntu服務器,並且Docker已經安裝在Ubuntu上,不允許非root用戶使用(也就是我需要sudo docker ...
)。 CoreOS主機不需要它。Ansible sudo模式取決於變量
我想寫一個任務,如果需要,只使用sudo
:
- name: Start container XX
sudo: "{{ ansible_os_family and ansible_os_family == 'Debian' }}"
docker:
...
使用debug
模塊,我可以看到這個表達式返回「真」。
直接使用sudo: "True"
工作正常。
但是使用給定的片段不起作用,sudo模式未啓用。
如何有條件地使用sudo
來實現我的目標?
您是否嘗試過使用'ansible_sudo'變量?檢查谷歌,有關於這個錯誤報告,但它可能工作。 – magnetik