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



假设我有一个默认/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 文档中找不到。

您可以使用

with_dict来显示变量名称,但您必须以不同的方式定义变量:

---
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"
}

最新更新