[openstack-dev] [Glance] python-glanceclient 1.0.x back compat for v2 proposal.

Flavio Percoco flavio at redhat.com
Fri Sep 11 08:32:03 UTC 2015


On 11/09/15 08:08 +1200, Robert Collins wrote:
>On 11 September 2015 at 07:48, Nikhil Komawar <nik.komawar at gmail.com> wrote:
>> Hi all,
>>
>...
>> 3. python-glanceclient upgrades need to be done in staged manner and by
>> cross-checking the rel-notes or preferably commit messages if your
>> deployment is fragile to upgrades. A CI/CD pipeline shouldn't need such
>> back compat changes for long period of time.
>
>I wanted to ask more about this one. This is AIUI opposite to the
>advice we've previously given well, everyone. My understanding was
>that for all clients, all versions of the client work with all
>versions of OpenStack that are currently upstream supported, always.
>
>That suggests that installing the current version is always safe! Has
>that changed? What should users that use many different clouds do now?

I believe the above keeps being true. At least, that's what I hope,
for the sake of interoperability and compatibility.

However, let me expand a bit what Nikhil said in his emails on this
thread:

1) The CLI and the library are still compatible with the V1 of the
API. Unfortunately, these 2 APIs are not 100% compatible between them
and that's what is causing the issues mentioned in the previous email.

2) While I think this incompatibilities are unfortunate, I also
think this changes are required to clean up the CLI from old
properties. This is the first time that Glance's does this - not going
to get in the details of why this is the case - but I believe it's
good for the project at this point.

Now, the real reason why I think we're having this conversation now
and we didn't have it before is because glanceclient keeps depending
on an explicit/default API version being passed through the CLI rather
than using the information returned by the identity service.

In addition to the above, glanceclient - and I think many other
clients too - keeps mapping the CLI 1:1 to the server's API. I think
this makes maintaining the CLI more difficult and it's also
not-user-friendly. Many things that are exposed through the CLI
- and especially the way they are exposed: json, I'm looking at you -
are simply not required or not important for the user that just wants
to "use the cloud".

To conclude, this release doesn't mean the team is dead set on the
current CLI. It just means that the CLI has been cleaned up and
Liberty's stable branch for glanceclient will be cut from the latest
version. If there are things users want to have, they'll be
reconsidered and added back if necessary. These things would be
released in a minor version during Mitaka and users will be able to
consume them anyway. In other words, I'd love to see more interaction
between the glance community and the broader users community. The lack
of communication between these two has caused most of the problems
we've seen lately. I hope enough feedback will come back and thorough
tests of this new version will also be done, which is not to say that
these breaking changes are meant to increase the communication, just
to be clear :)

Cheers,
Flavio

P.S: Also, in this specific case, I'd rather make v1's CLI v2
compatible than the other way around, TBH. That'd help people migrate
their scripts and still be able to use them to talk to v1 servers
without any changes. Can we talk about this?


>Cheers,
>Rob
>
>__________________________________________________________________________
>OpenStack Development Mailing List (not for usage questions)
>Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
>http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

-- 
@flaper87
Flavio Percoco
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20150911/a689f9c5/attachment.pgp>


More information about the OpenStack-dev mailing list