summaryrefslogtreecommitdiff
path: root/doc/examples/zone_create_secondary.py
blob: ce9da1ebf650f01aa99ea610a5f2c3db69437426 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
import logging
import uuid

from keystoneclient.auth.identity import generic
from keystoneclient import session as keystone_session

from designateclient import exceptions
from designateclient import shell
from designateclient.v2 import client


logging.basicConfig(level='DEBUG')

auth = generic.Password(
    auth_url=shell.env('OS_AUTH_URL'),
    username=shell.env('OS_USERNAME'),
    password=shell.env('OS_PASSWORD'),
    tenant_name=shell.env('OS_TENANT_NAME'))

session = keystone_session.Session(auth=auth)

client = client.Client(session=session)

# Primary Zone
primary = client.zones.create(
    'primary-%s.io.' % str(uuid.uuid4()),
    'PRIMARY',
    'root@x.com')

# Secondary Zone
slave = client.zones.create(
    'secondary-%s.io.' % str(uuid.uuid4()),
    'SECONDARY',
    masters=["127.0.1.1"])

# Try updating Masters for the Secondary
new_slave = client.zones.update(
    slave['id'],
    {"masters": ["10.0.0.1", "10.0.0.10"]}
)

# List all Zones
zones = client.zones.list()