Documenting tasks¶
You can add help text to your tasks by adding the help
option to the task definition, like so:
[tool.poe.tasks.test]
help = "Run the test suite"
cmd = "pytest --cov=poethepoet"
[tool.poe.tasks.serve]
help = "Run the app in debug mode"
script = "my_app.service:run(debug=True)"
[tool.poe.tasks.tunnel]
help = "Create an SSH tunnel to the production server"
shell = "ssh -N -L 0.0.0.0:8080:$prod_host:8080 $prod_host &"
args = [
{name = "prod_host", help = "Hostname of the production server", default = "myapp.com"}
]
This help text will be displayed alongside the task name in the list of configured tasks when poe
is run without specifying a task.
$ poe --help
Poe the Poet - A task runner that works well with poetry.
version 0.25.1
Usage:
poe [global options] task [task arguments]
Global options:
-h [TASK], --help [TASK]
Show this help page and exit, optionally supply a task.
--version Print the version and exit
-v, --verbose Increase command output (repeatable)
-q, --quiet Decrease command output (repeatable)
-d, --dry-run Print the task contents but don't actually run it
-C PATH, --directory PATH
Specify where to find the pyproject.toml
-e EXECUTOR, --executor EXECUTOR
Override the default task executor
--ansi Force enable ANSI output
--no-ansi Force disable ANSI output
Configured tasks:
test Run the test suite
serve Run the app in debug mode
tunnel Create an SSH tunnel to the production server
--prod_host Hostname of the production server [default: myapp.com]
Display help for a single task¶
Passing the --help
option normally has the same effect as running poe with no arguments. However you can also supply the name of a task to display documentation for just that task.
$ poe --help tunnel
Description:
Create an SSH tunnel to the production server
Usage:
poe [global options] tunnel [named arguments] -- [free arguments]
Named arguments:
--prod_host Hostname of the production server [default: myapp.com]