ml run wrapper for reprodusible experiments and documentation
Project description
one-run
CLI wrapper for job management on local machines and SLURM
install
pip install -e .
published package install:
pip install one-run1
commands
one-run --version: print installed package versionone-run --automation ...: prefer json outputs by default for automationone-run run <manifest.yaml>: execute locally (blocking)one-run run --watch <manifest.yaml>: execute locally in backgroundone-run run <manifest.yaml> --json: machine-readable run resultone-run submit <manifest.yaml>: submit to SLURMone-run submit <manifest.yaml> --json: machine-readable submit resultone-run status <run_id>: inspect run statusone-run status -l <run_id>: extended run status (metadata/runtime/paths)one-run status <run_id> --json: machine-readable status payload for scripts/CIone-run status <run_id> --wait --timeout 30m: wait for terminal state (non-zero on timeout)one-run cancel <run_id>: cancel a running local watch or SLURM run.one-run cancel --force <run_id>: force-kill local run (SIGKILL) / SLURM KILL signal.one-run cancel <run_id> --json: machine-readable cancel result.one-run ls: list runs.one-run ls --long: detailed run list.one-run ls --state success: filter by state.one-run ls --tag gpu: filter runs by tag (repeatable).one-run ls --group-by-tag: group listed runs by tag.one-run ls --json: machine-readable run list payload.one-run ps: show active runs (pending/running) with process/job identity.one-run ps --tag train: filter active runs by tag.one-run ps --json: machine-readable active runs payload.one-run ps -w --interval 2: live refreshing process table.one-run validate <manifest.yaml>: validate manifest + placeholders.one-run validate <manifest.yaml> --json: machine-readable validation result.one-run tail <run_id> [-n 30] [--stderr] [-f] [--since 10m]: tail run logs.one-run gc [--state failed] [--older-than 7d] [--dry-run]: cleanup run directories.one-run gc ... --json: machine-readable cleanup result.
automation defaults:
- set
ONE_RUN_AUTOMATION=1to make json the default output mode for commands that support--json - or pass
--automationbefore the command, e.g.one-run --automation status <run_id> - explicit
--jsonstill works the same
docker local execution:
- fixture example:
tests/fixtures/manifest.docker.yaml - set
environment.kind: docker - set
environment.image - optional
environment.workdirandenvironment.mounts - optional
environment.envandenvironment.env_file - optional
environment.pull_policy:always | if_missing | never - optional
environment.labelsfor container traceability
slurm retry policy (optional):
backend.slurm.retry_max_attempts: retry count after first failure (e.g.1)backend.slurm.retry_backoff_sec: delay before retry submit (e.g.30)backend.slurm.retry_on_states: subset offailed | timeout | cancelled- retries are triggered during
statusrefresh (one-run status ...)
ls color from manifest:
experiment.color:black | red | green | yellow | blue | magenta | cyan | white- ls colors the
experimentcolumn for runs that defineexperiment.color
run directory
runs/<run_id>/
config.snapshot.yaml
metadata.json
status.json
runtime.json
summary.json
summary_min.json
events.jsonl
local.pid
local.exit_code
logs/stdout.log
logs/stderr.log
artifacts/
metrics/
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
one_run1-0.1.2.tar.gz
(21.0 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
one_run1-0.1.2-py3-none-any.whl
(35.5 kB
view details)
File details
Details for the file one_run1-0.1.2.tar.gz.
File metadata
- Download URL: one_run1-0.1.2.tar.gz
- Upload date:
- Size: 21.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8d16732c560139365d84cf3c4a9e898dadb02f18acfaca9e81afe14ad2075939
|
|
| MD5 |
e38a93e5f5903296de560c55a8113a1d
|
|
| BLAKE2b-256 |
a1a5384193bb4fd5f66f77399c52fc9f8c418be50da2bed28d6d67c77a66c576
|
File details
Details for the file one_run1-0.1.2-py3-none-any.whl.
File metadata
- Download URL: one_run1-0.1.2-py3-none-any.whl
- Upload date:
- Size: 35.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0036e1428363b25d6367f31f18049b902a2c6fdea8686f480166d5f6108d67f4
|
|
| MD5 |
67f857828dac1838bdbb6cd9e7af62e7
|
|
| BLAKE2b-256 |
1b42724b2a8c0cd60573ba9405043a5e729598e3046c46f4a2fada2fd93ba0ff
|