Skip to content

v0.13.0

Choose a tag to compare

@gfargo gfargo released this 21 Apr 02:45
· 83 commits to main since this release

Highlights

Faster multi-command SSH sessions. strut deploy, release, health, and friends now reuse a single authenticated SSH session per command instead of handshaking on every call.

What changed

  • build_ssh_opts emits ControlMaster=auto + ControlPersist=60s by default (#37)
  • Per-pid ControlPath so parallel strut invocations don't share sockets
  • EXIT trap cleanly tears down master connections on normal exit, Ctrl+C, or crash
  • Escape hatches: STRUT_SSH_NO_MUX=1 (global) or --no-mux (per-call)

Expected speedup

~3–5s per deploy on a VPS with 50ms RTT — one handshake instead of 10–20.

Compatibility

No breaking changes. Works with both password and key auth. If ControlMaster causes trouble in your environment, set STRUT_SSH_NO_MUX=1 to disable.