Я намагаюся виконати конкретне завдання Ansible як інший користувач, ніж той, хто працює з ігровою книжкою. Мій .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він сам?