digital_ocean_domain – Create/delete a DNS domain in DigitalOcean¶
Synopsis¶
Create/delete a DNS domain in DigitalOcean.
Requirements¶
The below requirements are needed on the host that executes this module.
python >= 2.6
Parameters¶
Parameter | Choices/Defaults | Comments |
---|---|---|
id
-
|
Numeric, the droplet id you want to operate on.
aliases: droplet_id |
|
ip
-
|
An 'A' record for '@' ($ORIGIN) will be created with the value 'ip'. 'ip' is an IP version 4 address.
|
|
name
-
|
String, this is the name of the droplet - must be formatted by hostname rules, or the name of a SSH key, or the name of a domain.
|
|
oauth_token
string
|
DigitalOcean OAuth token.
There are several other environment variables which can be used to provide this value.
i.e., - 'DO_API_TOKEN', 'DO_API_KEY', 'DO_OAUTH_TOKEN' and 'OAUTH_TOKEN'
aliases: api_token |
|
state
-
|
|
Indicate desired state of the target.
|
timeout
integer
|
Default: 30
|
The timeout in seconds used for polling DigitalOcean's API.
|
validate_certs
boolean
|
|
If set to
no , the SSL certificates will not be validated.This should only set to
no used on personally controlled sites using self-signed certificates. |
Notes¶
Note
Environment variables DO_OAUTH_TOKEN can be used for the oauth_token.
As of Ansible 1.9.5 and 2.0, Version 2 of the DigitalOcean API is used, this removes
client_id
andapi_key
options in favor ofoauth_token
.If you are running Ansible 1.9.4 or earlier you might not be able to use the included version of this module as the API version used has been retired.
Examples¶
# Create a domain
- digital_ocean_domain:
state: present
name: my.digitalocean.domain
ip: 127.0.0.1
# Create a droplet and a corresponding domain
- digital_ocean:
state: present
name: test_droplet
size_id: 1gb
region_id: sgp1
image_id: ubuntu-14-04-x64
register: test_droplet
- digital_ocean_domain:
state: present
name: "{{ test_droplet.droplet.name }}.my.domain"
ip: "{{ test_droplet.droplet.ip_address }}"
Status¶
This module is guaranteed to have no backward incompatible interface changes going forward. [stableinterface]
This module is maintained by the Ansible Community. [community]