2015-07-27 01:22:21 +00:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
|
2015-12-06 01:52:21 +00:00
|
|
|
#Based off of https://github.com/andyneff/gpg_agent/blob/master/stop.bsh
|
|
|
|
|
2015-07-27 01:22:21 +00:00
|
|
|
set -eu
|
|
|
|
|
2015-07-27 23:53:26 +00:00
|
|
|
CUR_DIR=$(dirname ${BASH_SOURCE[0]})
|
2015-12-06 01:52:21 +00:00
|
|
|
CONTAINER_NAME=git-lfs-gpg
|
2015-07-27 23:53:26 +00:00
|
|
|
|
2015-07-31 05:47:47 +00:00
|
|
|
: ${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`}
|
2015-07-27 23:53:26 +00:00
|
|
|
|
2015-07-27 01:22:21 +00:00
|
|
|
function docker_wait(){
|
2015-12-06 01:52:21 +00:00
|
|
|
local set loop=0
|
|
|
|
|
|
|
|
while true; do
|
2015-07-27 23:53:26 +00:00
|
|
|
if [ "$($SUDO docker inspect -f {{.State.Running}} $1)" != "true" ]; then
|
2015-07-27 01:22:21 +00:00
|
|
|
return 0
|
|
|
|
else
|
2015-12-06 01:52:21 +00:00
|
|
|
if (( $loop >= $2 )); then
|
|
|
|
return 1
|
|
|
|
fi
|
2015-07-27 01:22:21 +00:00
|
|
|
sleep 1
|
|
|
|
fi
|
2015-12-06 01:52:21 +00:00
|
|
|
loop=$(( loop + 1 ))
|
2015-07-27 01:22:21 +00:00
|
|
|
done
|
|
|
|
}
|
|
|
|
|
2015-12-06 01:52:21 +00:00
|
|
|
if ! docker_wait ${CONTAINER_NAME} 0; then
|
|
|
|
$SUDO docker exec -it ${CONTAINER_NAME} pkill gpg-agent || :
|
2015-07-27 01:22:21 +00:00
|
|
|
fi
|
|
|
|
|
2015-12-06 01:52:21 +00:00
|
|
|
docker_wait ${CONTAINER_NAME} 10 || :
|
2015-07-27 01:22:21 +00:00
|
|
|
|
2015-12-06 01:52:21 +00:00
|
|
|
$SUDO docker rm -f ${CONTAINER_NAME}
|