Everyday Heft commands
The Hello World tutorial introduced the heft build and heft test command-line actions. In this section, we'll call out a few everyday commands that are particularly useful to know about. Refer to the Heft command line reference for a full listing of actions and parameters.
Investigating problems
If you're diagnosing problems with the Heft build, there are a couple useful parameters to be aware of:
--verbose: For example, instead ofheft build, you can runheft build --verboseto see more details about how the tasks are invoked.--debug: For even more detail, you can runheft --debug buildto see call stacks and additional trace information. Note that--debugis a global parameter, so it must precede thebuildaction name.
Running arbitrary sets of phases
Each phase that you define in heft.config will produce a pair of command-line actions
which invoke that phase and its dependencies (as declared using phaseDependencies).
The heft run command allows you to choose arbitrary phases to run:
usage: heft run [-h] [-t PHASE] [-T PHASE] [-o PHASE] ...
Run a provided selection of Heft phases.
Positional arguments:
"..." Scoped parameters. Must be prefixed with "--", ex.
"-- --scopedParameter foo --scopedFlag". For more
information on available scoped parameters, use "--
--help".
Optional arguments:
-h, --help Show this help message and exit.
Optional scoping arguments:
-t PHASE, --to PHASE The phase to run to, including all transitive
dependencies.
-T PHASE, --to-except PHASE
The phase to run to (but not include), including all
transitive dependencies.
-o PHASE, --only PHASE
The phase to run.
Suppose that your test phase depends on build. Running heft test would then normally
perform both phases. To invoke *only the test phase, you can use heft run --only test.
Note that tasks cannot be run individually. The phase is the smallest granularity for selecting Heft operations.