Skip to content

Groundhog CLI Reference

Usage:

$ hog [OPTIONS] COMMAND [ARGS]...

Options:

  • --version
  • --install-completion: Install completion for the current shell.
  • --show-completion: Show completion for the current shell, to copy it or customize the installation.
  • --help: Show this message and exit.

Commands:

  • run: Run a Python script on a Globus Compute...
  • init: Create a new groundhog script with PEP 723...
  • add: Add dependencies or update Python version...
  • remove: Remove dependencies from a script's PEP...

hog run

Run a Python script on a Globus Compute endpoint.

Use -- to pass arguments to parameterized harnesses: hog run script.py harness -- arg1 --option=value

Usage:

$ hog run [OPTIONS] SCRIPT [HARNESS]

Arguments:

  • SCRIPT: Path to script with PEP 723 dependencies to deploy to the endpoint [required]
  • [HARNESS]: Name of harness function to invoke from script [default: main]

Options:

  • --no-fun-allowed: Suppress emoji output
  • --log-level TEXT: Set logging level (DEBUG, INFO, WARNING, ERROR)
  • --help: Show this message and exit.

hog init

Create a new groundhog script with PEP 723 metadata and example code.

Usage:

$ hog init [OPTIONS] FILENAME

Arguments:

  • FILENAME: File to create [required]

Options:

  • -p, --python TEXT: Python version specifier (e.g., --python '>=3.11' or -p 3.11)
  • -e, --endpoint TEXT: Template config for endpoint with known fields, e.g. --endpoint my-endpoint-uuid. Can also be one of the following pre-configured names: anvil, anvil.gpu, tutorial (e.g. --endpoint anvil.gpu). Can specify multiple.
  • --log-level TEXT: Set logging level (DEBUG, INFO, WARNING, ERROR)
  • --help: Show this message and exit.

hog add

Add dependencies or update Python version in a script's PEP 723 metadata.

Usage:

$ hog add [OPTIONS] SCRIPT [PACKAGES]...

Arguments:

  • SCRIPT: Path to the script to modify [required]
  • [PACKAGES]...: Packages to add

Options:

  • -r, --requirements, --requirement PATH: Add dependencies from file
  • -p, --python TEXT: Python version specifier
  • -e, --endpoint TEXT: Add endpoint configuration (e.g., anvil, anvil.gpu, name:uuid). Known endpoints: anvil, anvil.gpu, tutorial. Can specify multiple.
  • --log-level TEXT: Set logging level (DEBUG, INFO, WARNING, ERROR)
  • --help: Show this message and exit.

hog remove

Remove dependencies from a script's PEP 723 metadata.

Usage:

$ hog remove [OPTIONS] SCRIPT [PACKAGES]...

Arguments:

  • SCRIPT: Path to the script to modify [required]
  • [PACKAGES]...: Packages to remove

Options:

  • -e, --endpoint TEXT: Remove endpoint or variant configuration (e.g., anvil, anvil.gpu, my_endpoint). Known endpoints: anvil, anvil.gpu, tutorial. Can specify multiple. Note: Removing a base endpoint (e.g., anvil) removes all its variants. Removing a specific variant (e.g., anvil.gpu) leaves the base and other variants intact.
  • --log-level TEXT: Set logging level (DEBUG, INFO, WARNING, ERROR)
  • --help: Show this message and exit.