Backend

Backend Base

class designate.backend.base.Backend(target)[source]

Bases: designate.plugin.DriverPlugin

Base class for backend implementations

create_zone(context, zone)[source]

Create a DNS zone.

Parameters:
  • context – Security context information.
  • zone – the DNS zone.
delete_zone(context, zone)[source]

Delete a DNS zone.

Parameters:
  • context – Security context information.
  • zone – the DNS zone.
mdns_api[source]
ping(context)[source]

Ping the Backend service

start()[source]
stop()[source]
update_zone(context, zone)[source]

Update a DNS zone.

Parameters:
  • context – Security context information.
  • zone – the DNS zone.

Backend Akamai

class designate.backend.impl_akamai.AkamaiBackend(target)[source]

Bases: designate.backend.base.Backend

create_zone(context, zone)[source]

Create a DNS zone

delete_zone(context, zone)[source]

Delete a DNS zone

classmethod get_cfg_opts()[source]
exception designate.backend.impl_akamai.DelegationExists(*args, **kwargs)[source]

Bases: designate.exceptions.BadRequest, designate.backend.impl_akamai.EnhancedDNSException

Raised when an attempt to delete a zone which is still delegated to Akamai is made

error_type = 'delegation_exists'
exception designate.backend.impl_akamai.DuplicateZone(*args, **kwargs)[source]

Bases: designate.exceptions.DuplicateZone, designate.backend.impl_akamai.EnhancedDNSException

Raised when an attempt to create a zone which is registered to another Akamai account is made

class designate.backend.impl_akamai.EnhancedDNSClient(username, password)[source]

Bases: object

EnhancedDNS SOAP API Client

buildZone(zoneName, masters, endCustomerId, tsigKeyName=None, tsigKey=None, tsigAlgorithm=None)[source]
deleteZone(zoneName)[source]
deleteZones(zoneNames)[source]
getZone(zoneName)[source]
setZone(zone)[source]
setZones(zones)[source]
exception designate.backend.impl_akamai.EnhancedDNSException[source]

Bases: designate.exceptions.Backend

class designate.backend.impl_akamai.EnhancedDNSHttpAuthenticated(**kwargs)[source]

Bases: suds.transport.https.HttpAuthenticated

addenhanceddnsheaders(request)[source]
logenhanceddnsheaders(response)[source]
send(request)[source]
exception designate.backend.impl_akamai.Forbidden(*args, **kwargs)[source]

Bases: designate.exceptions.Forbidden, designate.backend.impl_akamai.EnhancedDNSException

Raised when an attempt to modify a zone which is registered to another Akamai account is made.

This appears to be returned when creating a new subzone of zone which already exists in another Akamai account.

designate.backend.impl_akamai.build_zone(client, target, zone)[source]

Backend Bind9

Bind 9 backend. Create and delete zones by executing rndc

class designate.backend.impl_bind9.Bind9Backend(target)[source]

Bases: designate.backend.base.Backend

create_zone(context, zone)[source]

Create a new Zone by executin rndc, then notify mDNS Do not raise exceptions if the zone already exists.

delete_zone(context, zone)[source]

Delete a new Zone by executin rndc Do not raise exceptions if the zone does not exist.

Backend Designate

class designate.backend.impl_designate.DesignateBackend(target)[source]

Bases: designate.backend.base.Backend

Support for Designate to Designate using Secondary zones.

client[source]
create_zone(context, zone)[source]
delete_zone(context, zone)[source]

Backend Dynect

class designate.backend.impl_dynect.DynClient(customer_name, user_name, password, endpoint='https://api.dynect.net:443', api_version='3.5.6', headers=None, verify=True, retries=1, timeout=10, timings=False, pool_maxsize=10, pool_connections=10)[source]

Bases: object

DynECT service client.

https://help.dynect.net/rest/

delete(*args, **kwargs)[source]
get(*args, **kwargs)[source]
get_timings()[source]
login()[source]
logout()[source]
patch(*args, **kwargs)[source]
poll_response(response)[source]

The API might return a job nr in the response in case of a async response: https://github.com/fog/fog/issues/575

post(*args, **kwargs)[source]
put(*args, **kwargs)[source]
request(method, url, retries=2, **kwargs)[source]
reset_timings()[source]
exception designate.backend.impl_dynect.DynClientAuthError(data=None, job_id=None, msgs=None, http_status=None, url=None, method=None, details=None)[source]

Bases: designate.backend.impl_dynect.DynClientError

exception designate.backend.impl_dynect.DynClientError(data=None, job_id=None, msgs=None, http_status=None, url=None, method=None, details=None)[source]

Bases: designate.exceptions.Backend

The base exception class for all HTTP exceptions.

static from_response(response, details=None)[source]
exception designate.backend.impl_dynect.DynClientOperationBlocked(*args, **kwargs)[source]

Bases: designate.exceptions.BadRequest, designate.backend.impl_dynect.DynClientError

error_type = 'operation_blocked'
class designate.backend.impl_dynect.DynECTBackend(target)[source]

Bases: designate.backend.base.Backend

Support for DynECT as a secondary DNS.

create_zone(context, zone)[source]
delete_zone(context, zone)[source]
classmethod get_cfg_opts()[source]
get_client()[source]
exception designate.backend.impl_dynect.DynTimeoutError[source]

Bases: designate.exceptions.Backend

A job timedout.

error_code = 408
error_type = 'dyn_timeout'

Backend Infoblox

class designate.backend.impl_infoblox.InfobloxBackend(*args, **kwargs)[source]

Bases: designate.backend.base.Backend

Provides a Designate Backend for Infoblox

create_zone(context, zone)[source]
delete_zone(context, zone)[source]
ping(context)[source]

Backend Nsd4

class designate.backend.impl_nsd4.NSD4Backend(target)[source]

Bases: designate.backend.base.Backend

NSDCT_VERSION = 'NSDCT1'
create_zone(context, zone)[source]
delete_zone(context, zone)[source]

Backend Fake

class designate.backend.impl_fake.FakeBackend(target)[source]

Bases: designate.backend.base.Backend

create_zone(context, zone)[source]
delete_zone(context, zone)[source]

Backend Powerdns

class designate.backend.impl_powerdns.PowerDNSBackend(target)[source]

Bases: designate.backend.base.Backend

create_zone(context, zone)[source]
delete_zone(context, zone)[source]
classmethod get_cfg_opts()[source]
session[source]

Table Of Contents

Previous topic

API

Next topic

Central

Project Source

This Page