community.general.dnsimple module – Interface with dnsimple.com (a DNS hosting service)
Note
This module is part of the community.general collection (version 9.4.0).
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 module,
see Requirements for details.
To use it in a playbook, specify: community.general.dnsimple
.
Synopsis
Manages domains and records via the DNSimple API, see the docs: http://developer.dnsimple.com/.
Requirements
The below requirements are needed on the host that executes this module.
dnsimple >= 2.0.0
Parameters
Parameter |
Comments |
---|---|
Account API token. See |
|
Account email. If omitted, the environment variables If those aren’t found, a
|
|
Domain to work with. Can be the domain name (e.g. “mydomain.com”) or the numeric ID of the domain in DNSimple. If omitted, a list of domains will be returned. If domain is present but the domain doesn’t exist, it will be created. |
|
Record priority. |
|
Record to add, if blank a record for the domain will be created, supports the wildcard (*). |
|
List of records to ensure they either exist or do not exist. |
|
Use the DNSimple sandbox environment. Requires a dedicated account in the dnsimple sandbox environment. Check https://developer.dnsimple.com/sandbox/ for more information. Choices:
|
|
Whether the record should be the only one for that record type and record name. Only use with Choices:
|
|
whether the record should exist or not. Choices:
|
|
The TTL to give the new record in seconds. Default: |
|
The type of DNS record to create. Choices:
|
|
Record value. Must be specified when trying to ensure a record exists. |
Attributes
Attribute |
Support |
Description |
---|---|---|
Support: full |
Can run in |
|
Support: none |
Will return details on what has changed (or possibly needs changing in |
Examples
- name: Authenticate using email and API token and fetch all domains
community.general.dnsimple:
account_email: test@example.com
account_api_token: dummyapitoken
delegate_to: localhost
- name: Delete a domain
community.general.dnsimple:
domain: my.com
state: absent
delegate_to: localhost
- name: Create a test.my.com A record to point to 127.0.0.1
community.general.dnsimple:
domain: my.com
record: test
type: A
value: 127.0.0.1
delegate_to: localhost
register: record
- name: Delete record using record_ids
community.general.dnsimple:
domain: my.com
record_ids: '{{ record["id"] }}'
state: absent
delegate_to: localhost
- name: Create a my.com CNAME record to example.com
community.general.dnsimple:
domain: my.com
record: ''
type: CNAME
value: example.com
state: present
delegate_to: localhost
- name: Change TTL value for a record
community.general.dnsimple:
domain: my.com
record: ''
type: CNAME
value: example.com
ttl: 600
state: present
delegate_to: localhost
- name: Delete the record
community.general.dnsimple:
domain: my.com
record: ''
type: CNAME
value: example.com
state: absent
delegate_to: localhost