vars/varnames more examles more varied (#84300)

also ref each other in seealso as they will commonly be used toghether

(cherry picked from commit c734ac2125)
pull/84305/head
Brian Coca 2 weeks ago committed by Brian Coca
parent d0c9fc3edd
commit 8b7c7e35f6

@ -13,11 +13,14 @@ DOCUMENTATION = """
_terms: _terms:
description: List of Python regex patterns to search for in variable names. description: List of Python regex patterns to search for in variable names.
required: True required: True
seealso:
- plugin_type: lookup
plugin: ansible.builtin.vars
""" """
EXAMPLES = """ EXAMPLES = """
- name: List variables that start with qz_ - name: List variables that start with qz_
ansible.builtin.debug: msg="{{ lookup('ansible.builtin.varnames', '^qz_.+')}}" ansible.builtin.debug: msg="{{ lookup('ansible.builtin.varnames', '^qz_.+') }}"
vars: vars:
qz_1: hello qz_1: hello
qz_2: world qz_2: world
@ -25,13 +28,16 @@ EXAMPLES = """
qz_: "I won't show either" qz_: "I won't show either"
- name: Show all variables - name: Show all variables
ansible.builtin.debug: msg="{{ lookup('ansible.builtin.varnames', '.+')}}" ansible.builtin.debug: msg="{{ lookup('ansible.builtin.varnames', '.+') }}"
- name: Show variables with 'hosts' in their names - name: Show variables with 'hosts' in their names
ansible.builtin.debug: msg="{{ lookup('ansible.builtin.varnames', 'hosts')}}" ansible.builtin.debug: msg="{{ q('varnames', 'hosts') }}"
- name: Find several related variables that end specific way - name: Find several related variables that end specific way
ansible.builtin.debug: msg="{{ lookup('ansible.builtin.varnames', '.+_zone$', '.+_location$') }}" ansible.builtin.debug: msg="{{ query('ansible.builtin.varnames', '.+_zone$', '.+_location$') }}"
- name: display values from variables found via varnames (note "*" is used to dereference the list to a 'list of arguments')
debug: msg="{{ lookup('vars', *lookup('varnames', 'ansible_play_.+')) }}"
""" """

@ -17,6 +17,10 @@ DOCUMENTATION = """
description: description:
- What to return if a variable is undefined. - What to return if a variable is undefined.
- If no default is set, it will result in an error if any of the variables is undefined. - If no default is set, it will result in an error if any of the variables is undefined.
seealso:
- plugin_type: lookup
plugin: ansible.builtin.varnames
""" """
EXAMPLES = """ EXAMPLES = """
@ -27,20 +31,23 @@ EXAMPLES = """
myvar: ename myvar: ename
- name: Show default empty since i dont have 'variablnotename' - name: Show default empty since i dont have 'variablnotename'
ansible.builtin.debug: msg="{{ lookup('ansible.builtin.vars', 'variabl' + myvar, default='')}}" ansible.builtin.debug: msg="{{ lookup('ansible.builtin.vars', 'variabl' + myvar, default='') }}"
vars: vars:
variablename: hello variablename: hello
myvar: notename myvar: notename
- name: Produce an error since i dont have 'variablnotename' - name: Produce an error since i dont have 'variablnotename'
ansible.builtin.debug: msg="{{ lookup('ansible.builtin.vars', 'variabl' + myvar)}}" ansible.builtin.debug: msg="{{ q('vars', 'variabl' + myvar) }}"
ignore_errors: True ignore_errors: True
vars: vars:
variablename: hello variablename: hello
myvar: notename myvar: notename
- name: find several related variables - name: find several related variables
ansible.builtin.debug: msg="{{ lookup('ansible.builtin.vars', 'ansible_play_hosts', 'ansible_play_batch', 'ansible_play_hosts_all') }}" ansible.builtin.debug: msg="{{ query('ansible.builtin.vars', 'ansible_play_hosts', 'ansible_play_batch', 'ansible_play_hosts_all') }}"
- name: show values from variables found via varnames (note "*" is used to dereference the list to a 'list of arguments')
debug: msg="{{ q('vars', *q('varnames', 'ansible_play_.+')) }}"
- name: Access nested variables - name: Access nested variables
ansible.builtin.debug: msg="{{ lookup('ansible.builtin.vars', 'variabl' + myvar).sub_var }}" ansible.builtin.debug: msg="{{ lookup('ansible.builtin.vars', 'variabl' + myvar).sub_var }}"

Loading…
Cancel
Save