Как передать ввод в интерактивную команду, используя ansible? - PullRequest
0 голосов
/ 31 января 2020

У меня есть команда для выполнения на Unix сервере. Команда ожидает ввода пользователя в двух точках, а затем продолжает работу. Команда выглядит следующим образом:

$ abc_1.2_udate.bin /tmp/log

  Do you want to proceed y/n?
  y

  Please provide the credentials:
  1234

С ansible пробовали следующим образом:

  - name: execute the cmnd

    expect:

       Command: abc_1.2_udate.bin /tmp/log

       responses:

          Do you want to proceed y/n? "y"

          'Please provide the credentials:' "1234"

Но вышеприведенный фрагмент не работает. Также я хочу использовать ожидаемый модуль только для этого.

1 Ответ

1 голос
/ 31 января 2020
  1. Изменить команду на команду (C не прописные)
  2. Ответы должны быть даны в кавычках в формате 'Enter': "y"
expect:
 command: abc_1.2_udate.bin /tmp/log
 responses:
  'Do you want to proceed y/n?': "y"
  'Please provide the credentials': "1234"
...