<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Tue, Apr 21, 2015 at 1:27 PM, Chris Friesen <span dir="ltr"><<a href="mailto:chris.friesen@windriver.com" target="_blank">chris.friesen@windriver.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On 04/21/2015 11:35 AM, Hayes, Graham wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
From: Jay Pipes [<a href="mailto:jaypipes@gmail.com" target="_blank">jaypipes@gmail.com</a>]<span class=""><br>
The existing --os-compute-api-version CLI option should be made to take:<br>
<br>
   * 2<br>
   * \d+.\d+<br>
   * "latest"<br>
<br>
And nothing else.<br>
</span></blockquote></blockquote>
<br><span class="">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Yes - please don't add a flag to the cli (or the python bindings for<br>
that matter)<br>
</blockquote>
<br></span>
Isn't a cli flag exactly what Jay was describing?</blockquote><div><br></div><div>It is, it already exists, it just needs to be made to properly recognize the required version strings, which is what Jay was suggesting.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">This should be done via discovery. If a call requires a micro-version<br>
that is not deployed - return an error.<br>
</blockquote>
<br></span>
I haven't had the pleasure(?) of needing to do this, but wouldn't you need to know what API versions are available before you try to do some task?  (In order to know what actions are available, or what parameters to expect to be returned.)<br></blockquote><div><br></div><div>When a user needs to know much more about the API than "this is the one that does Whiz-Bang Feature that I want" then we've failed.  Also, many users aren't probably going to care about API microversions, more likely to care that GWclient 2.1.2 is the version they need to use Whiz-Bang since that's what they'll have control over.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
As I understand it, Jay's proposal is that if you don't specify a version you get the default (currently version 2, I think), if you do specify a version you get that version, and if you specify "latest" then you get the most recent version that the server knows about.</blockquote><div><br></div><div>The way we've been headed in other discovery implementations is to negotiate the highest compatible version between the client and server unless a specific version requested.  What happens in the client will of course be client-specific, but as a user I would hope that it either makes a best effort to fail gracefully or make a lot of noise that includes a clue as to why it failed.</div></div><div><br></div><div><br></div><div>dt</div><div><br></div>-- <br><div class="gmail_signature"><br>Dean Troyer<br><a href="mailto:dtroyer@gmail.com" target="_blank">dtroyer@gmail.com</a><br></div>
</div></div>