tree 999202ba5ef2fcb1102be4caefc6cc27b91e5be8
parent d4038b4f99fa421edfe7f3e8ac580194638410bb
author ghanshyam <ghanshyam.mann@nectechnologies.in> 1440398737 +0900
committer ghanshyam <ghanshyam.mann@nectechnologies.in> 1440399027 +0900

Return complete response from interfaces_client

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

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 interfaces_client to return complete
Response body.

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