On 13/10/15 18:27 -0400, Monty Taylor wrote:
On 10/13/2015 05:15 PM, Dean Troyer wrote:
On Tue, Oct 13, 2015 at 3:58 PM, Shifali Agrawal
<shaifali.agrawa...@gmail.com <mailto:shaifali.agrawa...@gmail.com>> wrote:

   All above make sense, just one thing, how about using word "zaqar"
     instead of messaging? That is what all other projects are doing,
   for example:


These are the old project-specific CLIs, note that the 'keystone'
command only supports v2 auth today and will be removed entirely in the
keystoneclient 2.0 release.

   $ keystone user-create
   $ heat event-list

   This will create a separate namespace for the project and also will
   solve the issue of `openstack messaging message post`.


One of the things I have tried very hard to do is make it so users do
NOT need to know which API handles a given command.  For higher-layer
projects that is less of a concern I suppose, and that was done long
before anyone thought that 20+ APIs would be handled in a single command
set.

I agree very strongly with this goal. We've done the same thing with the new ansible modules. (os_server vs. nova_compute) It becomes especially important when there are things that are the same but handled by different services. Should the user know/care that in cloud A they get a floating IP from nova but in cloud B they get it from neutron? Nope. That's a mess in our yard - the user shouldn't need to know.

Namespacing has come up and is something we need to discuss further,
either within the 'openstack' command itself or by using additional
top-level command names.  This is one of the topics for discussion in
Tokyo, but has already started on the ML for those that will not be present.

No matter how we end up handling the namespacing issue, I will still
strongly insist that project code names not be used.  I know some
plugins already do this today and we can't stop anyone else from doing
it, but it leads to the same sort of inconsistency for users that the
original project CLIs had. It reduces the value of a single (or small
set of) CLI for the user to deal with.

FWIW - in the ansible modules we adopted a general naming policy of non-service names for things that end-users want to interact with (server, floating-ip) because they are not deployers and they should care.

For admin things "create keystone domain" "create nova flavor" we have the service name in - partially because of the namespacing problem, but also because an _admin_ is administering a service called "nova" - they are not consuming a service that might be provided by nova ... they can be expected to know.

So we have: os_nova_flavor and will soon have os_keystone_domain but os_image and os_subnet.

This is great feedback and I think it actually hits the problem we're
having. The problem is not really related to the user facing API but
the admins one.

I fully agree with the suggestion of not using project names, which is
why I originally recomended to use the catalog service type. That
said, I think this can be worked out better and we chould follow
sometihng similar to what Monty mentioned.

I guess my remaining concern here is that this standard assumes that
there's just 1 messaging service that could be used and whenever
someone calls `openstack message post...` is talking to Zaqar.

Cheers,
Flavio

--
@flaper87
Flavio Percoco

Attachment: signature.asc
Description: PGP signature

__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Reply via email to