Запуск `local_action` в ansible использует root пользователя - PullRequest
0 голосов
/ 24 января 2020

Я хочу запустить 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
  ...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...