l.d.b.DNSDriver(BaseDriver) : class documentation

Part of libcloud.dns.base View Source View In Hierarchy

Known subclasses: libcloud.dns.drivers.dummy.DummyDNSDriver, libcloud.dns.drivers.linode.LinodeDNSDriver, libcloud.dns.drivers.rackspace.RackspaceDNSDriver, libcloud.dns.drivers.route53.Route53DNSDriver, libcloud.dns.drivers.zerigo.ZerigoDNSDriver

DNS driver.
Method __init__ @requires: key, secret
Method list_record_types Return a list of RecordType objects supported by the provider.
Method list_zones Return a list of zones.
Method list_records Return a list of records for the provided zone.
Method get_zone Return a Zone instance.
Method get_record Return a Record instance.
Method create_zone Create a new zone.
Method update_zone Update en existing zone.
Method create_record Create a new record.
Method update_record Update an existing record.
Method delete_zone Delete a zone.
Method delete_record Delete a record.
Method _string_to_record_type Return a string representation of a DNS record type to a libcloud RecordType ENUM.

Inherited from BaseDriver:

Method _ex_connection_class_kwargs Return extra connection keyword arguments which are passed to the Connection class constructor.
def __init__(self, key, secret=None, secure=True, host=None, port=None, **kwargs): (source)
@requires: key, secret
def list_record_types(self): (source)
Return a list of RecordType objects supported by the provider.

@return: A list of C{RecordType} instances.
def list_zones(self): (source)
Return a list of zones.

@return: A list of C{Zone} instances.
def list_records(self, zone): (source)
Return a list of records for the provided zone.

@type zone: C{Zone}
@param zone: Zone to list records for.

@return: A list of C{Record} instances.
def get_zone(self, zone_id): (source)
Return a Zone instance.

@return: C{Zone} instance.
def get_record(self, zone_id, record_id): (source)
Return a Record instance.

@return: C{Record} instance.
def create_zone(self, domain, type='master', ttl=None, extra=None): (source)
Create a new zone.

@type domain: C{string}
@param domain: Zone domain name.

@type type: C{string}
@param type: Zone type (master / slave).

@param ttl: C{int}
@param ttl: (optional) TTL for new records.

@type extra: C{dict}
@param extra: (optional) Extra attributes (driver specific).
def update_zone(self, zone, domain, type='master', ttl=None, extra=None): (source)
Update en existing zone.

@type zone: C{Zone}
@param zone: Zone to update.

@type domain: C{string}
@param domain: Zone domain name.

@type type: C{string}
@param type: Zone type (master / slave).

@param ttl: C{int}
@param ttl: (optional) TTL for new records.

@type extra: C{dict}
@param extra: (optional) Extra attributes (driver specific).
def create_record(self, name, zone, type, data, extra=None): (source)
Create a new record.

@param name: C{string}
@type name: Hostname or FQDN.

@type zone: C{Zone}
@param zone: Zone where the requested record is created.

@type type: C{RecordType}
@param type: DNS record type (A, AAAA, ...).

@type data: C{str}
@param data: Data for the record (depends on the record type).

@type extra: C{dict}
@param extra: (optional) Extra attributes (driver specific).
def update_record(self, record, name, type, data, extra): (source)
Update an existing record.

@param record: C{Record}
@type record: Record to update.

@param name: C{string}
@type name: Hostname or FQDN.

@type type: C{RecordType}
@param type: DNS record type (A, AAAA, ...).

@type data: C{str}
@param data: Data for the record (depends on the record type).

@type extra: C{dict}
@param extra: (optional) Extra attributes (driver specific).
def delete_zone(self, zone): (source)
Delete a zone.

Note: This will delete all the records belonging to this zone.

@param zone: C{Zone}
@type zone: Zone to delete.
def delete_record(self, record): (source)
Delete a record.

@param record: C{Record}
@type record: Record to delete.
def _string_to_record_type(self, string): (source)
Return a string representation of a DNS record type to a
libcloud RecordType ENUM.
API Documentation for libcloud, generated by pydoctor at 2012-11-19 11:53:43.