Uploaded image for project: 'Aurora'
  1. Aurora
  2. AURORA-994

Simplify client help output

    XMLWordPrintableJSON

Details

    • Story
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 0.7.0
    • Client, Usability
    • None

    Description

      The default help in the client is overwhelming, as it includes an exhaustive list of commands, subcommands, all options, and no prose.

      Here's a snippet:

      $ aurora
      Aurora Client version none@Thursday Jan 08, 2015 00:18:27
      Usage:
      ==Commands for tasks
        task run   [--verbose] [--threads=threads] [--ssh-user=ssh_username] [--executor-sandbox] CLUSTER/ROLE/ENV/NAME[/INSTANCES] unix_command_line
        task ssh   [--verbose] [--ssh-user=ssh_username] [--executor-sandbox] [--tunnels=PORT:NAME] [--command=unix_command_line] task_instance
      

      Meanwhile, the help text already wired into argparse is much more consumable, allowing you to drill down into subcommands:

      $ aurora -h
      usage: aurora [-h] {task,quota,cron,job,config,sla,beta-update} ...
      
      positional arguments:
        {task,quota,cron,job,config,sla,beta-update}
          task                Work with a task running in an Apache Aurora cluster
          quota               Work with quota settings for an Apache Aurora cluster
          cron                Work with entries in the aurora cron scheduler
          job                 Work with an aurora job
          config              Work with an aurora configuration file
          sla                 Work with SLA data in Aurora cluster.
          beta-update         Interact with the aurora update service.
      
      optional arguments:
        -h, --help            show this help message and exit
      
      $ aurora task -h
      usage: aurora task [-h] {run,ssh} ...
      
      positional arguments:
        {run,ssh}
          run       Usage: aurora task run cluster/role/env/job cmd Runs a shell
                    command on machines currently hosting instances of a single job.
                    This feature supports the same command line wildcards that are
                    used to populate a job's commands. This means anything in the
                    {{mesos.*}} and {{thermos.*}} namespaces.
          ssh       usage: aurora task ssh cluster/role/env/job/instance [args...]
                    Initiate an SSH session on the machine that a task instance is
                    running on.
      
      optional arguments:
        -h, --help  show this help message and exit
      

      I suggest we drop the help subcommand and exhaustive help, and only use the output from argparse.

      Attachments

        Issue Links

          Activity

            People

              wfarner Bill Farner
              wfarner Bill Farner
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: