From aebb5eab8538b7676abe28d2c6c40b52c49389b0 Mon Sep 17 00:00:00 2001 From: Pallav Vasa Date: Tue, 20 May 2025 14:45:33 +0000 Subject: [PATCH] feat: update logic to connect to start and attach tmux --- ssh_router.sh | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/ssh_router.sh b/ssh_router.sh index 9f1bbff..292b4ee 100644 --- a/ssh_router.sh +++ b/ssh_router.sh @@ -178,16 +178,21 @@ case "$MODE" in rw) start_container_if_needed - # Ensure tmux session exists - if ! podman exec -it --user "$DEV_USER" "$WORKSPACE" tmux has-session -t "$TMUX_SESSION" 2>/dev/null; then + log INFO "$PERSON attaching to workspace '$WORKSPACE'" + + # Try to attach to session; if it fails, create and attach + if ! podman exec -it -e TERM="$TERM" --user "$DEV_USER" "$WORKSPACE" \ + tmux attach -t "$TMUX_SESSION"; then + log WARN "tmux session not found, creating new session" podman exec -it --user "$DEV_USER" "$WORKSPACE" \ - tmux new-session -d -s "$TMUX_SESSION" + tmux new-session -d -s "$TMUX_SESSION" 2>/dev/null || true + podman exec -it -e TERM="$TERM" --user "$DEV_USER" "$WORKSPACE" \ + tmux attach -t "$TMUX_SESSION" + fi - log INFO "$PERSON attaching to workspace '$WORKSPACE'" - podman exec -it -e TERM="$TERM" --user "$DEV_USER" "$WORKSPACE" \ - tmux attach -t "$TMUX_SESSION" log INFO "$PERSON detached from '$WORKSPACE'" + check_devuser_attached ;; ro)