Module novaclient.v1_1 is used as implementation of V1.1, V2 and V3.
Since future development(microversioning) will be done across V2,
implementation should be done in appropriate module(to prevent misleading).
Despite the fact that implementation for all versions are equal, discover
method for contrib path worked only for v1.1. This patch fixes this bug and
modifies shell tests to check all versions.
Change-Id: Ib6798f4dfe177586302141f522dc593560ce6a5b
When we delete or show a keypair, if the keypair doesn't exist,
we'll get "The resource could not be found.(HTTP 404)", this
patch will change it to "ERROR: No keypair with a name or ID of
'keypair_name' exists."
Change-Id: Ifebd8d2213c327f3d3fdd672207170aebbe1bb40
Closes-Bug: #1307338
Adds support and tests for the keypairs extension for
the Nova V3 API. The V3 version of the keypair extension
has been made part of the core V3 API and as a result no longer
has the "os-" prefix in the url.
Differences between the V2 and V3 API are described here:
https://wiki.openstack.org/wiki/NovaAPIv2tov3
Partially implements blueprint v3-api
Change-Id: Id4a77e1e4565f63ecdf7753d3c224975519fc07c
_add_details() method copies keypair attributes retrieved
from Nova to an instance of Keypair class. Trying to set
attribute 'id' fails with AttributeError, because Keypair
class has a read-only property 'id'.
We can safely omit setting of attribute 'id', because it's
just an implementation detail (the id of a table row in a
database), and keypairs for a given tenant are uniquely
identified using attribute 'name'.
Fixes bug 1223934
Change-Id: I1045730e47e9e6ad31fcdfbaefdad77e2f3b2c3e
* Setting a resource to loaded prevents future lazy-loading
* Remove lookup by uuid in getid helper as it is no longer used
* Fixes bug 971183
Change-Id: Idd9d39ded41b94b08b03476c30e50277b477423d