Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Loops Ansible检查复杂词汇中的键是否正确_Loops_Dictionary_Ansible - Fatal编程技术网

Loops Ansible检查复杂词汇中的键是否正确

Loops Ansible检查复杂词汇中的键是否正确,loops,dictionary,ansible,Loops,Dictionary,Ansible,我有复杂的字典结构,我想检查是否定义了子键。我甚至不知道这是否可能 下面是我的dict的样子: 配置: 1: 客户:ubuntu 网络设置: -路由 端口: sw1:null sw2: 客户:1/0/2 lte:1/0/5 2: 客户端:archlinux 网络设置: -桥接 端口: sw1: 客户:1/0/4 sw2:null ... 注意:无法定义lte密钥 我想要的是检查lte是否在配置目录中定义。理想情况下,我需要使用循环遍历config中的每个条目 我可能会写一个自定义插件,因为这

我有复杂的字典结构,我想检查是否定义了子键。我甚至不知道这是否可能

下面是我的dict的样子:


配置:
1:
客户:ubuntu
网络设置:
-路由
端口:
sw1:null
sw2:
客户:1/0/2
lte:1/0/5
2:
客户端:archlinux
网络设置:
-桥接
端口:
sw1:
客户:1/0/4
sw2:null
...

注意:无法定义lte密钥

我想要的是检查lte是否在配置目录中定义。理想情况下,我需要使用循环遍历
config
中的每个条目


我可能会写一个自定义插件,因为这听起来很难做到。

如果它是一个列表,你必须循环它,你可以试试这个条件

- debug: var=test_item.ports.sw2.lte
  when: test_item.ports.sw2.lte is defined
  with_items: "{{ config }}"
  loop_control:
    loop_var: test_item
when条件将检查变量是否已定义