2017-02-15 18 views
0

У меня есть несколько удаленных машин, на которых мне нужно выполнить некоторые команды. Я хочу автоматизировать это с помощью Ansible.Использование Ansible для входа во временный интерактивный экран

Вот как работает вход в удаленную машину.

  • Я использую имя пользователя/пароль.
  • Сразу после входа в систему (после того, как он печатает последний успешный логин и т. Д.) Появляется еще один интерактивный экран с вопросом о безопасности (просьба не спрашивать, почему, но он настроен таким образом). Только после ввода ответа я могу выполнить команды на машине.

Этап 2 работает подобно интерактивному скрипту, помещенному в bash_profile.

У меня есть пары ключей RSA, настроенные так, чтобы Ansible мог достигнуть шага 2. Но на шаге 2 как я могу ввести ответ безопасности, используя ansible, прежде чем переходить к другим задачам.

+0

Вы можете использовать модуль ожидания, но затем вам нужно запустить все команды через него. Это очень похоже на этот вопрос http://stackoverflow.com/q/41727489/2947502 – techraf

+0

Но я не выполняю никаких команд на удаленном хосте. Я все еще в процессе входа в систему. Я добрался до удаленного терминала после шага 1, но пока нет доступа к cli. Есть ли способ использовать модуль ожидания без выполнения команды? Как просто скажите python ожидать чего-то, когда выполнение кода достигло этой точки. –

+0

Я понимаю, что вы делаете. Теперь, пожалуйста, поймите, что я написал. – techraf

ответ

1

Как я могу ввести ответ безопасности с использованием Ansible, прежде чем приступать к другим задачам.

Вы не можете изменить без изменения код.

См. Также an answer to a very similar question.