testing: using jobspec instead of SSHD_PID
[monkeysphere.git] / tests / basic
index b1f3493c4aae90a446abb114599a3dacd3e40df8..cb3730daddc27bef1cfddaebbf77f5858d31a959 100755 (executable)
@@ -27,10 +27,12 @@ cleanup() {
     read -p "press enter to cleanup and remove tmp:"
 
     echo "### stop sshd..."
-    kill "$SSHD_PID"
+    kill %1
 
     echo "### removing temp dir..."
     rm -rf "$TEMPDIR"
+
+    wait
 }
 
 ## setup trap
@@ -67,6 +69,13 @@ echo "### copying admin and testuser homes..."
 cp -a "$TESTDIR"/home/admin "$TEMPDIR"/
 cp -a "$TESTDIR"/home/testuser "$TEMPDIR"/
 
+cat <<EOF > "$TEMPDIR"/testuser/.ssh/config
+UserKnownHostsFile $TEMPDIR/testuser/.ssh/known_hosts
+EOF
+
+cat <<EOF > "$TEMPDIR"/testuser/.monkeysphere/monkeysphere.conf
+KNOWN_HOSTS=$TEMPDIR/testuser/.ssh/known_hosts
+EOF
 
 
 ### SERVER TESTS
@@ -113,8 +122,6 @@ EOF
 # launch test sshd with the new host key.
 echo "### starting sshd..."
 socat EXEC:"/usr/sbin/sshd -f ${SSHD_CONFIG} -i -d -d -d -D -e" "UNIX-LISTEN:${SOCKET}" 2> "$TEMPDIR"/sshd.log &
-export SSHD_PID=$!
-
 
 ### TESTUSER TESTS
 
@@ -133,6 +140,6 @@ gpgadmin --armor --export "$HOSTKEYID" | \
 # the identity before connection.  This should work in both directions!
 echo "### testuser connecting to sshd socket..."
 PROXY_COMMAND="monkeysphere-ssh-proxycommand --no-connect %h && socat STDIO UNIX:${SOCKET}"
-GNUPGHOME="$TEMPDIR"/testuser/.gnupg ssh -v -v -v -oProxyCommand="$PROXY_COMMAND" testhost
-
-
+GNUPGHOME="$TEMPDIR"/testuser/.gnupg \
+MONKEYSPHERE_HOME="$TEMPDIR"/testuser/.monkeysphere \
+ ssh -F "$TEMPDIR"/testuser/.ssh/config -v -v -v -oProxyCommand="$PROXY_COMMAND" testhost