qemuimage-testlib: add function to fetch the remote syslog
authorRoss Burton <ross.burton@intel.com>
Fri, 5 Apr 2013 15:35:31 +0000 (16:35 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Fri, 5 Apr 2013 16:36:34 +0000 (17:36 +0100)
Add a new function to scp from the target, and another to fetch
/var/log/messages and dump it to the console.

(From OE-Core rev: f94cb0d175309ad6b29598c57ba74cf1c3646661)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
scripts/qemuimage-testlib

index daa1ac0..051fee8 100755 (executable)
@@ -109,6 +109,40 @@ EOF`
        return $ret
 }
 
+# function to copy files from target to host
+# $1 is the ip address of target
+# $2 is the files, which need to be copied into target
+# $3 is the path on target, where files are copied into
+Test_SCP_From()
+{
+       local ip_addr=$1
+       local src=$2
+       local des=$3
+       local time_out=60
+       local ret=0
+
+       # We use expect to interactive with target by ssh
+       local exp_cmd=`cat << EOF
+eval spawn scp -o UserKnownHostsFile=/dev/null  -o StrictHostKeyChecking=no root@$ip_addr:"$src" "$des"
+set timeout $time_out
+expect {
+    "*assword:" { send "\r"; exp_continue}
+    "*(yes/no)?" { send "yes\r"; exp_continue }
+    eof          { exit [ lindex [wait] 3 ] }
+}
+EOF`
+
+       expect=`which expect`
+       if [ ! -x "$expect" ]; then
+               Test_Error "ERROR: Please install expect"
+               return 1
+       fi
+
+       expect -c "$exp_cmd"
+       ret=$?
+       return $ret
+}
+
 # function to run command in $ip_addr via ssh
 Test_SSH()
 {
@@ -709,3 +743,12 @@ Test_Toolchain()
 
        return $ret
 }
+
+Test_Display_Syslog()
+{
+       local tmplog=`mktemp`
+        Test_SCP_From ${TARGET_IPADDR} /var/log/messages $tmplog
+        echo "System logs:"
+        cat $tmplog
+        rm -f $tmplog
+}
\ No newline at end of file