2016-04-11 29 views
-1

我正在尋找與ansible自動化交互式安裝過程。此安裝不具有無提示安裝選項,也不具有交互式問題的命令行參數。這個問題涉及設置一個文件夾位置,確保文件夾位置正確等等,答案可能是默認或自定義。 我看着一個理智的expect模塊,但似乎並沒有解決我的目的。pexpect類型與ansible的操作

- expect: 
command: passwd username 
responses: 
    (?i)password: "MySekretPa$$word" 

我不需要命令,但它是必需的。相反,我正在尋找的東西,可能是正則表達式Are you sure you want to continue [y|n]? [n]:我想發送默認出By sending return or typing n as a response和例如Backup directory [/tmp]其響應將爲Carriage return

回答

0

我已經想出了一種適用於我的方法。我將參數傳遞給shell腳本,當手動運行時需要答案。像./shell.sh <<< 'answer1\nanswer2\n'這完全適合我。我已添加到該任務。

1

我不需要命令,但它是必需的。相反,我要尋找的東西,可能正則表達式Are you sure you want to continue [y|n]? [n]:

The module需要command,因爲你必須運行東西得到任何輸出。

你顯然確實有一個命令,因爲你已經手動運行它並看到它產生的輸出。這就是你應該插入模塊。

或者,您可以自己編寫一個pexpect腳本,並使用commandshell模塊來運行它。