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

NAME

App::dex - Directory Execute

DESCRIPTION

dex provides a command line utility for managing directory-specific commands.

USAGE

    dex                    - Display the menu
    dex command            - Run a command
    dex command subcommand - Run a sub command

Create a file called dex.yaml or .dex.yaml and define commands to be run.

DEX FILE SPECIFICATION

This is an example dex file.

    - name: build
      desc: "Run through the build process, including testing."
      shell:
        - ./fatpack.sh
        - dzil test
        - dzil build
    - name: test
      desc: "Just test the changes"
      shell:
        - dzil test
    - name: release
      desc: "Publish App::Dex to CPAN"
      shell:
        - dzil release
    - name: clean
      desc: "Remove artifacts"
      shell:
        - dzil clean
    - name: authordeps
      desc: "Install distzilla and dependencies"
      shell:
        - cpanm Dist::Zilla
        - dzil authordeps --missing | cpanm
        - dzil listdeps --develop --missing | cpanm

When running the command dex, a menu will display:

    $ dex
    build                   : Run through the build process, including testing.
    test                    : Just test the changes
    release                 : Publish App::Dex to CPAN
    clean                   : Remove artifacts
    authordeps              : Install distzilla and dependencies

To execute the build command run dex build.

SUBCOMMANDS

Commands can be grouped to logically organize them, for example:

    - name: foo
      desc: "Foo command"
      children:
        - name: bar
          desc: "Bar subcommand"
          shell:
            - echo "Ran the command!"

The menu for this would show the relationship:

    $ dex
    foo                     : Foo command
        bar                     : Bar subcommand

To execute the command one would run dex foo bar.

FALLBACK COMMAND

When dex doesn't understand the command it will give an error and display the menu. It can be configured to allow another program to try to execute the command.

Set the environment variable DEX_FALLBACK_CMD to the command you would like to run instead.

AUTHOR

Kaitlyn Parkhurst (SymKat) <symkat@symkat.com> ( Blog: http://symkat.com/ )

CONTRIBUTORS

SPONSORS

COPYRIGHT

Copyright (c) 2019 the App::dex "AUTHOR", "CONTRIBUTORS", and "SPONSORS" as listed above.

LICENSE

This library is free software and may be distributed under the same terms as perl itself.

AVAILABILITY

The most current version of App::dec can be found at https://github.com/symkat/App-dex