Я хочу запустить local_action
на моей машине под моим пользователем. Однако команда не выполняется, так как она выполняется с sudo -u root
<localhost> EXEC /bin/sh -c 'sudo -H -S -n -u root /bin/sh -c '"'"'echo BECOME-SUCCESS-rporvrakuzytzohimeygjirtbcocqbsj ;
/usr/bin/python /home/papanito/.ansible/tmp/ansible-tmp-1579883794.404003-255151921346952/AnsiballZ_command.py'"'"' && sleep 0'
. Может, playbook определяет become: false
, поэтому я не понимаю, почему команда выполняется с -u root
- hosts: localhost
become: false
connection: local
gather_facts: no
vars:
- resources_path: "{{playbook_dir}}/../resources"
tasks:
- name: Execute the command in remote shell; stdout goes to the specified file on the remote.
command: rke up --config {{resources_path}}/k8s/rke/dev-cluster.yml
delegate_to: localhost
Я также попытался указать remote_user: papanito
, но это тоже не помогло - я бы в любом случае не ожидал, что оно будет работать, как обычно remote_user
- это то, что используется для соединения s sh, тогда как здесь у нас есть соединение local
.
Также become_user
не решает проблему
become: yes
connection: local
gather_facts: no
become_user: papanito
...