Tomas,

Would it be easier to print the parent with list/info commands and allow
updating that attribute (i.e. --parent/--parent-id)? We already have a
handler in the ID resolver when multiple records are returned when only one
is expected, though the error message does not tell the user how to further
filter the results.

- Andrew

On Mon, Apr 10, 2017 at 11:09 AM, Tomas Strachota <tstra...@redhat.com>
wrote:

> I recently found out hammer uses only short names for identifying
> organizations. Names aren't globally unique, which makes it impossible
> to modify or delete an org when there are two of the same name but
> nested under a different parent org. See [1] for details.
>
> I opened a preliminary PR [2] that adds option --organization-title to
> all commands that consume taxonomies and a column "Title" to output of
> the list command. This is simple solution, consistent with how it
> works in hostgroups, but I don't think it's the best from the
> usability point of view. Both options --name and --title as well as
> table column labels feel redundant (columns contain the same data if
> orgs aren't nested).
>
> An alternative approach is to completely replace names with labels in
> hammer internally. We would have to change id resolver and let the
> list commands print titles (in a column labeled "Name"). That's how
> it's displayed in UI.
>
> Pros:
>   - users wouldn't notice the change, it should be seamless in most cases
>   - no need to add extra options
>   - consistent with the UI, where column labeled "Name" contains
> titles in taxonomy tables
>
> Cons:
>   - name isn't the same as title and it might not feel natural to update
> as:
>     hammer location update --name 'emea/brno' --new-name 'krno' which
> would then be displayed as 'emea/krno'
>
> The con I mentioned could be fixed by checking if a user passed a name
> containing '/' and using only last part of title in such cases. That
> would make even --new-name 'emea/krno' work.
>
> Theoretically it could be used also for changing organizations parent.
> --name 'emea/brno' --new-name 'europe/krno' would change parent to an
> organization with title 'europe' and rename to 'krno'. But that's
> maybe too much.
>
> How do you find the alternative approach? Do you see any other options
> how the commands could work? Any idea is welcome.
> I'd like to change hostgroup commands to use the same style and make
> it consistent across the whole cli when we find a good solution. Are
> there any commands in plugins (looking mainly at hammer-cli-katello)
> that use resources with nested names?
>
> T.
>
> [1] http://projects.theforeman.org/issues/19157/
> [2] https://github.com/theforeman/hammer-cli-foreman/pull/299
>
> --
> You received this message because you are subscribed to the Google Groups
> "foreman-dev" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to foreman-dev+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>



-- 
Andrew Kofink
akof...@redhat.com
IRC: akofink
Associate Software Engineer
Red Hat Satellite

-- 
You received this message because you are subscribed to the Google Groups 
"foreman-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to foreman-dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to