left4me/l4d2host/tests
mwiegand 6b4eef22c2
feat: server Reset action — wipe runtime, keep DB row
Reset stops the systemd service, unmounts the overlay, and rm -rf's both
runtime/<name> and instances/<name>, but keeps the Server row, blueprint,
and (shared) systemd template. Next Start re-initializes from the current
blueprint, so users can clean up logs/caches/accumulated game state without
losing the server.

Implementation factors a shared _purge_instance helper out of
delete_instance; reset_instance reuses it without the existence guard. New
"reset" lifecycle op flows through the same route + worker + facade plumbing
as the other server ops.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-08 18:10:32 +02:00
..
test_cli.py feat(deploy): add production-like test deployment 2026-05-06 19:30:10 +02:00
test_initialize.py feat(host): add step logging to steam_install 2026-05-06 20:41:39 +02:00
test_install.py fix(host): create ~/.steam/sdk32 and sdk64 symlinks during install 2026-05-07 02:11:27 +02:00
test_kernel_overlayfs.py feat(l4d2-host): KernelOverlayFSMounter + left4me-overlay helper 2026-05-08 12:23:58 +02:00
test_lifecycle.py feat: server Reset action — wipe runtime, keep DB row 2026-05-08 18:10:32 +02:00
test_logging.py feat(host): add step logging to steam_install 2026-05-06 20:41:39 +02:00
test_logs.py feat(deploy): add production-like test deployment 2026-05-06 19:30:10 +02:00
test_overlay_helper.py feat(l4d2-host): KernelOverlayFSMounter + left4me-overlay helper 2026-05-08 12:23:58 +02:00
test_paths.py security: harden boundary inputs and production defaults 2026-05-07 00:53:33 +02:00
test_process.py fix(host): enforce flush=True to prevent pipeline block buffering 2026-05-06 20:34:41 +02:00
test_spec.py chore(l4d2): flatten component layout 2026-05-05 23:47:06 +02:00
test_status.py feat(deploy): add production-like test deployment 2026-05-06 19:30:10 +02:00