Forge Home


Takes the current droplet public IP and creates a Digital Ocean DNS record with it.


6,857 latest version

4.5 quality score

We run a couple of automated
scans to help you access a
module's quality. Each module is
given a score based on how well
the author has formatted their
code and documentation and
modules are also checked for
malware using VirusTotal.

Please note, the information below
is for guidance only and neither of
these methods should be considered
an endorsement by Puppet.

Version information

  • 0.2.0 (latest)
  • 0.1.0
released Nov 4th 2016
This version is compatible with:
  • ,

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'andrewwippler-do_dns', '0.2.0'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add andrewwippler-do_dns
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install andrewwippler-do_dns --version 0.2.0

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.



andrewwippler/do_dns — version 0.2.0 Nov 4th 2016

Table of Contents

  1. Overview
  2. Description
  3. Setup - The basics of getting started with do_dns
  4. Usage - Configuration options and additional functionality
  5. Reference
  6. Limitations
  7. Development - Guide for contributing to the module


Grabs the Digital Ocean public IP address and points it to a Digital Ocean DNS record using the $::hostname fact. Build Status

Module Description

Uses the Digital Ocean metadata of your droplet and issues an api curl command to set the dns record based on the droplet's hostname.


What do_dns affects

  • creates /usr/local/bin/ and executes it.


class {'do_dns':
  api_key  => 'xxxxx',
  dns_zone => 'domain.tld',

This will ensure $::hostname.domain.tld points to this droplet.



This is your Digital Ocean API key for managing DNS records


This is the domain zone you want to update.

filename (optional)

This is an optional setting. Configures the filename of the script to execute. Useful if you need to update the DNS record.


Only works on Digital Ocean Droplets and Digital Ocean DNS. Requires curl and Puppet 4.x (or 3.5+ with future parser).