dns¶
About The Role¶
An Ansible role to verify that the DNS resolution works.
Requirements¶
No requirements.
Dependencies¶
No dependencies.
Example Playbook¶
- hosts: localhost
gather_facts: false
vars:
server_to_lookup: example.com
roles:
- dns
License¶
Apache
Full Description¶
Role Documentation¶
Welcome to the ‘dns’ role documentation.
Role Defaults¶
This section highlights all of the defaults and variables set within the ‘dns’ role.
# DNS Server to lookup
server_to_lookup: example.com
Molecule Scenarios¶
Molecule is being used to test the ‘dns’ role. The following section highlights the drivers in service and provides an example playbook showing how the role is leveraged.
- Driver: podman:
Scenario: default¶
Molecule Platform(s)¶
- name: centos
hostname: centos
image: centos/centos:stream8
registry:
url: quay.io
dockerfile: ../../../../../.config/molecule/Dockerfile
pkg_extras: python*-setuptools python*-pyyaml
volumes:
- /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro
privileged: true
environment:
http_proxy: "{{ lookup('env', 'http_proxy') }}"
https_proxy: "{{ lookup('env', 'https_proxy') }}"
ulimits:
- host
Molecule Inventory¶
hosts:
all:
hosts:
centos:
ansible_python_interpreter: /usr/bin/python3
Example default playbook¶
- name: Converge
hosts: all
tasks:
- name: Should get a success
include_role:
name: dns
vars:
server_to_lookup: www.redhat.com
- name: Should properly fail
block:
- include_role:
name: dns
vars:
server_to_lookup: role.dns.domain.do-not.exists
rescue:
- name: Clear host errors
meta: clear_host_errors
- debug:
msg: The validation works! End the playbook run
- name: End play
meta: end_play
- name: Fail the test
fail:
msg: |
The dns role should have detected a faulty DNS configuration