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