Getting Started

This guide walks you through installing Kuristo, writing your first workflow, and running it locally.

Installation

Install from PyPI:

pip install kuristo

Clone the repository and install it from source:

git clone https://github.com/andrsd/kuristo.git
cd kuristo
pip install .

Basic Workflow

Kuristo workflows are written in YAML. Here’s a minimal example:

jobs:
  single-case:
    - name: simple test
      steps:
        - run: ./generate_mesh.sh
        - run: ./simulate --input mesh.exo
        - run: ./check_results output.csv

Save this as kuristo.yml.

Running the Workflow

To run a workflow:

kuristo run /path/to/workflow-file.yaml

Or run all workflows from a location:

kuristo run /root/dir/with/workflows

Kuristo will traverse the directory structure and try to find kuristo.yaml files with workflows. Then, it will execute each job in order, tracking progress and logging output into the .kuristo-out/ directory. If no parameter is used it will search from the current working directory.

The command-line output will look like this:

[ PASS ] #19 simple test ............................................. 1.01s

Success: 1    Failed: 0    Skipped: 0    Total: 1
Took: 1.5s

By default, output is printed to the terminal and stored in per-run and per-job subdirectories under .kuristo-out/.

Status of a run

To display status of a run:

kuristo status

Which will show somthing like this:

[ PASS ] #19 simple test ............................................. 1.01s

Success: 1    Failed: 0    Skipped: 0    Total: 1
Took: 1.5s

List available jobs

Use this to see what jobs would be executed:

kuristo list

This will traverse the directory structure from the current working directory and look for kuristo.yaml files. You can specify different location via

kuristo list /path/to/start/search/from