我有一个字符串列表,我期望在某些命令的输出中。如何创建一个可测试的 ansible 脚本 - 如果一个或多个条目不包含 - 执行任务?
所以我的 ansible 脚本可能看起来像:
vars:
musthave:
- value1
- value2
tasks:
- name: Check the configured values
command: "cat configfile"
register: current_configuration
changed_when: false
- set a variable if one or more of the musthave's are missing in current_configuration.stdout
...
- name: Execute task to reconfigure system
command: "reconfigure..."
when: true = variable
那么有没有类似的东西
variable = false
for s in musthave:
if not s in current_configuration.stdout:
variable |= true
虽然使用建议的社区模块可能更容易解决,但我更喜欢不意味着要安装更多库的解决方案。这是我想出的解决方案。
我最初的请求是检查是否存在可能出现在命令输出中某处的特定值。为差异准备工作列表是一个缺点,副作用是您可以计算两个方向的差异。
所以现在我不仅可以检查丢失的条目,还可以检查那些太多的条目。