<div dir="ltr"><div>To summarize. I believe we have 3 decisions from my original email but I have also uncovered some more problems.</div><div><br></div><div>1. "replication controller" instead of "rc"</div><div><br></div>Adrian, regarding "rc" and "replication controller". The OSC uses verbose commands including multi words. This includes "availability zone", "volume type" and "security group role". As this precedent is set, "replication controller" rather then "rc" is inline with current syntax. While I personally am not for verbose operations in general or multi word options, given the breath of commands already available you may not intrinsically know what "rc" was, e.g. a OSC user that does not work with containers.<div><br></div><div>I believe "replication controller" is the appropriate choice here.</div><div><br></div><div>2. "execute" or "exec"<br></div><div><br></div><div>This is clearly a new type of action that requires OSC to provide recommended guidance on. I am 50/50 here.</div><div><br></div><div>3. "set" or "update"</div><div><br></div><div>While I consider the word "set" to be more an attribute specific term, "update" implies a change of multiple attributes. If I just looked at the usage I would say "update". However, looking at the actual usage openstack client set syntax uses named parameters to set multiple parameters.</div><div><div><br></div><div>$ openstack help quota set</div><div><div>usage: openstack quota set [-h] [--class] [--properties <properties>]</div><div> [--ram <ram>] [--secgroup-rules <secgroup-rules>]</div><div> [--instances <instances>] [--key-pairs <key-pairs>]</div><div> [--fixed-ips <fixed-ips>] [--secgroups <secgroups>]</div><div> [--injected-file-size <injected-file-size>]</div><div> [--floating-ips <floating-ips>]</div><div> [--injected-files <injected-files>]</div><div> [--cores <cores>]</div><div> [--injected-path-size <injected-path-size>]</div><div> [--gigabytes <gigabytes>] [--volumes <volumes>]</div><div> [--snapshots <snapshots>]</div><div> [--volume-type <volume-type>]</div><div> <project/class></div></div><div><br></div><div><br></div><div>Looking into the help syntax of a Magnum "update" option, I find it supports "add", "replace" and "remove" operations. This complicates matters.<br></div></div><div><br></div><div><div>$ magnum help bay-update</div><div>usage: magnum bay-update <bay> <op> <path=value> [<path=value> ...]</div><div><br></div><div>Update information about the given bay.</div><div><br></div><div>Positional arguments:</div><div> <bay> UUID or name of bay</div><div> <op> Operations: 'add', 'replace' or 'remove'</div><div> <path=value> Attributes to add/replace or remove (only PATH is necessary on</div><div> remove)</div></div><div><br></div><div>I see the name specific parameters as a lot of work, I would be a fan of more general name=value attributes.<br></div><div><br></div><div>Does "update" really then become "set" and "unset"? Opinions.</div><div><br></div><div>4. "service" is already used by Identity. See <a href="http://docs.openstack.org/developer/python-openstackclient/command-objects/service.html">http://docs.openstack.org/developer/python-openstackclient/command-objects/service.html</a><br></div><div><br></div><div>5. "container" is already used by Swift. See <a href="http://docs.openstack.org/developer/python-openstackclient/command-objects/container.html">http://docs.openstack.org/developer/python-openstackclient/command-objects/container.html</a></div><div><br></div><div><br></div><div>I have no suggestions on 4. and 5.</div><div>Given these last 2 entanglements the OSC will quickly become unusable as more clients which it integrate.</div><div><br></div><div>Regards</div><div><br></div><div>Ronald</div></div><div class="gmail_extra"><br clear="all"><div><div class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div><div style="font-family:arial;font-size:small">Ronald Bradford</div><div style="font-family:arial;font-size:small"><br></div><span style="color:rgb(102,102,102)">Web Site: </span><a style="color:rgb(102,102,102)" href="http://ronaldbradford.com/" target="_blank">http://ronaldbradford.com</a><br style="color:rgb(102,102,102)">
<span style="color:rgb(102,102,102)">LinkedIn: </span><a style="color:rgb(102,102,102)" href="http://www.linkedin.com/in/ronaldbradford" target="_blank">http://www.linkedin.com/in/ronaldbradford</a><br><span style="color:rgb(102,102,102)">Twitter: </span><a style="color:rgb(102,102,102)" href="http://twitter.com/ronaldbradford" target="_blank">@RonaldBradford</a><br>
<span style="color:rgb(102,102,102)">Skype: RonaldBradford</span><div><span style="color:rgb(102,102,102)">GTalk: Ronald.Bradford<br></span><div><span style="color:rgb(102,102,102)">IRC: rbradfor<br></span><br></div></div></div></div></div></div></div></div></div></div></div>
<br><div class="gmail_quote">On Mon, May 25, 2015 at 1:30 AM, Steve Martinelli <span dir="ltr"><<a href="mailto:stevemar@ca.ibm.com" target="_blank">stevemar@ca.ibm.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><font size="2" face="sans-serif">Hey Ronald,</font>
<br>
<br><font size="2" face="sans-serif">Thanks for asking first, as more folks
are adopting OSC plugins for their respective clients we should probably
streamline this a bit, but the ML works for now.</font>
<br>
<br><font size="2" face="sans-serif">Just 2 remarks... </font>
<br>
<br><font size="2" face="sans-serif">I'd actually prefer '</font><tt><font size="2">replication
controller' (which you prefer) instead of 'rc' (as adrian suggested). The
reason for this is that in OSC we try not to abbreviate when possible.
</font></tt>
<br>
<br><tt><font size="2">Also, instead of 'update', is this analogous to user
update or volume update? We've been using the key term 'set' instead wherever
possible.</font></tt>
<br>
<br><tt><font size="2">For a complete list of current commands in vanilla
OSC: </font></tt><a href="http://docs.openstack.org/developer/python-openstackclient/command-list.html" target="_blank"><tt><font size="2" color="blue">http://docs.openstack.org/developer/python-openstackclient/command-list.html</font></tt></a><tt><font size="2">
(see the lack of update :))</font></tt>
<br><font size="2" face="sans-serif"><br>
Thanks,<br>
<br>
Steve Martinelli<br>
OpenStack Keystone Core</font>
<br>
<br><tt><font size="2">Adrian Otto <<a href="mailto:adrian.otto@rackspace.com" target="_blank">adrian.otto@rackspace.com</a>> wrote
on 05/24/2015 10:35:12 PM:<br>
<br>
> From: Adrian Otto <<a href="mailto:adrian.otto@rackspace.com" target="_blank">adrian.otto@rackspace.com</a>></font></tt>
<br><tt><font size="2">> To: "OpenStack Development Mailing List
(not for usage questions)" <br>
> <<a href="mailto:openstack-dev@lists.openstack.org" target="_blank">openstack-dev@lists.openstack.org</a>></font></tt>
<br><tt><font size="2">> Date: 05/24/2015 10:35 PM</font></tt>
<br><tt><font size="2">> Subject: Re: [openstack-dev] [openstackclient]
[magnum] Review of <br><span class="">
> object and actions for magnumclient implementation</span></font></tt>
<br><tt><font size="2">> <br><div><div class="h5">
> Thanks for taking the initiative on this! Remarks in-line...</div></div></font></tt>
<br><div class="HOEnZb"><div class="h5"><tt><font size="2">> <br>
> On May 24, 2015, at 11:20 AM, Ronald Bradford <<a href="mailto:me@ronaldbradford.com" target="_blank">me@ronaldbradford.com</a>>
wrote:<br>
</font></tt>
<br><tt><font size="2">> I have outlined in the blueprint (</font></tt><a href="https://blueprints.launchpad.net/" target="_blank"><tt><font size="2">https://blueprints.launchpad.net/</font></tt></a><tt><font size="2"><br>
> python-openstackclient/+spec/magnum-support) the object and actions
<br>
> mappings that are currently available in the magnumclient.</font></tt>
<br><tt><font size="2">> I have separated the list of actions that are
presently used and <br>
> actions that are not for review and discussion. Specifically These
<br>
> actions DO NOT match.</font></tt>
<br><tt><font size="2">> bay [ update ]</font></tt>
<br><tt><font size="2">> Ok.</font></tt>
<br><tt><font size="2">> container [ execute | start | stop ]</font></tt>
<br><tt><font size="2">> Consider using exec instead of execute. This
would more closely <br>
> match the docker CLI, and improves usability. Consider patching this<br>
> in the API and python-magnumclient to keep it consistent. This will
<br>
> tighten up the user experience for those using both Magnum through
<br>
> OSC and Docker natively on Docker Swarm bays.</font></tt>
<br><tt><font size="2">> <br>
> Start and stop are ok.</font></tt>
<br><tt><font size="2">> pod [ update ]</font></tt>
<br><tt><font size="2">> Ok.</font></tt>
<br><tt><font size="2">> replication controller [ update ]</font></tt>
<br><tt><font size="2">> Use "rc" here so we do not have a two
word noun.</font></tt>
<br><tt><font size="2">> service [ update ]</font></tt>
<br><tt><font size="2">> Ok.</font></tt>
<br><tt><font size="2">> <br>
> Thanks,</font></tt>
<br><tt><font size="2">> <br>
> Adrian</font></tt>
<br><tt><font size="2">> I would appreciate feedback on if these actions
"update", "execute",<br>
> "start" and "stop" are appropriate to use.</font></tt>
<br><tt><font size="2">> Regards</font></tt>
<br><tt><font size="2">> Ronald</font></tt>
<br><tt><font size="2">> __________________________________________________________________________<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>
> </font></tt><a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank"><tt><font size="2">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</font></tt></a><tt><font size="2"><br>
> __________________________________________________________________________<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>
> </font></tt><a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank"><tt><font size="2">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</font></tt></a><tt><font size="2"><br>
</font></tt></div></div><br>__________________________________________________________________________<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><br></div>