dnsimple – Interface with dnsimple.com (a DNS hosting service)¶
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
-
|
Account API token. See account_email for more information.
|
|
account_email
-
|
Account email. If omitted, the environment variables
DNSIMPLE_EMAIL and DNSIMPLE_API_TOKEN will be looked for.If those aren't found, a
.dnsimple file will be looked for, see: https://github.com/mikemaccana/dnsimple-python#getting-started. |
|
domain
-
|
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
-
|
Record priority.
|
|
record
-
|
Record to add, if blank a record for the domain will be created, supports the wildcard (*).
|
|
record_ids
-
|
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 is set to present on a record. |
state
-
|
|
whether the record should exist or not.
|
ttl
-
|
Default: 3600
|
The TTL to give the new record in seconds.
|
type
-
|
|
The type of DNS record to create.
|
value
-
|
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
dnsimple:
account_email: [email protected]
account_api_token: dummyapitoken
delegate_to: localhost
- name: Fetch my.com domain records
dnsimple:
domain: my.com
state: present
delegate_to: localhost
register: records
- name: Delete a domain
dnsimple:
domain: my.com
state: absent
delegate_to: localhost
- name: Create a test.my.com A record to point to 127.0.0.1
dnsimple:
domain: my.com
record: test
type: A
value: 127.0.0.1
delegate_to: localhost
register: record
- name: Delete record using record_ids
dnsimple:
domain: my.com
record_ids: '{{ record["id"] }}'
state: absent
delegate_to: localhost
- name: Create a my.com CNAME record to example.com
dnsimple:
domain: my.com
record: ''
type: CNAME
value: example.com
state: present
delegate_to: localhost
- name: change TTL value for a record
dnsimple:
domain: my.com
record: ''
type: CNAME
value: example.com
ttl: 600
state: present
delegate_to: localhost
- name: Delete the record
dnsimple:
domain: my.com
record: ''
type: CNAME
value: example.com
state: absent
delegate_to: localhost
Status¶
This module is not guaranteed to have a backwards compatible interface. [preview]
This module is maintained by the Ansible Community. [community]