[英]How to get a list of variables used in Ansible playbook?
我想獲得 ansible playbook 中使用的變量列表。 我查看了設置和調試模塊,但我懷疑我能做到這一點。
有沒有通用的方法?
看看vars
- debug: var=vars
你會看到所有的變量,其中一些作為hostvars
屬性被復制
- debug: var=hostvars
可以只列出不在主機變量中的變量。 例如,劇本
shell> cat playbook.yml
- hosts: test_01
vars:
var1: test
tasks:
- set_fact:
my_vars: "{{ vars.keys()|
difference(hostvars[inventory_hostname].keys())|
list|
sort }}"
- debug:
var: my_vars
給(略)
ok: [test_01] => {
"my_vars": [
"ansible_dependent_role_names",
"ansible_play_batch",
"ansible_play_hosts",
"ansible_play_hosts_all",
"ansible_play_name",
"ansible_play_role_names",
"ansible_role_names",
"environment",
"hostvars",
"play_hosts",
"role_names",
"var1"
]
}
您可以看到剩下的是Special 變量和變量var1
。 我不知道關於如何僅列出特殊變量的任何方法、過濾器或函數。 如果您創建這樣的列表,您可以創建差異並僅獲取您的變量。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.