EMRY-067: emry slurm-wrap sidecar helper #112
No reviewers
Labels
No labels
blocked
bug
compat
docs
documentation
duplicate
emry-cli
emry-core
emry-engine
emry-ingest
emry-py
emry-store
emry-tui
emry-web
enhancement
good first issue
gpu-compute
help wanted
hpc
infra
integrations
invalid
needs-design
P0-blocker
P1-core
P2-enhanced
P3-future
performance
pull-request
python
pytorch
question
rust
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
femboy/emry!112
Loading…
Reference in a new issue
No description provided.
Delete branch "emry-067-slurm-wrap"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
What
Adds
emry slurm-wrap— a one-command wrapper for the SLURM sidecar pattern:It collapses the start-engine / wait-for-socket / run / drain boilerplate from the SLURM runbook §3 into a single command.
How it works
std::env::current_exe()→engine --project … --socket … [--log-dir …]), so it works withoutemryonPATH.--) withEMRY_MODE=sidecarandEMRY_SOCKETexported and stdio inherited.RUN_FINISHED, terminate it if still blocked onaccept(), remove the socket.The socket path defaults to
$TMPDIR/emry-$SLURM_JOB_ID.sock(falling back to the wrapper's pid off-cluster);--socketoverrides.Tests
slurm_socket_path_prefers_explicit_then_job_id_then_pid— the pure path-resolution helper.slurm_wrap_captures_command_after_dashdash/slurm_wrap_requires_a_command— arg parsing.The orchestration body spawns processes and calls
std::process::exit, so it's not unit-tested — consistent withcmd_engine/cmd_tui/cmd_web.Docs: new "Shortcut:
emry slurm-wrap" section in the SLURM runbook.Closes #111