Type object
Schema URL https://catalog.lintel.tools/schemas/schemastore/pyproject/_shared/latest--partial-poe.json
Parent schema pyproject
Type: object

Poe the Poet is a task runner and build tool that uses simple configuration to define project tasks. It can work as a standalone tool or as a plugin for Poetry.

Properties

default_array_item_task_type string

When a task is declared as a string inside an array (e.g. inline in a sequence task), then it is interpreted as the default array item task type, which will be 'ref' unless otherwise specified.

Default: "ref"
Values: "cmd" "expr" "ref" "script" "shell"
default_array_task_type string

When a task is declared as an array (instead of a table), then it is interpreted as the default array task type, which will be 'sequence' unless otherwise specified.

Default: "sequence"
Values: "sequence" "parallel"
default_task_type string

Sets the default task type for tasks defined as strings. By default, tasks are interpreted as shell commands ('cmd'). This can be overridden to 'script' or other supported types.

Default: "cmd"
Values: "cmd" "expr" "ref" "script" "shell"
env object
envfile envfile | object

Provide one or more env files to be loaded before running this task. If an array is provided, files will be loaded in the given order.

executor object | type

Configure the executor type for running tasks. Can be 'auto', 'poetry', 'virtualenv', or 'simple', with 'auto' being the default.

include string | string | object[] | object

Specify one or more other toml or json files to load tasks from.

include_script string | string | object[] | object

Load dynamically generated tasks from one or more python functions.

poetry_command string

Change the name of the task poe registers with poetry when used as a plugin.

poetry_hooks Record<string, string>

Register tasks to run automatically before or after other poetry CLI commands.

shell_interpreter string | string[]

Change the default shell interpreter for executing shell tasks. Normally, tasks are executed using a posix shell, but this can be overridden here.

Examples: "bash", ["bash","-c"]
tasks object
verbosity integer

Sets the default verbosity level for all commands. '-1' is quieter, '0' is the default level, and '1' is more verbose. The command line arguments are incremental, with '--quiet' or '-q' decreasing verbosity, and '--verbose' or '-v' increasing it.

Default: 0
min=-1max=1

Definitions

standard_options object
args string | args[] | object

Define CLI options, positional arguments, or flags that this task should accept.

cwd string

Specify the current working directory that this task should run with. This can be a relative path from the project root or an absolute path, and environment variables can be used in the format ${VAR_NAME}.

minLength=1pattern=^(?!\s*$).+
deps string[]

A list of task invocations that will be executed before this one. Each item in the list is a reference to another task defined within the tasks object.

env object
envfile envfile | object

Provide one or more env files to be loaded before running this task. If an array is provided, files will be loaded in the given order.

help string

Help text to be displayed next to the task name in the documentation when poe is run without specifying a task.

uses Record<string, string>

Allows this task to use the output of other tasks which are executed first. The values are references to the names of the tasks, and the keys are environment variables by which the results of those tasks will be accessible in this task.

executor object | type

Configure the executor type for running tasks. Can be 'auto', 'poetry', 'virtualenv', or 'simple', with 'auto' being the default.

verbosity integer

Specify the verbosity level for this task, from -2 (least verbose) to 2 (most verbose), overriding the project level verbosity setting, which defaults to 0.

Default: 0
min=-2max=2
capture_stdout_option object
capture_stdout string

Redirects the task output to a file with the given path. Supports environment variable interpolation.

Examples: "output.log", "${POE_PWD}/output.txt"
pattern=^(?:\$\{[^\}]+\}/)?.+$
use_exec_option object
use_exec boolean

Specify that this task should be executed in the same process, instead of as a subprocess. Note: This feature has limitations, such as not being compatible with tasks that are referenced by other tasks and not working on Windows.

Examples: true, false
ignore_fail_exec_option integer[] | boolean

Return exit code 0 even if the task fails, or specify a list of task exit codes to ignore.

Examples:
  • true
ignore_fail_tasks_option boolean | string

If set, the sequence will continue running even if one of the tasks fails.

Examples:
  • true
  • "return_zero"
  • "return_non_zero"
env_option object
envfile_option envfile | object

Provide one or more env files to be loaded before running this task. If an array is provided, files will be loaded in the given order.

executor_option object | type

Configure the executor type for running tasks. Can be 'auto', 'poetry', 'virtualenv', or 'simple', with 'auto' being the default.

cmd_task
expr_task
ref_task
script_task
sequence_task
parallel_task
shell_task
switch_task
one_of_tasks string | cmd_task | script_task | shell_task | sequence_task | parallel_task | expr_task | switch_task | ref_task
tasks_array one_of_tasks[]