Commit 80477cc4 authored by nimrod's avatar nimrod
Browse files

Better checking for docker-remote pruning.

Don't delete sockets that are still in use (have an open ssh client
listening).
parent d97d5a13
Loading
Loading
Loading
Loading
+8 −2
Original line number Diff line number Diff line
@@ -113,7 +113,6 @@ alias rc_make="make --directory $HOME --always-make"
alias rc_update="rc_make vendored generated"
alias gen-ssh-config="rc_make .ssh/config"
alias bfg='java -jar $HOME/.local/share/bfg/bfg.jar'
alias prune_docker_remote='find ~/.ssh -maxdepth 1 -type s -name "docker_*" -exec rm {} \;'
alias close='ssh -fnNTS ~/.ssh/%C.sock -O exit'
alias jjb='jenkins-jobs'
alias diff='diff --unified'
@@ -294,6 +293,13 @@ flatpak_kill () {
    fi
}

__prune_docker_remote () {
    for i in ~/.ssh/docker_*
    do
        [ ! -e "$i" ] || lsof -t "$i" >/dev/null || rm "$i"
    done
}

__prompt () {
    local exitstatus="$?"
    local runduration endtime pre_prompt
@@ -377,4 +383,4 @@ then
    ! command -v direnv > /dev/null || eval "$(direnv hook bash)"
fi

prune_docker_remote
__prune_docker_remote
+2 −1
Original line number Diff line number Diff line
@@ -5,7 +5,8 @@ set -eu
host="$1"
localsocket="$HOME/.ssh/docker_$host.sock"

lsof -t "$localsocket" > /dev/null 2>&1 || rm -f "$localsocket"
[ ! -e "$localsocket" ] || lsof -f "$localsocket" >/dev/null || rm "$localsocket"

forward "$host" "$localsocket:/var/run/docker.sock" > /dev/null 2>&1

# Echo the DOCKER_HOST export command, for eval'ing.