designate
Designate is a simple Ruby wrapper for the Zerigo API v1.1 specification.
Usage
d = Designate::Client.new("[email protected]", "30f1b76a010d062c22b07bda66c1d9f0")
Get all zones:
d.zones
Create a new zone:
d.create_zone("example.com")
Find a specific zone:
d.find_zone_by_id(12345)
d.find_zone_by_domain("example.com")
Get all zone templates:
d.templates
Find a template:
d.find_template(12345)
Get all hosts in a zone:
d.find_zone_by_domain("example.com").hosts
Create host:
d.find_zone_by_domain("example.com").create_host("MX", "mx1.example.com.")
The next features have only been tested in conjunction with capify-ec2. I recommend further testing before adding them to your projects. Also works via Capistrano, using zerigo.yml:
:username: "username"
:key: "API Key"
:domain: "example.com"
Within your project:
application = "test"
cap <server_name> zerigo:first_time
retrieves the first part of the <hostname> from the remote machine and creates:
CNAME, <hostname>.example.com => actual DNS name, as specified in your server address.
CNAME, <hostname>-test.example.com => web.example.com
Nothing will be created if the DNS names are already in use.
If the domain does not exist, it will be created.
Copyright
Copyright © 2010 James Miller. See LICENSE for details.