community.general.dnsimple – Interface with dnsimple.com (a DNS hosting service)
community.general.dnsimple – Interface with dnsimple.com (a DNS hosting service)
Note
This plugin is part of the community.general collection (version 1.3.2).
To install it use: ansible-galaxy collection install community.general
.
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 >= 1.0.0
Parameters
Parameter | Choices/Defaults | Comments |
---|---|---|
account_api_token string |
Account API token. See account_email for more information. | |
account_email string |
Account email. If omitted, the environment variables If those aren't found, a | |
domain string |
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. | |
priority integer |
Record priority. | |
record string |
Record to add, if blank a record for the domain will be created, supports the wildcard (*). | |
record_ids list / elements=string |
List of records to ensure they either exist or do not exist. | |
solo boolean |
|
Whether the record should be the only one for that record type and record name. Only use with |
state string |
|
whether the record should exist or not. |
ttl integer |
Default: 3600 |
The TTL to give the new record in seconds. |
type string |
|
The type of DNS record to create. |
value string |
Record value. Must be specified when trying to ensure a record exists. |
Notes
Note
- DNSimple API v1 is deprecated. Please install dnsimple-python>=1.0.0 which uses v2 API.
Examples
- name: Authenticate using email and API token and fetch all domains
community.general.dnsimple:
account_email: [email protected]
account_api_token: dummyapitoken
delegate_to: localhost
- name: Fetch my.com domain records
community.general.dnsimple:
domain: my.com
state: present
delegate_to: localhost
register: records
- 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
Authors
- Alex Coomans (@drcapulet)
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/community/general/dnsimple_module.html