Creates details API to fetch VNF detials

Created details API to fetch VNF details. This is optional
based on the --show-details flag enabled.

APIImpact
Partial-Bug: #1602112

Change-Id: I63bcf3f9ad23fbbcfdec6f72e45540ce55e6bd7c
This commit is contained in:
Janki
2016-08-11 13:08:40 +05:30
parent 6b677a8f38
commit 5a1f2f5717
2 changed files with 11 additions and 2 deletions

View File

@@ -671,7 +671,9 @@ class ShowCommand(TackerCommand, show.ShowOne):
params = {}
if parsed_args.show_details:
params = {'verbose': 'True'}
method_name = 'show_%s_details' % self.resource
else:
method_name = 'show_%s' % self.resource
if parsed_args.fields:
params = {'fields': parsed_args.fields}
if self.allow_names:
@@ -680,8 +682,10 @@ class ShowCommand(TackerCommand, show.ShowOne):
else:
_id = parsed_args.id
obj_shower = getattr(tacker_client, "show_%s" % self.resource)
obj_shower = getattr(tacker_client, method_name)
data = obj_shower(_id, **params)
if parsed_args.show_details:
data[self.resource] = data.pop('details')[0]
self.format_output_data(data)
resource = data[self.resource]
if self.resource in data:

View File

@@ -339,6 +339,7 @@ class Client(ClientBase):
vnfs_path = '/vnfs'
vnf_path = '/vnfs/%s'
vnf_scale_path = '/vnfs/%s/actions'
vnf_detail = '/vnfs/%s/details'
vims_path = '/vims'
vim_path = '/vims/%s'
@@ -413,6 +414,10 @@ class Client(ClientBase):
def show_vnf(self, vnf, **_params):
return self.get(self.vnf_path % vnf, params=_params)
@APIParamsCall
def show_vnf_details(self, vnf, **_params):
return self.get(self.vnf_detail % vnf, params=_params)
@APIParamsCall
def create_vnf(self, body=None):
return self.post(self.vnfs_path, body=body)