Documentation

digital_ocean_domain - Create/delete a DNS record in DigitalOcean

New in version 1.6.

Synopsis

  • Create/delete a DNS record 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
The IP address to point a domain at.
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
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
    Choices:
  • present ←
  • absent
Indicate desired state of the target.
timeout Default:
30
The timeout in seconds used for polling DigitalOcean's API.
validate_certs
bool
    Choices:
  • no
  • yes ←
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 and api_key options in favor of oauth_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 record

- digital_ocean_domain:
    state: present
    name: my.digitalocean.domain
    ip: 127.0.0.1

# Create a droplet and a corresponding domain record

- 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 flagged as stableinterface which means that the maintainers for this module guarantee that no backward incompatible interface changes will be made.

Author

  • Michael Gregson (@mgregson)

Hint

If you notice any issues in this documentation you can edit this document to improve it.