<div dir="ltr"><div><div><div>First results is <a href="https://review.openstack.org/#/c/152569/">https://review.openstack.org/#/c/152569/</a><br><br>> - if os-compute-api-version is not supplied don't send any header at all<br></div>> - it is probably worth doing a bit version parsing to see if it makes sense eg of format:<br>> r"^([1-9]\d*)\.([1-9]\d*|0)$" or latest<br><br>implemented<br><br></div><br><div>>- handle HTTPNotAcceptable if the user asked for a version which is not supported <br></div>> (can also get a badrequest if its badly formatted and got through the novaclient filter)<br></div>Based on <a href="https://review.openstack.org/#/c/150641/">https://review.openstack.org/#/c/150641/</a> , HTTPNotFound (404) will be returned by API, so the current implementation of novaclient is not required any changes.<br><div><br>> - show the version header information returned<br></div><div>Imo, API should return exception with proper message which already include this information.<br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Feb 2, 2015 at 2:02 PM, Andrey Kurilin <span dir="ltr"><<a href="mailto:akurilin@mirantis.com" target="_blank">akurilin@mirantis.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Thanks for the summary, I'll try to send first patch(maybe WIP) in few days.<br></div><div class="gmail_extra"><br><div class="gmail_quote"><div><div class="h5">On Mon, Feb 2, 2015 at 1:43 PM, Christopher Yeoh <span dir="ltr"><<a href="mailto:cbkyeoh@gmail.com" target="_blank">cbkyeoh@gmail.com</a>></span> wrote:<br></div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div class="h5"><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote"><span>On Sat, Jan 31, 2015 at 4:09 AM, Andrey Kurilin <span dir="ltr"><<a href="mailto:akurilin@mirantis.com" target="_blank">akurilin@mirantis.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span><div dir="ltr">Thanks for the answer. Can I help with implementation of novaclient part?</div></span></blockquote><div><br></div></span><div>Sure! Do you think its something you can get proposed into Gerrit by the end of the week or very soon after? <br></div><div>Its the sort of timeframe we're looking for to get microversions enabled asap.... I guess just let me know if it <br></div><div>turns out you don't have the time.<br></div><div><br></div><div>So I think a short summary of what is needed is:<br></div><div>- if os-compute-api-version is not supplied don't send any header at all<br></div><div>- it is probably worth doing a bit version parsing to see if it makes sense eg of format:<br> r"^([1-9]\d*)\.([1-9]\d*|0)$" or latest<br></div><div>- handle HTTPNotAcceptable if the user asked for a version which is not supported <br></div><div> (can also get a badrequest if its badly formatted and got through the novaclient filter)<br></div><div>- show the version header information returned<br></div><div><br></div><div>Regards,<br><br>Chris<br></div><div><div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="gmail_extra"><br><div class="gmail_quote"><span>On Wed, Jan 28, 2015 at 11:50 AM, Christopher Yeoh <span dir="ltr"><<a href="mailto:cbkyeoh@gmail.com" target="_blank">cbkyeoh@gmail.com</a>></span> wrote:<br></span><div><div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span>On Fri, 23 Jan 2015 15:51:54 +0200<br>
Andrey Kurilin <<a href="mailto:akurilin@mirantis.com" target="_blank">akurilin@mirantis.com</a>> wrote:<br>
<br>
> Hi everyone!<br>
> After removing nova V3 API from novaclient[1], implementation of v1.1<br>
> client is used for v1.1, v2 and v3 [2].<br>
> Since we moving to micro versions, I wonder, do we need such<br>
> mechanism of choosing api version(os-compute-api-version) or we can<br>
> simply remove it, like in proposed change - [3]?<br>
> If we remove it, how micro version should be selected?<br>
><br>
<br>
</span>So since v3 was never officially released I think we can re-use<br>
os-compute-api-version for microversions which will map to the<br>
X-OpenStack-Compute-API-Version header. See here for details on what<br>
the header will look like. We need to also modify novaclient to handle<br>
errors when a version requested is not supported by the server.<br>
<br>
If the user does not specify a version number then we should not send<br>
anything at all. The server will run the default behaviour which for<br>
quite a while will just be v2.1 (functionally equivalent to v.2)<br>
<br>
<a href="http://specs.openstack.org/openstack/nova-specs/specs/kilo/approved/api-microversions.html" target="_blank">http://specs.openstack.org/openstack/nova-specs/specs/kilo/approved/api-microversions.html</a><br>
<div><div><br>
<br>
><br>
> [1] - <a href="https://review.openstack.org/#/c/138694" target="_blank">https://review.openstack.org/#/c/138694</a><br>
> [2] -<br>
> <a href="https://github.com/openstack/python-novaclient/blob/master/novaclient/client.py#L763-L769" target="_blank">https://github.com/openstack/python-novaclient/blob/master/novaclient/client.py#L763-L769</a><br>
> [3] - <a href="https://review.openstack.org/#/c/149006" target="_blank">https://review.openstack.org/#/c/149006</a><br>
><br>
<br>
</div></div></blockquote></div></div></div><br><br clear="all"><span><br>-- <br><div><div dir="ltr">Best regards,<br>Andrey Kurilin.<br></div></div>
</span></div>
</blockquote></div></div></div><br></div></div>
<br></div></div>__________________________________________________________________________<br>
OpenStack Development Mailing List (not for usage questions)<br>
Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" target="_blank">OpenStack-dev-request@lists.openstack.org?subject:unsubscribe</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
<br></blockquote></div><span class=""><br><br clear="all"><br>-- <br><div><div dir="ltr">Best regards,<br>Andrey Kurilin.<br></div></div>
</span></div>
</blockquote></div><br><br clear="all"><br>-- <br><div class="gmail_signature"><div dir="ltr">Best regards,<br>Andrey Kurilin.<br></div></div>
</div>