github.com/git-lfs/git-lfs@v2.5.2+incompatible/docker/gpg-agent_stop.bsh (about) 1 #!/usr/bin/env bash 2 3 #Based off of https://github.com/andyneff/gpg_agent/blob/master/stop.bsh 4 5 set -eu 6 7 CUR_DIR=$(dirname ${BASH_SOURCE[0]}) 8 CONTAINER_NAME=git-lfs-gpg 9 10 : ${SUDO=`if ( [ ! -w /var/run/docker.sock ] && id -nG | grep -qwv docker && [ "${DOCKER_HOST:+dh}" != "dh" ] ) && which sudo > /dev/null 2>&1; then echo sudo; fi`} 11 12 function docker_wait(){ 13 local set loop=0 14 15 while true; do 16 if [ "$($SUDO docker inspect -f {{.State.Running}} $1)" != "true" ]; then 17 return 0 18 else 19 if (( $loop >= $2 )); then 20 return 1 21 fi 22 sleep 1 23 fi 24 loop=$(( loop + 1 )) 25 done 26 } 27 28 if ! docker_wait ${CONTAINER_NAME} 0; then 29 $SUDO docker exec -it ${CONTAINER_NAME} pkill gpg-agent || : 30 fi 31 32 docker_wait ${CONTAINER_NAME} 10 || : 33 34 $SUDO docker rm -f ${CONTAINER_NAME}