Central

Central RPC API

class designate.central.rpcapi.CentralAPI(topic=None)[source]

Bases: object

Client side of the central RPC API.

API version history:

1.0 - Initial version 1.1 - Add new finder methods 1.2 - Add get_tenant and get_tenants 1.3 - Add get_absolute_limits 2.0 - Renamed most get_resources to find_resources 2.1 - Add quota methods 3.0 - RecordSet Changes 3.1 - Add floating ip ptr methods 3.2 - TLD Api changes 3.3 - Add methods for blacklisted domains 4.0 - Create methods now accept designate objects 4.1 - Add methods for server pools 4.2 - Add methods for pool manager integration 4.3 - Added Zone Transfer Methods 5.0 - Remove dead server code 5.1 - Add xfr_zone 5.2 - Add Zone Import methods 5.3 - Add Zone Export method 5.4 - Add asynchronous Zone Export methods 5.5 - Add deleted zone purging task 5.6 - Changed ‘purge_zones’ function args 6.0 - Renamed domains to zones
RPC_API_VERSION = '6.0'
count_records(context, criterion=None)[source]
count_recordsets(context, criterion=None)[source]
count_report(context, criterion=None)[source]
count_tenants(context)[source]
count_zones(context, criterion=None)[source]
create_blacklist(context, blacklist)[source]
create_pool(context, pool)[source]
create_record(context, zone_id, recordset_id, record, increment_serial=True)[source]
create_recordset(context, zone_id, recordset)[source]
create_tld(context, tld)[source]
create_tsigkey(context, tsigkey)[source]
create_zone(context, zone)[source]
create_zone_export(context, zone_id)[source]
create_zone_import(context, request_body)[source]
create_zone_transfer_accept(context, zone_transfer_accept)[source]
create_zone_transfer_request(context, zone_transfer_request)[source]
delete_blacklist(context, blacklist_id)[source]
delete_pool(context, pool_id)[source]
delete_record(context, zone_id, recordset_id, record_id, increment_serial=True)[source]
delete_recordset(context, zone_id, recordset_id, increment_serial=True)[source]
delete_tld(context, tld_id)[source]
delete_tsigkey(context, tsigkey_id)[source]
delete_zone(context, zone_id)[source]
delete_zone_export(context, zone_export_id)[source]
delete_zone_import(context, zone_import_id)[source]
delete_zone_transfer_accept(context, zone_transfer_accept_id)[source]
delete_zone_transfer_request(context, zone_transfer_request_id)[source]
export_zone(context, zone_id)[source]
find_blacklist(context, criterion)[source]
find_blacklists(context, criterion=None, marker=None, limit=None, sort_key=None, sort_dir=None)[source]
find_pool(context, criterion=None)[source]
find_pools(context, criterion=None, marker=None, limit=None, sort_key=None, sort_dir=None)[source]
find_record(context, criterion=None)[source]
find_records(context, criterion=None, marker=None, limit=None, sort_key=None, sort_dir=None)[source]
find_recordset(context, criterion=None)[source]
find_recordsets(context, criterion=None, marker=None, limit=None, sort_key=None, sort_dir=None)[source]
find_tenants(context)[source]
find_tlds(context, criterion=None, marker=None, limit=None, sort_key=None, sort_dir=None)[source]
find_tsigkeys(context, criterion=None, marker=None, limit=None, sort_key=None, sort_dir=None)[source]
find_zone(context, criterion=None)[source]
find_zone_exports(context, criterion=None, marker=None, limit=None, sort_key=None, sort_dir=None)[source]
find_zone_imports(context, criterion=None, marker=None, limit=None, sort_key=None, sort_dir=None)[source]
find_zone_transfer_accept(context, zone_transfer_accept)[source]
find_zone_transfer_accepts(context, criterion=None, marker=None, limit=None, sort_key=None, sort_dir=None)[source]
find_zone_transfer_request(context, zone_transfer_request)[source]
find_zone_transfer_requests(context, criterion=None, marker=None, limit=None, sort_key=None, sort_dir=None)[source]
find_zones(context, criterion=None, marker=None, limit=None, sort_key=None, sort_dir=None)[source]
get_absolute_limits(context)[source]
get_blacklist(context, blacklist_id)[source]
get_floatingip(context, region, floatingip_id)[source]
classmethod get_instance()[source]

The rpc.get_client() which is called upon the API object initialization will cause a assertion error if the designate.rpc.TRANSPORT isn’t setup by rpc.init() before.

This fixes that by creating the rpcapi when demanded.

get_pool(context, pool_id)[source]
get_quota(context, tenant_id, resource)[source]
get_quotas(context, tenant_id)[source]
get_record(context, zone_id, recordset_id, record_id)[source]
get_recordset(context, zone_id, recordset_id)[source]
get_tenant(context, tenant_id)[source]
get_tld(context, tld_id)[source]
get_tsigkey(context, tsigkey_id)[source]
get_zone(context, zone_id)[source]
get_zone_export(context, zone_export_id)[source]
get_zone_import(context, zone_import_id)[source]
get_zone_ns_records(context, zone_id)[source]
get_zone_transfer_accept(context, zone_transfer_accept_id)[source]
get_zone_transfer_request(context, zone_transfer_request_id)[source]
list_floatingips(context)[source]
purge_zones(context, criterion, limit=None)[source]
reset_quotas(context, tenant_id)[source]
set_quota(context, tenant_id, resource, hard_limit)[source]
sync_record(context, zone_id, recordset_id, record_id)[source]
sync_zone(context, zone_id)[source]
sync_zones(context)[source]
touch_zone(context, zone_id)[source]
update_blacklist(context, blacklist)[source]
update_floatingip(context, region, floatingip_id, values)[source]
update_pool(context, pool)[source]
update_record(context, record, increment_serial=True)[source]
update_recordset(context, recordset, increment_serial=True)[source]
update_status(context, zone_id, status, serial)[source]
update_tld(context, tld)[source]
update_tsigkey(context, tsigkey)[source]
update_zone(context, zone, increment_serial=True)[source]
update_zone_export(context, zone_export)[source]
update_zone_import(context, zone_import)[source]
update_zone_transfer_accept(context, zone_transfer_accept)[source]
update_zone_transfer_request(context, zone_transfer_request)[source]
xfr_zone(context, zone_id)[source]

Central Service

class designate.central.service.Service(threads=None)[source]

Bases: designate.service.RPCService, designate.service.Service

RPC_API_VERSION = '6.0'
count_records(context, criterion=None)[source]
count_recordsets(context, criterion=None)[source]
count_report(context, criterion=None)[source]
count_tenants(context)[source]
count_zones(context, criterion=None)[source]
create_blacklist(*args, **kwargs)[source]
create_pool(*args, **kwargs)[source]
create_record(*args, **kwargs)[source]
create_recordset(*args, **kwargs)[source]
create_tld(*args, **kwargs)[source]
create_tsigkey(*args, **kwargs)[source]
create_zone(*args, **kwargs)[source]
create_zone_export(*args, **kwargs)[source]
create_zone_import(*args, **kwargs)[source]
create_zone_transfer_accept(*args, **kwargs)[source]
create_zone_transfer_request(*args, **kwargs)[source]
delete_blacklist(*args, **kwargs)[source]
delete_pool(*args, **kwargs)[source]
delete_record(*args, **kwargs)[source]
delete_recordset(*args, **kwargs)[source]
delete_tld(*args, **kwargs)[source]
delete_tsigkey(*args, **kwargs)[source]
delete_zone(*args, **kwargs)[source]

Delete or abandon a zone On abandon, delete the zone from the DB immediately. Otherwise, set action to DELETE and status to PENDING and poke Pool Manager’s “delete_zone” to update the resolvers. PM will then poke back to set action to NONE and status to DELETED

delete_zone_export(*args, **kwargs)[source]
delete_zone_import(*args, **kwargs)[source]
delete_zone_transfer_accept(*args, **kwargs)[source]
delete_zone_transfer_request(*args, **kwargs)[source]
export_zone(context, zone_id)[source]
find_blacklist(context, criterion)[source]
find_blacklists(context, criterion=None, marker=None, limit=None, sort_key=None, sort_dir=None)[source]
find_pool(context, criterion=None)[source]
find_pools(context, criterion=None, marker=None, limit=None, sort_key=None, sort_dir=None)[source]
find_record(context, criterion=None)[source]
find_records(context, criterion=None, marker=None, limit=None, sort_key=None, sort_dir=None)[source]
find_recordset(context, criterion=None)[source]
find_recordsets(context, criterion=None, marker=None, limit=None, sort_key=None, sort_dir=None)[source]
find_tenants(context)[source]
find_tlds(context, criterion=None, marker=None, limit=None, sort_key=None, sort_dir=None)[source]
find_tsigkeys(context, criterion=None, marker=None, limit=None, sort_key=None, sort_dir=None)[source]
find_zone(context, criterion=None)[source]
find_zone_exports(context, criterion=None, marker=None, limit=None, sort_key=None, sort_dir=None)[source]
find_zone_imports(context, criterion=None, marker=None, limit=None, sort_key=None, sort_dir=None)[source]
find_zone_transfer_accept(context, criterion)[source]
find_zone_transfer_accepts(context, criterion=None, marker=None, limit=None, sort_key=None, sort_dir=None)[source]
find_zone_transfer_request(context, criterion)[source]
find_zone_transfer_requests(context, criterion=None, marker=None, limit=None, sort_key=None, sort_dir=None)[source]
find_zones(context, criterion=None, marker=None, limit=None, sort_key=None, sort_dir=None)[source]

List existing zones including the ones flagged for deletion.

get_absolute_limits(context)[source]
get_blacklist(context, blacklist_id)[source]
get_floatingip(context, region, floatingip_id)[source]

Get Floating IP PTR

get_pool(context, pool_id)[source]
get_quota(context, tenant_id, resource)[source]
get_quotas(context, tenant_id)[source]
get_record(context, zone_id, recordset_id, record_id)[source]
get_recordset(context, zone_id, recordset_id)[source]
get_tenant(context, tenant_id)[source]
get_tld(context, tld_id)[source]
get_tsigkey(context, tsigkey_id)[source]
get_zone(context, zone_id)[source]

Get a zone, even if flagged for deletion

get_zone_export(context, zone_export_id)[source]
get_zone_import(context, zone_import_id)[source]
get_zone_ns_records(context, zone_id=None, criterion=None)[source]
get_zone_transfer_accept(context, zone_transfer_accept_id)[source]
get_zone_transfer_request(context, zone_transfer_request_id)[source]
list_floatingips(context)[source]

List Floating IPs PTR

  1. We have service_catalog in the context and do a lookup using the

    token pr Neutron in the SC

  2. We lookup FIPs using the configured values for this deployment.

mdns_api[source]
ping(context)[source]
pool_manager_api[source]
purge_zones(context, criterion, limit=None)[source]

Purge deleted zones. :returns: number of purged zones

quota[source]
reset_quotas(*args, **kwargs)[source]
scheduler[source]
service_name[source]
set_quota(*args, **kwargs)[source]
start()[source]
stop()[source]
storage[source]
sync_record(*args, **kwargs)[source]
sync_zone(*args, **kwargs)[source]
sync_zones(*args, **kwargs)[source]
target = <Target version=6.0>
touch_zone(*args, **kwargs)[source]
update_blacklist(*args, **kwargs)[source]
update_floatingip(*args, **kwargs)[source]

We strictly see if values[‘ptrdname’] is str or None and set / unset the requested FloatingIP’s PTR record based on that.

update_pool(*args, **kwargs)[source]
update_record(*args, **kwargs)[source]
update_recordset(*args, **kwargs)[source]
update_status(*args, **kwargs)[source]
Parameters:
  • context – Security context information.
  • zone_id – The ID of the designate zone.
  • status – The status, ‘SUCCESS’ or ‘ERROR’.
  • serial – The consensus serial number for the zone.
Returns:

updated zone

update_tld(*args, **kwargs)[source]
update_tsigkey(*args, **kwargs)[source]
update_zone(*args, **kwargs)[source]
update_zone_export(*args, **kwargs)[source]
update_zone_import(*args, **kwargs)[source]
update_zone_transfer_accept(*args, **kwargs)[source]
update_zone_transfer_request(*args, **kwargs)[source]
xfr_zone(context, zone_id)[source]
zone_manager_api[source]
designate.central.service.notification(notification_type)[source]
designate.central.service.retry(cb=None, retries=50, delay=150)[source]

A retry decorator that ignores attempts at creating nested retries

designate.central.service.synchronized_zone(zone_arg=1, new_zone=False)[source]

Ensures only a single operation is in progress for each zone

A Decorator which ensures only a single operation can be happening on a single zone at once, within the current designate-central instance

designate.central.service.transaction(f)[source]

Table Of Contents

Previous topic

Backend

Next topic

MDNS

Project Source

This Page