community.general.dnstxt lookup – query a domain(s)’s DNS txt fields
Note
This lookup plugin is part of the community.general collection (version 9.5.1).
You might already have this collection installed if you are using the ansible
package.
It is not included in ansible-core
.
To check whether it is installed, run ansible-galaxy collection list
.
To install it, use: ansible-galaxy collection install community.general
.
You need further requirements to be able to use this lookup plugin,
see Requirements for details.
To use it in a playbook, specify: community.general.dnstxt
.
Synopsis
Uses a python library to return the DNS TXT record for a domain.
Requirements
The below requirements are needed on the local controller node that executes this lookup.
dns/dns.resolver (python library)
Terms
Parameter |
Comments |
---|---|
domain or list of domains to query TXT records from |
Keyword parameters
This describes keyword parameters of the lookup. These are the values key1=value1
, key2=value2
and so on in the following
examples: lookup('community.general.dnstxt', key1=value1, key2=value2, ...)
and query('community.general.dnstxt', key1=value1, key2=value2, ...)
Parameter |
Comments |
---|---|
Return empty result without empty strings, and return empty list instead of The default for this option will likely change to Choices:
|
Notes
Note
When keyword and positional parameters are used together, positional parameters must be listed before keyword parameters:
lookup('community.general.dnstxt', term1, term2, key1=value1, key2=value2)
andquery('community.general.dnstxt', term1, term2, key1=value1, key2=value2)
Examples
- name: show txt entry
ansible.builtin.debug:
msg: "{{lookup('community.general.dnstxt', ['test.example.com'])}}"
- name: iterate over txt entries
ansible.builtin.debug:
msg: "{{item}}"
with_community.general.dnstxt:
- 'test.example.com'
- 'other.example.com'
- 'last.example.com'
- name: iterate of a comma delimited DNS TXT entry
ansible.builtin.debug:
msg: "{{item}}"
with_community.general.dnstxt: "{{lookup('community.general.dnstxt', ['test.example.com']).split(',')}}"
Return Value
Key |
Description |
---|---|
values returned by the DNS TXT record. Returned: success |