[openstack-dev] [glance][nova] how to upgrade from v1 to v2?

Flavio Percoco flavio at redhat.com
Tue Sep 29 08:03:39 UTC 2015


On 28/09/15 09:03 -0400, Doug Hellmann wrote:
>Excerpts from John Garbutt's message of 2015-09-28 12:32:53 +0100:
>> On 28 September 2015 at 12:10, Sean Dague <sean at dague.net> wrote:
>> > On 09/27/2015 08:43 AM, Doug Hellmann wrote:
>> >> Excerpts from Mark Voelker's message of 2015-09-25 20:43:23 +0000:
>> >>> On Sep 25, 2015, at 1:56 PM, Doug Hellmann <doug at doughellmann.com> wrote:
>> >>>>
>> >>>> Excerpts from Mark Voelker's message of 2015-09-25 17:42:24 +0000:
>> > <snip>
>> >>>
>> >>> Ah.  Thanks for bringing that up, because I think this may be an area where there’s some misconception about what DefCore is set up to do today.  In it’s present form, the Board of Directors has structured DefCore to look much more at trailing indicators of market acceptance rather than future technical direction.  More on that over here. [1]
>> >>
>> >> And yet future technical direction does factor in, and I'm trying
>> >> to add a new heuristic to that aspect of consideration of tests:
>> >> Do not add tests that use proxy APIs.
>> >>
>> >> If there is some compelling reason to add a capability for which
>> >> the only tests use a proxy, that's important feedback for the
>> >> contributor community and tells us we need to improve our test
>> >> coverage. If the reason to use the proxy is that no one is deploying
>> >> the proxied API publicly, that is also useful feedback, but I suspect
>> >> we will, in most cases (glance is the exception), say "Yeah, that's
>> >> not how we mean for you to run the services long-term, so don't
>> >> include that capability."
>> >
>> > I think we might also just realize that some of the tests are using the
>> > proxy because... that's how they were originally written.
>>
>> From my memory, thats how we got here.
>>
>> The Nova tests needed to use an image API. (i.e. list images used to
>> check the snapshot Nova, or similar)
>>
>> The Nova proxy was chosen over Glance v1 and Glance v2, mostly due to
>> it being the only widely deployed option.
>
>Right, and I want to make sure it's clear that I am differentiating
>between "these tests are bad" and "these tests are bad *for DefCore*".
>We should definitely continue to test the proxy API, since it's a
>feature we have and that our users rely on.

++

>
>>
>> > And they could be rewritten to use native APIs.
>>
>> +1
>> Once Glance v2 is available.
>>
>> Adding Glance v2 as advisory seems a good step to help drive more adoption.
>
>I think we probably don't want to rewrite the existing tests, since
>that effectively changes the contract out from under existing folks
>complying with DefCore.  If we need new, parallel, tests that do
>not use the proxy to make more suitable tests for DefCore to use,
>we should create those.

I believe this is the road we'll take. It'll not only be safer but
it'll also respect the current contract.

>>
>> > I do agree that "testing proxies" should not be part of Defcore, and I
>> > like Doug's idea of making that a new heuristic in test selection.
>>
>> +1
>> Thats a good thing to add.
>> But I don't think we had another option in this case.
>
>We did have the option of leaving the feature out and highlighting the
>discrepancy to the contributors so tests could be added. That
>communication didn't really happen, as far as I can tell.

++

>
>> >> Sorry, I wasn't clear. The Nova team would, I expect, view the use of
>> >> those APIs in DefCore as a reason to avoid deprecating them in the code
>> >> even if they wanted to consider them as legacy features that should be
>> >> removed. Maybe that's not true, and the Nova team would be happy to
>> >> deprecate the APIs, but I did think that part of the feedback cycle we
>> >> were establishing here was to have an indication from the outside of the
>> >> contributor base about what APIs are considered important enough to keep
>> >> alive for a long period of time.
>> > I'd also agree with this. Defcore is a wider contract that we're trying
>> > to get even more people to write to because that cross section should be
>> > widely deployed. So deprecating something in Defcore is something I
>> > think most teams, Nova included, would be very reluctant to do. It's
>> > just asking for breaking your users.
>>
>> I can't see us removing the proxy APIs in Nova any time soon,
>> regardless of DefCore, as it would break too many people.
>>
>> But personally, I like dropping them from Defcore, to signal that the
>> best practice is to use the Glance v2 API directly, rather than the
>> Nova proxy.
>>
>> Maybe the are just marked deprecated, but still required, although
>> that sounds a bit crazy.
>
>Marking them as deprecated, then removing them from DefCore, would let
>the Nova team make a technical decision about what to do with them
>(maybe they get spun out into a separate service, maybe they're so
>popular you just keep them, whatever).

++


Flavio

-- 
@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/20150929/b4c90fa6/attachment.pgp>


More information about the OpenStack-dev mailing list