run (CLI command group)
What it is
- A
clickcommand group that provides arun scriptsubcommand to execute a Python script after loading the ABI engine. - Forwards extra CLI arguments to the target script via
sys.argv.
Public API
run()- Click command group named
run.
- Click command group named
run_script(ctx: click.Context, path: str)- Click subcommand:
run script <path> [args...] - Loads
naas_abi_core.engine.Engine.Engine, then executes the script atpathas__main__. - Forwards any extra arguments to the executed script.
- Click subcommand:
Configuration/Dependencies
- Dependencies:
click(CLI framework)naas_abi_core.engine.Engine.Engine(engine initialization viaEngine().load())- Standard library:
runpy,sys
- Click settings for
run script:ignore_unknown_options=Trueallow_extra_args=True- Purpose: accept and forward arbitrary arguments to the target script.
Usage
Minimal example running a script and forwarding arguments:
abi run script ./myscript.py --foo bar
Inside the target script, arguments are available as usual:
# myscript.py
import sys
print(sys.argv)
Caveats
- The command mutates
sys.argvbefore executing the script (sys.argv = [path, *ctx.args]). - The script is executed via
runpy.run_path(..., run_name="__main__"), so it runs as if invoked as the main module.