Frank,

Thanks for the feedback.  All in all, I'm leaning toward 2,
but with some comments below ...



Frank Ludolph wrote:
> Ethan Quach wrote:
>> This is the proposed syntax:
>>
>>
>>    installadm list [ [-m] <svcname> | -c | -r ]
>>
>>       Lists information about the install services that have
>>       been setup on this system.  Information for all install
>>       services will given if a specific svcname is not provided.
>>       With the '-m' option, manifest information will also be
>>       given, but can only be used when a specific svcname is
>>       provided.  The '-c' option will list all clients that
>>       have been created on this server.  The '-r' option will
>>       list information for remote install services in addition
>>       to the local ones.
>>
>>
>>       -m svcname      Lists all manifest information, including
>>                       the manifest criteria, for the install
>>                       service specified.
>>
>>       -c              Lists all clients that have been created
>>                       on this server, and the install service
>>                       and imagepath used with each client.
>>
>>       -r              Lists basic information for remote
>>                       services as well as local services.
>>
> CLIP isn't supportive of mutually exclusive options, suggesting the use 
> of multiple subcommands instead. Here are a couple of alternatives.
> 
> Alternative 1: logically identical to the above
> 
>     installadm list-services [-r]           Lists basic info for all
>                                               local services
>                                               -r adds basic info for
>                                               remote services
>     installadm list-manifests <svcname>     Lists info for each
>                                               manifest, grouped by service

Could <svcname> be optional here?

>     installadm list-clients                 Lists clients and their
>                                               install service and imagepath

Since we're not using an option to denote clients anymore, could
this now be:

        installadm list-clients [<svcname>]

to report clients belonging only to the specified service?


> 
> Alternative 2:
> 
>     installadm list [-m] [-c] [-n <svcname>]   See below
>     installadm list-remote [-n <svcname>]      Lists basic info for
>                                                remote service(s)

I'd hate to have a separate subcommand just for this one case.  Could
we create the mutual exclusive -r just for this one case?

       installadm list [[-m][-c] | [-r]] [-n <svcname>]

i.e. if you want remote services, you can't get manifest or client
information..


> 
>     Examples:
>     installadm list                            Lists basic info for
>                                                  local services
>     installadm list -n <svcname>               Lists basic info for
>                                                  named (local) service
>     installadm list -m -n <svcname>            Lists info for each
>                                                  manifest of named service
>     installadm list -m                         Lists info for each
>                                                  manifest, grouped by service
>     installadm list -c                         Lists info for all clients
>     installadm list -c -n <svcname>            Lists info for all
>                                                  clients of named service
>     installadm list -c -m -n <svcname>         Lists info for each
>                                                  manifest of named service
>                                                  followed by client info
>     installadm list -c -m                      Lists manifest and client
>                                                  info grouped by service

The output for this last one will look awkward because we're
giving two sets of data, each with their own data columns, grouped
by one other set of data.  I'm thinking that the output would be
unscalable going across because some columns will apply to Manifests
while some apply to Clients.  e.g. ... Thoughts?


# installadm list -c -m
Service   Manifest             Client    Imagepath
-------   --------             ------    ---------
service1
           manifest1 (default)
           manifest2
           manifest3

                                client1    /export/aiimages/b107
                                client2    /export/aiimages/RC2

service2
           manifest1
           manifest2 (default)

                                client1    /export/aiimages/foo
                                client2    /export/home/user/ai_image
                                client3    /export/aiimages/bar

service3
           manifest1 (default)

                                client1    /export/home/user2/2008.11
                                client2    /export/aiimages/b107




thanks,
-ethan

> 
> While some examples, e.g. installadm list -c -m, might not be commonly 
> used it doesn't hurt to allow them.
> 
> Frank

Reply via email to