tree 45dd38b6ff632adebe22e4d8991844fa46472b80
parent 86f5893af52b18ad81df4ee2d7c2f54412aa22ee
author ghanshyam <ghanshyam.mann@nectechnologies.in> 1439884044 +0900
committer ghanshyam <ghanshyam.mann@nectechnologies.in> 1439884044 +0900

Return complete response from hosts_client

Currently compute hosts_client returns Response by removing
top key from Response.
For example-
return service_client.ResponseBody(resp, body['host'])

As service clients are in direction to move to Tempest-lib, all
service clients should return Response without any truncation.
One good example is Resource pagination links which are lost with current
way of return value. Resource pagination links are present in parallel
(not inside) to top key of Response.

This patch makes compute hosts_client to return complete
Response body.

Implements: blueprint method-return-value-and-move-service-clients-to-lib

Change-Id: Ife5bdbbcbdd856ecbce66e8b9c74c70dbb93f077
