Мне нужно использовать мой - запросить пароль в сценарии ожидания. Есть ли способ использовать пароль, введенный при запуске ansible_playbook в переменной?
Псевдокод:
# ansible-playbook --become --ask-become-pass -i testing master.yml
BECOME password: secretpassword
затем в задаче
- name: use pw variable in task
expect:
command: /bin/bash -c "/usr/bin/my_command"
responses:
Password: "{{ prompted_pass }}"
, где я хотел бы ожидать ввода «secretpassword» при чтении подсказки «Пароль»
Я знаю о begin_user, но, к сожалению, в моем случае это не помогает, так как удаленный сервер запрашивает пароль - но это то же самое, что и begin_password.
Я попытался сбросить вары и среду, но не нашел ничего полезного.
Спасибо, Тобиас
Нет. Интерактивный пароль не доступен для плейбука.
Одна из альтернатив - не использовать --ask-become-pass
, а предоставить пароль become в качестве переменной. Определите переменную ansible_become_password
как выражение поиска, которое получает пароль из любого секретного хранилища, которое вы используете. Также используйте эту переменную для пароля другой программы.