ansible.builtin.ipa_dnsrecord (v2.4.2.0-1) — module

Manage FreeIPA DNS records

| "added in version" 2.4 of ansible.builtin"

Authors: Abhijeet Kasurde (@akasurde)

preview | supported by community

Install Ansible via pip

Install with pip install ansible==2.4.2.0.post1

Description

Add, modify and delete an IPA DNS Record using IPA API

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
# Ensure dns record is present
- ipa_dnsrecord:
    ipa_host: spider.example.com
    ipa_pass: Passw0rd!
    state: present
    zone_name: example.com
    record_name: vm-001
    record_type: 'AAAA'
    record_value: '::1'
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
# Ensure a PTR record is present
- ipa_dnsrecord:
    ipa_host: spider.example.com
    ipa_pass: Passw0rd!
    state: present
    zone_name: 2.168.192.in-addr.arpa
    record_name: 5
    record_type: 'PTR'
    record_value: 'internal.ipa.example.com'
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
# Ensure that dns record is removed
- ipa_dnsrecord:
    name: host01
    zone_name: example.com
    record_type: 'AAAA'
    record_value: '::1'
    ipa_host: ipa.example.com
    ipa_user: admin
    ipa_pass: topsecret
    state: absent

Inputs

    
state:
    choices:
    - present
    - absent
    default: present
    description: State to ensure
    required: false

ipa_host:
    default: ipa.example.com
    description: IP or hostname of IPA server
    required: false

ipa_pass:
    description: Password of administrative user
    required: true

ipa_port:
    default: 443
    description: Port of IPA server
    required: false

ipa_prot:
    choices:
    - http
    - https
    default: https
    description: Protocol used by IPA server
    required: false

ipa_user:
    default: admin
    description: Administrative account used on IPA server
    required: false

zone_name:
    description:
    - The DNS zone name to which DNS record needs to be managed.
    required: true

record_name:
    aliases:
    - name
    description:
    - The DNS record name to manage.
    required: true

record_type:
    choices:
    - A
    - AAAA
    - PTR
    default: A
    description:
    - The type of DNS record name
    - Currently, 'A', 'AAAA', and 'PTR' are supported
    required: false

record_value:
    description:
    - Manage DNS record name with this value.
    - In the case of 'A' or 'AAAA' record types, this will be the IP address.
    - In the case of 'PTR' record type, this will be the hostname.
    required: true

validate_certs:
    default: true
    description:
    - This only applies if C(ipa_prot) is I(https).
    - If set to C(no), the SSL certificates will not be validated.
    - This should only set to C(no) used on personally controlled sites using self-signed
      certificates.
    required: false

Outputs

dnsrecord:
  description: DNS record as returned by IPA API.
  returned: always
  type: dict