The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

dex - Directory Exec

DESCRIPTION

dex is a command line utility to simply repeative tasks by defining them in the specific directory you should be in when running them.

Running dex from a directory with a .dex.yaml or dex.yaml file will present you with the list of named commands.

 dev                     : Control a local development server.
     start                   : Start a local development server on docker.
     stop                    : Stop a local development server on docker.
     status                  : Show the status of the local development server.
     reset                   : Delete the database volume.
 test                    : Run the tests.

Top level commands have no indentation. Each level of indentation is a child command. For instance you would run dex dev start to trigger Start a local development server on docker, but only dex test to trigger Run the tests.

DEX FILE SPEC

Dex uses YAML and expects the following format:

 ---
 - name: CommandName
   desc: CommandDescription
   shell:
     - Shell String    
     - Shell String  
   children:  
     - name: SubCommandName
       desc: SubCommandDescription
       shell:
         - Shell String

The structure is infinitely nestable by adding a children attribute, the following are supported attributes:

  • name: The name that can be used on the command line to invoke the block

  • desc: The description given in the menu

  • shell: An array of shell commands to run

  • children: An array that takes all of the same arguments, use for subcommands