Login | Register For Free | Help
Search for: (Advanced)

Mailing List Archive: OpenStack: Dev

Images API v2 Versioning and Glance

 

 

OpenStack dev RSS feed   Index | Next | Previous | View Threaded


bcwaldon at gmail

Aug 8, 2012, 3:50 PM

Post #1 of 3 (127 views)
Permalink
Images API v2 Versioning and Glance

tl;dr - We're going to use minor versioning for the v2 Images API and take a more iterative approach to API design and implementation

Up until this point we have depended on big design up front for the Images API. We spent most of Essex talking about v2 without writing any code. At the beginning of the Folsom release cycle I took it upon myself to start implementing the v2 Images API (which has been rather slow-going). Several people have helped, for which I am grateful, but ultimately we didn't finish what was needed. Not only did we not finish everything, but there are several things in the spec that need to revisit.

The (possibly incorrect) assumption I have been working under is that we would release the v2 API and that would be it - just a major version, no minor versioning, no extensions. If we wanted to make changes, we would put them in v3.

That won't work. It has taken two releases to get to this point and we still aren't done. The solution as I see it is to use a more iterative design/implementation cycle for our APIs. We can't be designing massive API specs up front - it doesn't always work. We need to have the flexibility to move fast and get to something that works that we are proud of.

We are going to use minor versioning for the v2 Images API. This means that the Folsom release will implement a v2.0 spec, with additional (and already identified) features in a v2.1 sometime early in Grizzly.

Please voice any and all concerns ASAP since we're on a pretty short timeline.


Brian Waldon
The People's PTL
_______________________________________________
Mailing list: https://launchpad.net/~openstack
Post to : openstack [at] lists
Unsubscribe : https://launchpad.net/~openstack
More help : https://help.launchpad.net/ListHelp


Gabriel.Hurley at nebula

Aug 8, 2012, 4:10 PM

Post #2 of 3 (118 views)
Permalink
Re: Images API v2 Versioning and Glance [In reply to]

With the stipulation that clients will be able to talk to all versions of the API from here on forward, I am totally in favor of this.

- Gabriel

> -----Original Message-----
> From: openstack-bounces+gabriel.hurley=nebula.com [at] lists
> [mailto:openstack-
> bounces+gabriel.hurley=nebula.com [at] lists] On Behalf Of
> Brian Waldon
> Sent: Wednesday, August 08, 2012 3:51 PM
> To: openstack [at] lists
> Subject: [Openstack] Images API v2 Versioning and Glance
>
> tl;dr - We're going to use minor versioning for the v2 Images API and take a
> more iterative approach to API design and implementation
>
> Up until this point we have depended on big design up front for the Images
> API. We spent most of Essex talking about v2 without writing any code. At
> the beginning of the Folsom release cycle I took it upon myself to start
> implementing the v2 Images API (which has been rather slow-going). Several
> people have helped, for which I am grateful, but ultimately we didn't finish
> what was needed. Not only did we not finish everything, but there are
> several things in the spec that need to revisit.
>
> The (possibly incorrect) assumption I have been working under is that we
> would release the v2 API and that would be it - just a major version, no minor
> versioning, no extensions. If we wanted to make changes, we would put
> them in v3.
>
> That won't work. It has taken two releases to get to this point and we still
> aren't done. The solution as I see it is to use a more iterative
> design/implementation cycle for our APIs. We can't be designing massive API
> specs up front - it doesn't always work. We need to have the flexibility to
> move fast and get to something that works that we are proud of.
>
> We are going to use minor versioning for the v2 Images API. This means that
> the Folsom release will implement a v2.0 spec, with additional (and already
> identified) features in a v2.1 sometime early in Grizzly.
>
> Please voice any and all concerns ASAP since we're on a pretty short timeline.
>
>
> Brian Waldon
> The People's PTL
> _______________________________________________
> Mailing list: https://launchpad.net/~openstack
> Post to : openstack [at] lists
> Unsubscribe : https://launchpad.net/~openstack
> More help : https://help.launchpad.net/ListHelp



_______________________________________________
Mailing list: https://launchpad.net/~openstack
Post to : openstack [at] lists
Unsubscribe : https://launchpad.net/~openstack
More help : https://help.launchpad.net/ListHelp


bcwaldon at gmail

Aug 8, 2012, 4:17 PM

Post #3 of 3 (125 views)
Permalink
Re: Images API v2 Versioning and Glance [In reply to]

Great. The backwards-compatibility requirement you bring up isn't something new - we aren't dropping support for Image API v1 (v1.0, v1.1) in Glance or in python-glanceclient any time soon. What we will need to do is add better version negotiation code to handle failures when clients expect later versions than a server can provide.

Waldon

On Aug 8, 2012, at 4:10 PM, Gabriel Hurley wrote:

> With the stipulation that clients will be able to talk to all versions of the API from here on forward, I am totally in favor of this.
>
> - Gabriel
>
>> -----Original Message-----
>> From: openstack-bounces+gabriel.hurley=nebula.com [at] lists
>> [mailto:openstack-
>> bounces+gabriel.hurley=nebula.com [at] lists] On Behalf Of
>> Brian Waldon
>> Sent: Wednesday, August 08, 2012 3:51 PM
>> To: openstack [at] lists
>> Subject: [Openstack] Images API v2 Versioning and Glance
>>
>> tl;dr - We're going to use minor versioning for the v2 Images API and take a
>> more iterative approach to API design and implementation
>>
>> Up until this point we have depended on big design up front for the Images
>> API. We spent most of Essex talking about v2 without writing any code. At
>> the beginning of the Folsom release cycle I took it upon myself to start
>> implementing the v2 Images API (which has been rather slow-going). Several
>> people have helped, for which I am grateful, but ultimately we didn't finish
>> what was needed. Not only did we not finish everything, but there are
>> several things in the spec that need to revisit.
>>
>> The (possibly incorrect) assumption I have been working under is that we
>> would release the v2 API and that would be it - just a major version, no minor
>> versioning, no extensions. If we wanted to make changes, we would put
>> them in v3.
>>
>> That won't work. It has taken two releases to get to this point and we still
>> aren't done. The solution as I see it is to use a more iterative
>> design/implementation cycle for our APIs. We can't be designing massive API
>> specs up front - it doesn't always work. We need to have the flexibility to
>> move fast and get to something that works that we are proud of.
>>
>> We are going to use minor versioning for the v2 Images API. This means that
>> the Folsom release will implement a v2.0 spec, with additional (and already
>> identified) features in a v2.1 sometime early in Grizzly.
>>
>> Please voice any and all concerns ASAP since we're on a pretty short timeline.
>>
>>
>> Brian Waldon
>> The People's PTL
>> _______________________________________________
>> Mailing list: https://launchpad.net/~openstack
>> Post to : openstack [at] lists
>> Unsubscribe : https://launchpad.net/~openstack
>> More help : https://help.launchpad.net/ListHelp
>
>


_______________________________________________
Mailing list: https://launchpad.net/~openstack
Post to : openstack [at] lists
Unsubscribe : https://launchpad.net/~openstack
More help : https://help.launchpad.net/ListHelp

OpenStack dev RSS feed   Index | Next | Previous | View Threaded
 
 


Interested in having your list archived? Contact Gossamer Threads
 
  Web Applications & Managed Hosting Powered by Gossamer Threads Inc.