Link Search Menu Expand Document

One utility, multiple actions

Similar to other common utilities (git, docker, etc.), the MDI utility has various argument formats to execute many needed tasks.

Call the utility without any subcommands or options to see the basic structures.

$ mdi

>>> Michigan Data Interface (MDI) <<<

mdi is a utility for:
  - submitting, monitoring and managing Stage 1 data analysis pipelines
  - launching the web interface that runs all Stage 2 interactive apps

usage:
  mdi <pipeline> <data.yml> [options]  # run all pipeline actions in data.yml
  mdi <pipeline> <action> <data.yml> [options] # run one action from data.yml
  mdi <pipeline> <action> <options>    # run one action, all options from command line
  mdi <data.yml> <command> [options]   # apply manager command to one data.yml
  mdi <command> [options] <data.yml ...> [options] # apply manager command to data.yml(s)
  mdi <command> [options]              # additional manager command shortcuts
  mdi <pipeline> <action> --help       # pipeline action help
  mdi <pipeline> --help                # summarize pipeline actions
  mdi <command> --help                 # manager command help
  mdi --help                           # summarize manager commands

<output truncated>

Subcommands

The ‘mdi’ command often calls a nested program or subcommand, denoted as <command> above.

Job configuration files

Many commands act on Stage 1 Pipeline job configurations, YAML-format files that specify the work to be done. We refer to this as <data.yml> above - your file would have its own name.

Pipeline targets

Many commands execute a specific Stage 1 Pipeline, denoted as <pipeline> above. Other times, the pipeline is specified in the job configuration file.

Option levels

When setting options, order matters! An option applies to the command word it follows. You may ultimately wish to set options on the mdi command itself, on a subcommand, or to override the job configuration file.


Table of contents