Skip to content

Runners


Managing the building of extension modules is done using an instance of BuildRunner.

from extension.runner import BuildRunner

...
runner = BuildRunner('.', user_config['project'])
...

Usage

Generation

Inputs:

build_data = {}
runner.generate_inputs(build_data)

Outputs:

build_data = {}
runner.generate_outputs(build_data)

Artifact inspection

Inputs:

inputs = runner.inputs()

Outputs:

outputs = runner.outputs()

Options

Some options affect the behavior of builds and are stripped out from the final configuration.

Enabling

Users may set enable-by-default to false for any entry which will prevent it from being built. To enable it again users must set the upper-cased environment variable PY_EXTENSION_BUILDER_<builder_name>_ENABLE to true or 1.

To illustrate, users can enable the following:

[[project.extensions.spam]]
enable-by-default = false
...

with the environment variable PY_EXTENSION_BUILDER_SPAM_ENABLE.


Last update: June 12, 2022