Я пытаюсь запустить определенную задачу Ansible от имени другого пользователя, нежели тот, кто запускает playbook. Мой .ymlфайл выглядит так:
---
- hosts: staging_servers
tasks:
- name: check user
remote_user: someusername
shell: whoami
Выполнение этой задачи показывает мне, что whoamiкоманда возвращает пользователя, отличного от того, которого я определил в задаче (точнее, возвращает пользователя, определенного в hostsвызываемом файле ubuntu).
Я также попытался определить задачу следующим образом:
---
- hosts: staging_servers
tasks:
- name: check user
sudo: yes
sudo_user: someusername
shell: whoami
но затем я получаю Missing sudo passwordошибку ' ', хотя в sudoersфайле есть строка, в которой говорится someusername ALL=(ALL) NOPASSWD:ALLи выдает команды sudoна удаленной машине, так как someusernameне запрашивает у меня пароль.
Итак, как я могу запустить определенную задачу от имени другого пользователя, который не определен в hostsфайле или в rootсамом себе?