#!/bin/bash function ssh_target { ssh -i vm-key "$to" "$@" } target=$1 target=${target%/} source "$target/config" echo "To: $to" echo "Agent: $SSH_AGENT_PID" oldpid=$SSH_AGENT_PID if [[ $oldpid == "" ]]; then eval $(ssh-agent) ssh-add vm-key fi command=$(basename -- "$0") echo "Action: $command" if [[ $command == "push" ]]; then git push -f "$to:" "HEAD:refs/remotes/manager/master" else git fetch "$to:" "+HEAD:refs/remotes/$target/master" fi if [[ $oldpid == "" ]]; then eval $(ssh-agent -k) fi