在ansible中使用角色时,如何become
用户?
例如,如何使用ansible galaxy的geerlingguy.nodejs
角色以root身份安装nodejs?以下是我所拥有的相关部分:
roles:
- geerlingguy.nodejs
become: yes
但是这会在YAML文件上生成ERROR! Syntax Error while loading YAML
。
答案 0 :(得分:4)
我终于找到了一个解决方案,回顾一下documentation
roles:
- role: geerlingguy.nodejs
become: yes
这也可以写成:
roles:
- { role: geerlingguy.nodejs, become: yes }
此安慰新手之前不明显的部分是文档中使用的备用类似json的语法,当它指出“另外,如果你想通过添加变量来参数化角色,你可以这样做,就像这样: “
- hosts: webservers
roles:
- common
- { role: foo_app_instance, dir: '/opt/a', app_port: 5000 }
我花了太长时间搞清楚这一点,所以希望这个答案可以帮助别人。