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

Author Information

Red Hat TripleO DFG:DF Squad:VF

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.

Scenario: default
Driver: podman:
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