Skip to content

Latest commit

 

History

History
86 lines (63 loc) · 2.83 KB

README-experimental-workflow-ui.md

File metadata and controls

86 lines (63 loc) · 2.83 KB

Using the experimental Workflow UI

The Workflow UI adds a Workflows node to the ResInsight project tree. It requires a Python environment containing rips, taskmaestro, and the workflow package.

These instructions assume ResInsight is already installed and working. Python 3.12 or newer and Git are required.

1. Create the Python environment

Choose a permanent location for the environment and workflow files:

mkdir -p ~/resinsight-workflows
python3 -m venv ~/resinsight-workflows/.venv
source ~/resinsight-workflows/.venv/bin/activate
python -m pip install --upgrade pip

Install rips from the Python directory supplied with ResInsight:

python -m pip install -e /path/to/ResInsight/Python

For a source checkout, use /path/to/ResInsight/GrpcInterface/Python instead.

Clone and install the example workflows. This also installs taskmaestro:

git clone https://github.com/OPM/taskmaestro-resinsight.git \
    ~/resinsight-workflows/taskmaestro-resinsight
python -m pip install -e ~/resinsight-workflows/taskmaestro-resinsight

ResInsight reads workflows with python -m taskmaestro workflow describe, which needs a taskmaestro version that reports config_values (OPM/taskmaestro#13). Until that is released, install it from Git:

python -m pip install "git+https://github.com/OPM/taskmaestro.git@main"

2. Register the workflows

ResInsight discovers workflows in ~/.taskmaestro/workflows:

mkdir -p ~/.taskmaestro/workflows
for workflow in ~/resinsight-workflows/taskmaestro-resinsight/workflows/*/; do
    ln -sfn "$(realpath "$workflow")" \
        ~/.taskmaestro/workflows/"$(basename "$workflow")"
done

3. Configure ResInsight

Open Edit → Preferences and set:

  1. Scripting → Python Executable Location to the absolute path printed by:

    realpath ~/resinsight-workflows/.venv/bin/python
  2. Scripting → Enable Python Script Server to on.

  3. System → Experimental Features → Workflows to on.

Restart ResInsight. The Workflows node should now appear in the project tree. Select a workflow, provide its inputs, and click Run.

Troubleshooting

  • No Workflows node: Enable the experimental feature and restart ResInsight.
  • The Workflows node is empty: Check that each directory under ~/.taskmaestro/workflows contains workflow.yaml, then restart ResInsight.
  • A Python module cannot be found: Confirm that Python Executable Location points to the virtual environment created above.
  • A workflow fails to load with invalid choice: 'workflow', or its inputs are not pre-filled from input.yaml: The installed taskmaestro is too old; reinstall it as described above.
  • The workflow cannot connect: Enable Python Script Server and restart ResInsight.