本作品采用知识共享署名 3.0 非移植许可协议授权。 http://creativecommons.org/licenses/by/3.0/legalcode
V2 API - 绑定¶
BP: https://blueprints.launchpad.net/python-designateclient/+spec/v2-api-bindings
为 V2 API 提供绑定,使用与 V1 相同的基于 Session 的方法。
问题描述¶
为 V2 API 提供绑定。(这不包括 shell 命令)
提议的变更¶
我们将提供一个 designateclient.v2.client.Client 对象,它将加载其他 Managers(与 V1 中的 Controllers 或类似组件不太一样)。
Manager - 区域¶
列表¶
列出区域。
client.zones.list()
获取¶
获取一个区域。
client.zones.get(zone)
创建¶
创建一个区域。
client.zones.create(name)
更新¶
更新一个区域。
client.zones.update(zone)
删除¶
删除一个区域。
client.zones.delete(zone)
Manager - 记录集¶
列表¶
列出区域中的记录集。
client.recordsets.list(zone)
获取¶
获取一个记录集
client.recordsets.get(zone, recordset)
创建¶
在区域中创建一个记录集。
client.recordsets.create(zone, name, data)
更新¶
更新一个记录集。
client.recoredsets.update(zone, recordset, data)
删除¶
删除一个记录集。
client.recoredsets.delete(zone, recordset)
Manager - TLDs¶
列表¶
列出 TLDs。
client.tlds.list()
获取¶
获取一个 TLD
client.tlds.get(tld)
创建¶
创建 TLDs。
client.tlds.create(name, data)
更新¶
更新一个 TLD。
client.tlds.update(tld, data)
删除¶
删除一个 TLD。
client.tlds.delete(tld)
Manager - 黑名单¶
列表¶
列出黑名单。
client.blacklists.list()
获取¶
获取一个黑名单。
client.blacklists.get(blacklist)
创建¶
创建一个黑名单。
client.blacklists.create(name, pattern)
更新¶
更新一个黑名单。
client.blacklists.update(blacklist, pattern)
删除¶
删除一个黑名单。
client.blacklists.delete(blacklist)
Manager - 浮动 IP¶
列表¶
client.floatingips.list()
获取¶
client.floatingips.get(region, floatingip_id)
设置¶
为浮动 IP 设置 PTR 记录。
client.floatingips.set(region, floatingip_id, record)
取消设置¶
取消设置浮动 IP 的 PTR 记录。
client.floatingips.unset(region, floatingip_id)
实现¶
负责人¶
- 主要负责人
endre-karlson
里程碑¶
- 完成目标里程碑
Juno-2
工作项¶
N/A
依赖项¶
switch-to-keystone-session