New in version 2.1.
- python >= 2.6
parameter | required | default | choices | comments |
---|---|---|---|---|
account_api_token |
yes | Account API token. You can obtain your API key from the bottom of the Cloudflare 'My Account' page, found here: https://www.cloudflare.com/a/account | ||
account_email |
yes | Account email. | ||
port |
no | Service port. Required for type=SRV | ||
priority |
no | 1 | Record priority. Required for type=MX and type=SRV | |
proto |
no |
|
Service protocol. Required for type=SRV | |
proxied (added in 2.3) |
no | Proxy through cloudflare network or just use DNS | ||
record |
no | @ | Record to add. Required if state=present . Default is @ (e.g. the zone name)aliases: name | |
service |
no | Record service. Required for type=SRV | ||
solo |
no | Whether the record should be the only one for that record type and record name. Only use with state=present This will delete all other records with the same record name and type. | ||
state |
no | present |
|
Whether the record(s) should exist or not |
timeout |
no | 30 | Timeout for Cloudflare API calls | |
ttl |
no | 1 (automatic) | The TTL to give the new record. Must be between 120 and 2,147,483,647 seconds, or 1 for automatic. | |
type |
no |
|
The type of DNS record to create. Required if state=present | |
value |
no | The record value. Required for state=present aliases: content | ||
weight |
no | 1 | Service weight. Required for type=SRV | |
zone |
yes | The name of the Zone to work with (e.g. "example.com"). The Zone must already exist. aliases: domain |
# create a test.my.com A record to point to 127.0.0.1 - cloudflare_dns: zone: my.com record: test type: A value: 127.0.0.1 account_email: test@example.com account_api_token: dummyapitoken register: record # create a my.com CNAME record to example.com - cloudflare_dns: zone: my.com type: CNAME value: example.com state: present account_email: test@example.com account_api_token: dummyapitoken # change it's ttl - cloudflare_dns: zone: my.com type: CNAME value: example.com ttl: 600 state: present account_email: test@example.com account_api_token: dummyapitoken # and delete the record - cloudflare_dns: zone: my.com type: CNAME value: example.com state: absent account_email: test@example.com account_api_token: dummyapitoken # create a my.com CNAME record to example.com and proxy through cloudflare's network - cloudflare_dns: zone: my.com type: CNAME value: example.com state: present proxied: yes account_email: test@example.com account_api_token: dummyapitoken # create TXT record "test.my.com" with value "unique value" # delete all other TXT records named "test.my.com" - cloudflare_dns: domain: my.com record: test type: TXT value: unique value state: present solo: true account_email: test@example.com account_api_token: dummyapitoken # create a SRV record _foo._tcp.my.com - cloudflare_dns: domain: my.com service: foo proto: tcp port: 3500 priority: 10 weight: 20 type: SRV value: fooserver.my.com
Common return values are documented here Return Values, the following are the fields unique to this module:
name | description | returned | type | sample |
---|---|---|---|---|
record | dictionary containing the record data | success, except on record deletion | complex |
This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.
This module is community maintained without core committer oversight.
For more information on what this means please read Module Support
For help in developing on modules, should you be so inclined, please read Community Information & Contributing, Helping Testing PRs and Developing Modules.