Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.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
在Ansible中,如何在调试模块中显示变量名?_Ansible_Ansible 2.x - Fatal编程技术网

在Ansible中,如何在调试模块中显示变量名?

在Ansible中,如何在调试模块中显示变量名?,ansible,ansible-2.x,Ansible,Ansible 2.x,假设我有一个defaults/main.yml文件 --- var1: my_value1 var2: my_value2 现在我想在调试中打印我的变量 --- - debug: ??? what to put here ??? with_items: - "{{ var1 }}" - "{{ var2 }}" 所以我展示 The value of var1 is my_value1 The value of var2 is my_value2 var和msg只显示值,而不显示

假设我有一个defaults/main.yml文件

---
var1: my_value1
var2: my_value2
现在我想在调试中打印我的变量

---
- debug: ??? what to put here ???
  with_items:
  - "{{ var1 }}"
  - "{{ var2 }}"
所以我展示

The value of var1 is my_value1
The value of var2 is my_value2

var和msg只显示值,而不显示变量名?这看起来很简单,但我在Ansible文档中找不到。

您可以使用
和_dict
来显示var名称,但您必须以不同的方式定义变量:

---
vars:
 var1: 
   my_value1
 var2: 
   my_value2
然后你可以做:

---
debug: 
 msg: "The value of {{item.key}} is {{item.value}}"
with_dict: "{{ vars }}"

这对我有用。这不是我想要的消息,但它至少向我显示了项目名称及其值

- debug: var="{{item}}"
  with_items:
  - var1
  - var2
我得到

TASK [python3 : debug] *********************************************************
ok: [localhost] => (item=var1) => {
    "item": "var1",
    "var1": "my_value1"
}
ok: [localhost] => (item=var2) => {
    "var2": "my_value2",
    "item": "var2"
}

如果我不想使用字典,即按原样使用代码,该怎么办?