1#!/bin/sh 2 3. .github/configs $1 4 5[ -z "${SUDO}" ] || ${SUDO} mkdir -p /var/empty 6 7set -ex 8 9# If we want to test hostbased auth, set up the host for it. 10if [ ! -z "$SUDO" ] && [ ! -z "$TEST_SSH_HOSTBASED_AUTH" ]; then 11 sshconf=/usr/local/etc 12 $SUDO mkdir -p "${sshconf}" 13 hostname | $SUDO tee $sshconf/shosts.equiv >/dev/null 14 echo "EnableSSHKeysign yes" | $SUDO tee $sshconf/ssh_config >/dev/null 15 $SUDO mkdir -p $sshconf 16 $SUDO cp -p /etc/ssh/ssh_host*key* $sshconf 17 $SUDO make install 18 for key in $sshconf/ssh_host*key*.pub; do 19 echo `hostname` `cat $key` | \ 20 $SUDO tee -a $sshconf/ssh_known_hosts >/dev/null 21 done 22fi 23 24output_failed_logs() { 25 for i in regress/failed*.log; do 26 if [ -f "$i" ]; then 27 echo ------------------------------------------------------------------------- 28 echo LOGFILE $i 29 cat $i 30 echo ------------------------------------------------------------------------- 31 fi 32 done 33} 34trap output_failed_logs 0 35 36env="" 37if [ ! -z "${SUDO}" ]; then 38 env="${env} SUDO=${SUDO}" 39fi 40if [ ! -z "${TCMALLOC_STACKTRACE_METHOD}" ]; then 41 env="${env} TCMALLOC_STACKTRACE_METHOD=${TCMALLOC_STACKTRACE_METHOD}" 42fi 43if [ ! -z "${TEST_SSH_SSHD_ENV}" ]; then 44 env="${env} TEST_SSH_SSHD_ENV=${TEST_SSH_SSHD_ENV}" 45fi 46if [ ! -z "${env}" ]; then 47 env="env${env}" 48fi 49 50if [ -z "${LTESTS}" ]; then 51 ${env} make ${TEST_TARGET} SKIP_LTESTS="${SKIP_LTESTS}" 52else 53 ${env} make ${TEST_TARGET} SKIP_LTESTS="${SKIP_LTESTS}" LTESTS="${LTESTS}" 54fi 55 56if [ ! -z "${SSHD_CONFOPTS}" ]; then 57 echo "rerunning t-exec with TEST_SSH_SSHD_CONFOPTS='${SSHD_CONFOPTS}'" 58 if [ -z "${LTESTS}" ]; then 59 ${env} make t-exec SKIP_LTESTS="${SKIP_LTESTS}" TEST_SSH_SSHD_CONFOPTS="${SSHD_CONFOPTS}" 60 else 61 ${env} make t-exec SKIP_LTESTS="${SKIP_LTESTS}" LTESTS="${LTESTS}" TEST_SSH_SSHD_CONFOPTS="${SSHD_CONFOPTS}" 62 fi 63fi 64