2016-07-28 77 views
0

感謝提供給我的question的回覆,我瞭解了Expect模塊。在我的Ansible手冊中,我使用它來執行命令並響應提示。我現在的問題是,我的command在提示輸入用戶名,電子郵件和密碼之前會返回stdout警告文本。然後期望的任務失敗了,我猜是因爲它現在不怎麼處理這行文本。在Ansible Expect Module中,如何在響應提示之前忽略顯示的警告文本?

playbook.yml

- expect: 
     command: geonode createsuperuser 
     responses: 
      username: 'test' 
      email: '[email protected]' 
      password: 'test' 

的故障報告:

TASK [expect] ****************************************************************** 
fatal: [node1]: FAILED! => {"changed": true, "cmd": "geonode createsuperuser", "delta": "0:00:30.129827", "end": "2016-07-28 09:39:57.806523", "failed": true, "rc": null, "start": "2016-07-28 09:39:27.676696", "stdout": "Not enabling BingMaps base layer as a BING_API_KEY is not defined in local_settings.py file.\r\nUsername: ", "stdout_lines": ["Not enabling BingMaps base layer as a BING_API_KEY is not defined in local_settings.py file.", "Username: "]} 

可惜我不能在這個階段的配置禁用警告。

感謝您提供任何幫助。

+0

投票關閉這個,因爲這是明顯的從你只是缺少外殼的錯誤。 – ydaetskcoR

+0

啊,對不起,我是不是很明顯。謝謝 – user123892

回答

1

響應搜索短語區分大小寫! 用途:

responses: 
    Username: test 

或:

responses: 
    (?i)username: test 
+0

Ups對不起,我沒有意識到這是一個簡單的錯誤,在錯誤消息中沒有很大的線索。從現在起我永遠不會忘記!謝謝 – user123892