| Index: run_remote_tests.sh
|
| diff --git a/run_remote_tests.sh b/run_remote_tests.sh
|
| index 9cb131817297301766619d05a3f71f74b5306d37..ab4923d75683cb3adbf193580f769f1a8c810dc4 100755
|
| --- a/run_remote_tests.sh
|
| +++ b/run_remote_tests.sh
|
| @@ -29,6 +29,30 @@ DEFINE_boolean use_emerged ${FLAGS_FALSE} \
|
|
|
| RAN_ANY_TESTS=${FLAGS_FALSE}
|
|
|
| +function stop_ssh_agent() {
|
| + # Call this function from the exit trap of the main script.
|
| + # Iff we started ssh-agent, be nice and clean it up.
|
| + # Note, only works if called from the main script - no subshells.
|
| + if [[ 1 -eq ${OWN_SSH_AGENT} ]]
|
| + then
|
| + kill ${SSH_AGENT_PID} 2>/dev/null
|
| + unset OWN_SSH_AGENT SSH_AGENT_PID SSH_AUTH_SOCK
|
| + fi
|
| +}
|
| +
|
| +function start_ssh_agent() {
|
| + local tmp_private_key=$TMP/autotest_key
|
| + if [ -z "$SSH_AGENT_PID" ]; then
|
| + eval $(ssh-agent)
|
| + OWN_SSH_AGENT=1
|
| + else
|
| + OWN_SSH_AGENT=0
|
| + fi
|
| + cp $FLAGS_private_key $tmp_private_key
|
| + chmod 0400 $tmp_private_key
|
| + ssh-add $tmp_private_key
|
| +}
|
| +
|
| function cleanup() {
|
| # Always remove the build path in case it was used.
|
| [[ -n "${BUILD_DIR}" ]] && sudo rm -rf "${BUILD_DIR}"
|
| @@ -38,6 +62,7 @@ function cleanup() {
|
| else
|
| echo ">>> Details stored under ${TMP}"
|
| fi
|
| + stop_ssh_agent
|
| cleanup_remote_access
|
| }
|
|
|
| @@ -169,6 +194,8 @@ function main() {
|
| trap cleanup EXIT
|
|
|
| remote_access_init
|
| + # autotest requires that an ssh-agent already be running
|
| + start_ssh_agent
|
|
|
| learn_board
|
| autodetect_build
|
|
|