[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [atomic-devel] Generic executable labels for atomic cli





On 10/11/2015 07:29 AM, Daniel J Walsh wrote:

On 10/10/2015 09:03 AM, Dusty Mabe wrote:

On 10/10/2015 06:57 AM, Daniel J Walsh wrote:
On 10/07/2015 12:24 PM, Dusty Mabe wrote:
Hi,

In the container-tools team we have been having discussions about the
lifecycle of an atomicapp. We have essentially decided that there are
more verbs that we want to use than those that are defined in the
Generic
Labels [1]. Vasek has proposed an idea [2] that I think would be useful
for atomic cli to support.

The idea is more or less to support an application developer being
able to define his/her own verbs to allow the user to call from atomic
CLI. Since it is up to the application to define them they don't have
to make sense in any other application. The application could still
implement INSTALL/RUN/UNINSTALL etc, but they could define more that
would enable them to provide a better user experience.

In Vasek's suggestion he proposed that the
io.projectatomic.atomic.cmd.unpack=.*
label would correspond to `atomic unpack`. I would prefer that the
label scheme (whatever it is) actually map to a top level primitive in
atomic cli so that the user knows what he/she is doing. For example,
rather than `atomic unpack <appname>` it would map to `atomic
exelabel unpack <appname>`
or `atomic runlabel unpack <appname>`.

Regardless of the specific implementation, which can be decided later,
I think a mechanism for arbitrary run labels would be useful. I can
propose this to [1] and eventually send a PR to atomic cli if this is
useful.

- Dusty

[1] -
https://github.com/projectatomic/ContainerApplicationGenericLabels
[2] -
https://gist.github.com/goern/d8910ba7a10ff26bc8f2#gistcomment-1565065

Should their be a way to list these secondary labels?
I think all labels are listed by the `atomic info <image>` command,
right?


Yes,  But these labels have special meaning.  I think the atomic help is
probably the best way to go.
Should we define a hierarchy of labels? How does the user discover this
label?
I hadn't given much thought to a hierarchy. Can you think of a case it
would be useful?


I am not sure of what I meant by hierarchy. :^(
Should we have a atomic help which could read a label to describe this
advanced behaviour?
We could have `atomic help <imagename>` which just executes a label
that produces some usage/help text for a particular image. This help
text, which is defined by the producer of the image, could explain
what labels exist and how to use them.

Thoughts?

Dusty

It would be nice if atomic could figure out a default help message if
the developer did not provide text.

Something like

atomic help foobar

Execute

atomic install foobar

To install the image.  atomic will execute:

docker run ....

command.


I'll see what I can come up with. Thanks!

- Dusty


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]