Use Juturna CLI tools¶
Juturna offers a number of CLI tools that provide basic capabilities for creating and managing pipelines and pipeline components. Some of these tools come built-in with the basic Juturna installation, whilst others require Juturna to be installed with specific dependency groups.
The full list of commands (available with the groups httpwrapper and
pipebuilder) can be printed with:
(.venv) user:~/$ python -m juturna
usage: juturna [-h] {launch,validate,stub} ...
Collection of simple CLI utilities to manage pipeline configuration files and pipeline lifecycles.
options:
-h, --help show this help message and exit
subcommands:
List of commands included in the juturna CLI
{launch,validate,stub}
launch instantiate and run the pipeline in the configuration file
validate scan a configuration file and check its validity
serve launch the Juturna pipeline manager service
create interactively create new pipeline configuration files
stub create a custom node skeleton
Pipe launcher¶
built-in
Run a pipeline from the command line. The pipeline can be started automatically
after warming up (--auto), or the user can be prompted to start and stop.
(.venv) user:~/$ python -m juturna launch --help
usage: juturna launch [-h] [--log-level {NOTSET,DEBUG,INFO,WARNING,ERROR}] --config FILE [--auto] [--timeout TIMEOUT] [--dry-gin]
options:
-h, --help show this help message and exit
--log-level {NOTSET,DEBUG,INFO,WARNING,ERROR}, -l {NOTSET,DEBUG,INFO,WARNING,ERROR}
set log level during pipeline execution
--config FILE, -c FILE
pipeline json configuration file
--auto, -a start/stop pipeline automatically without prompting the user
--timeout TIMEOUT, -t TIMEOUT
pipeline execution time (in seconds)
--dry-gin, -d Graph Instance oNly, do not execute the pipeline
Pipe validator¶
built-in
Check a pipeline configuration file for validity.
(.venv) user:~/$ python -m juturna launch --help
usage: juturna validate [-h] [--log-level {NOTSET,DEBUG,INFO,WARNING,ERROR}] --config FILE [--deep] [--plugin-folder DIR] [--report FILE]
options:
-h, --help show this help message and exit
--log-level {NOTSET,DEBUG,INFO,WARNING,ERROR}, -l {NOTSET,DEBUG,INFO,WARNING,ERROR}
set log level during pipeline execution
--config FILE, -c FILE
pipeline json configuration file
--deep, -d check node config items against their default config files
--plugin-folder DIR, -p DIR
directory where node plugin nodes are stored
--report FILE, -r FILE
save json report of the validation test
Pipe creator¶
pipebuilder
Interactively create a new pipeline configuration file starting from a set of plugin folders.
(.venv) user:~/$ python -m juturna create --help
usage: juturna create [-h] [--plugins PLUGINS]
options:
-h, --help show this help message and exit
--plugins PLUGINS, -p PLUGINS
juturna service pipeline folder
Pipe service manager¶
httpwrapper
Launch a pipeline manager that can be queried through HTTP APIs. The manager allows pipeline manipulation.
(.venv) user:~/$ python -m juturna serve --help
usage: juturna serve [-h] --host HOST --port PORT --folder FOLDER [--log-level {NOTSET,DEBUG,INFO,WARNING,ERROR}] [--log-format {simple,colored,full,compact,development,minimal,json}] [--log-file LOG_FILE]
options:
-h, --help show this help message and exit
--host HOST, -H HOST juturna service host address
--port PORT, -p PORT juturna service port
--folder FOLDER, -f FOLDER
juturna service pipeline folder
--log-level {NOTSET,DEBUG,INFO,WARNING,ERROR}, -l {NOTSET,DEBUG,INFO,WARNING,ERROR}
set log level during pipeline execution
--log-format {simple,colored,full,compact,development,minimal,json}, -F {simple,colored,full,compact,development,minimal,json}
log format
--log-file LOG_FILE, -L LOG_FILE
log file destination
Node stub creator¶
built-in
Create a custom node stub.
(.venv) user:~/$ python -m juturna stub --help
usage: juturna stub [-h] --node-name NODE_NAME [--node-type NODE_TYPE] [--node-class NODE_CLASS] [--author AUTHOR] [--email EMAIL] [--destination-folder DESTINATION_FOLDER]
options:
-h, --help show this help message and exit
--node-name NODE_NAME, -n NODE_NAME
node name, used for folder and module
--node-type NODE_TYPE, -t NODE_TYPE
node type
--node-class NODE_CLASS, -N NODE_CLASS
node class name, used for class name
--author AUTHOR, -a AUTHOR
node author name
--email EMAIL, -e EMAIL
node author email
--destination-folder DESTINATION_FOLDER, -d DESTINATION_FOLDER
destination folder for the plugin (defaulted to ./plugins)