Orchestration API

Contents

Attention

This project is still in an early phase of development.

The python API is not yet stable, and some aspects of the schema for the blueprint and workplan will likely evolve. Therefore whilst you are welcome to try out using the package, we cannot yet guarantee backwards compatibility. We expect to reach a more stable version in 2026.

Orchestration API#

The Orchestration API is used to manage and execute workplans.

See also

Blueprint API

Core#

cstar.orchestration.orchestration.ProcessHandle(*, ...)

Contract used to identify processes created by any launcher.

cstar.orchestration.orchestration.Status(*values)

The state of a running task.

cstar.orchestration.orchestration.Task(*, ...)

A task represents a live-execution of a step.

Execution#

cstar.orchestration.models.Step(*, name, ...)

An individual unit of execution within a workplan.

cstar.orchestration.models.Workplan(*, name, ...)

A collection of executable steps and the associated configuration to run them.

cstar.orchestration.orchestration.Planner(...)

Identifies depdendencies of a workplan to produce an execution plan.

cstar.orchestration.orchestration.Launcher(...)

Contract required to implement a task launcher.

cstar.orchestration.launch.local.LocalLauncher(...)

A launcher that executes steps in a local process.

cstar.orchestration.launch.slurm.SlurmLauncher(...)

A launcher that executes steps in a SLURM-enabled cluster.

cstar.orchestration.orchestration.Orchestrator(...)

Manage the execution of a Workplan.