我知道我可以用sudo运行playbooks和任务,但有没有办法用参数运行sudo?具体来说,我需要运行sudo -E <command>
来保留登录用户的环境。
如果无法做到这一点,是否有良好的解决方法?
修改
两个澄清:
sudo -E
来执行某些任务,而不是整个剧本ubuntu
用户在~/.ssh/config
下配置了一些主机。我想将这些设置与ansible git模块一起使用,而不必将它们复制到/root/.ssh
中,我想用它们来修改不属于ubuntu
用户的目录。例如,对于拉动,直接在shell中执行此操作的一种方法是sudo -E git pull
。一个理想的解决方案是让我(1)使用ansible git模块,(2)允许我sudo -E
执行此任务,以及sudo
没有-E
标志用于其他任务。< / LI>
醇>
答案 0 :(得分:0)
您应该可以通过ansible.cfg
中的sudo_flags参数执行此操作答案 1 :(得分:0)
只需在任务级别使用become_flags
become_flags: '-i'