上之前的博客已经简单的说了如何增加一个扩展api,这次就简单说一些如何为这个扩展api增加客户端。
首先需要定义extension manager类(我定义在/usr/lib/python2.7/site-packages/novaclient/v2/storage.py):
from novaclient import base
class StorageExtensionManager(base.ManagerWithFind):
def list(self):
pass
def get_detail(self):
url = "/os-storage-pool/detail"
resp,body = self.api.client.get(url)
return body
StorageExtensionManager类的get_detail方法通过Nova Client对象向nova api发送GET /os-storage-pool/detail请求。这个请求最终会由之前博客中扩展的api处理
调用我们的客户端use_storage.py
from novaclient.v2 import client as nova_client
from novacl