我有一本可用来检查集群中可用磁盘使用情况的剧本:
.....
#Test
- set_fact: diskFree=0
- set_fact:
diskFree="{{(100.0 * (item.size_available / item.size_total)) | round(2, 'common')}}"
when:
- skipDevice not in item.device
- sizeThreshold is undefined or (sizeThreshold is defined and ((100.0 * (item.size_available / item.size_total)) | round(2, 'common')) < sizeThreshold|float)
loop: "{{ ansible_mounts }}"
#Test Display
- debug:
msg: "{{ ansible_hostname }}: {{ diskFree }}"
when: diskFree != 0
问题是,当磁盘使用率低于20%时,我希望剧本失败,但是我不知道该怎么做,在这里我不能使用failed_when
。
谢谢。
答案 0 :(得分:1)
因此,添加一个fail
任务:
- fail:
msg: "Free disk space below 20% ({{ diskFree }}%)."
when: diskFree|float < 20.0