I'm trying to destroy docker containers and images and I need to confirm destruction by entering 'y'. I've tried a few tweaks based on various questions here but I still haven't managed to get it to work. Can someone please advise as to how I can answer the question 'This will delete all containers and data, are you sure? (y/n)' with 'y'?
Here is my current attempt.
- name: Destroy containers and images
expect:
command: kolla host destroy all --includedata --removeimages
responses:
This will delete all containers and data, are you sure? (y/n):
- y
The following version shows ok but doesn't actually do it.
- name: Destroy containers and images
shell: |
spawn kolla host destroy all --includedata --removeimages
expect "This will delete all containers and data, are you sure? (y/n)"
send "y"
args:
executable: /usr/bin/expect
Obviously all works fine from shell.
答案 0 :(得分:1)
您尝试过kolla-ansible吗? 这将为您提供帮助:
kolla-ansible -i INVENTORY destroy 用于清理容器和 群集中的卷。
答案 1 :(得分:0)
好,所以我可以部分地按如下方式工作。
- expect:
#command: kolla host destroy all --includedata --removeimages
command: kolla host destroy all
responses:
(?i)This will delete all containers and data, are you sure? (y/n): "y"
我只需要弄清楚如何包括这些选项。
答案 2 :(得分:0)
工作解决方案是如图所示更改了响应。我也必须在命令中删除'--includedata'选项,尽管它应该可以工作。在外壳中工作。它在我的设置中不太适用,因此不会再浪费时间了。
- name: Destroy containers and images
expect:
command: kolla host destroy --removeimages all
responses:
(?i)This will delete all containers and data, are you sure? (y/n): "y"