diff options
author | Vincent Hsu <vincent.hsu@linaro.org> | 2013-11-11 17:58:25 +0800 |
---|---|---|
committer | Linaro Code Review <review@review.linaro.org> | 2013-12-20 14:54:01 +0000 |
commit | 572770e504e886e888f9e5829d735da4ab1365e1 (patch) | |
tree | 26ede2a8c781222c59f04ce8c6130e179dbda966 | |
parent | d5e1f2e6f904b0931395eb995bd6aa9983e18ec2 (diff) |
ubuntu/ltp-network: add ltp network test
temporarily disable some tests which can't run success in
ltp-network-skiplist. dhcpd test work fine but will conflict
with the dhcp server in lab.
apply some patches which have not accepted by upstream yet.
Change-Id: I4c4487f980b0af8f99b8bc31e88dc6b893838ea6
Signed-off-by: Vincent Hsu <vincent.hsu@linaro.org>
-rw-r--r-- | ubuntu/ltp-network.yaml | 57 | ||||
-rw-r--r-- | ubuntu/scripts/ltp-network-skiplist | 17 | ||||
-rw-r--r-- | ubuntu/scripts/ltp-network-udhcpd | 9 | ||||
-rw-r--r-- | ubuntu/scripts/ltp-network-xinetd.conf | 23 | ||||
-rwxr-xr-x | ubuntu/scripts/ltp-network.sh | 112 |
5 files changed, 206 insertions, 12 deletions
diff --git a/ubuntu/ltp-network.yaml b/ubuntu/ltp-network.yaml index 69cb488..55e4d46 100644 --- a/ubuntu/ltp-network.yaml +++ b/ubuntu/ltp-network.yaml @@ -3,6 +3,7 @@ metadata: format: "Lava-Test-Shell Test Definition 1.0" description: "Run LTP network tests" maintainer: + - vincent.hsu@linaro.org - milosz.wasilewski@linaro.org - fathi.boudra@linaro.org os: @@ -16,31 +17,63 @@ metadata: - vexpress-a9 - vexpress-tc2 +params: + - "TEST_INTERFACE=eth1" + - "TEST_SERVER=172.31.1.4" + install: steps: + - 'echo "nameserver 8.8.8.8" >> /etc/resolf.conf' + - 'ntpdate pool.ntp.org' - 'wget http://sourceforge.net/projects/ltp/files/LTP%20Source/ltp-20130904/ltp-full-20130904.tar.xz' - 'tar --strip-components=1 -Jxf ltp-full-20130904.tar.xz' - - 'mkdir build' - - './configure --prefix=$(readlink -f build)' + - 'wget http://people.linaro.org/~vincent.hsu/ltp-network-patches.tgz' + - 'tar -zxf ltp-network-patches.tgz' + - 'for i in ./*.patch; do patch -p1 < $i; done' + - './configure' - 'make all' - 'make SKIP_IDCHECK=1 install' deps: - - bzip2 - flex - bison - build-essential - wget + - autoconf + - automake + - autotools-dev + - m4 + - libaio-dev + - libattr1-dev + - libcap-dev + - libtirpc-dev + - linux-headers-3.10.0-1-linaro-arndale + - traceroute + - rwho + - rdist + - rstat-client + - rstatd + - rusers + - rusersd + - ftp + - finger + - fingerd + - dmucs + - nfs-common + - nfs-kernel-server + - bind9-host + - iptables + - telnet + - tcpdump + - psmisc + - expect + - xinetd + run: steps: - - 'cd build' - - 'sudo ./runltp -f networktests -p -q' + - "./ubuntu/scripts/ltp-network.sh $TEST_INTERFACE $TEST_SERVER" parse: - pattern: "^(?P<test_case_id>\\S+)\\s+\\d+\\s+(?P<result>\\w+)\\s+:\\s+.+" + pattern: "^(?P<test_case_id>.+)\\s+(?P<result>\\w+)\\s+\\d+" fixupdict: - TBROK: fail - TCONF: skip - TFAIL: fail - TINFO: skip - TPASS: pass - TWARN: unknown + FAIL: fail + PASS: pass diff --git a/ubuntu/scripts/ltp-network-skiplist b/ubuntu/scripts/ltp-network-skiplist new file mode 100644 index 0000000..a224886 --- /dev/null +++ b/ubuntu/scripts/ltp-network-skiplist @@ -0,0 +1,17 @@ +rdist +sendfile +dhcpd +xinetd +rwho +iproute +asapi_04 +run_rpc_tests.sh +rpc01 +rpcinfo +rup +test_1_to_1_sockopt +test_assoc_abort +test_fragments +test_fragments_v6 +test_sctp_sendrecvmsg +test_sctp_sendrecvmsg_v6 diff --git a/ubuntu/scripts/ltp-network-udhcpd b/ubuntu/scripts/ltp-network-udhcpd new file mode 100644 index 0000000..06a3de2 --- /dev/null +++ b/ubuntu/scripts/ltp-network-udhcpd @@ -0,0 +1,9 @@ +# Comment the following line to enable +DHCPD_ENABLED="yes" + +# Options to pass to busybox' udhcpd. +# +# -S Log to syslog +# -f run in foreground + +DHCPD_OPTS="-S" diff --git a/ubuntu/scripts/ltp-network-xinetd.conf b/ubuntu/scripts/ltp-network-xinetd.conf new file mode 100644 index 0000000..076ed97 --- /dev/null +++ b/ubuntu/scripts/ltp-network-xinetd.conf @@ -0,0 +1,23 @@ +# Simple configuration file for xinetd +# +# Some defaults, and include /etc/xinetd.d/ + +defaults +{ + +# Please note that you need a log_type line to be able to use log_on_success +# and log_on_failure. The default is the following : +# log_type = SYSLOG daemon info + +} + +service finger +{ + id = fingerd + socket_type = stream + wait = no + user = nobody + server = /usr/sbin/in.fingerd +} + +includedir /etc/xinetd.d diff --git a/ubuntu/scripts/ltp-network.sh b/ubuntu/scripts/ltp-network.sh new file mode 100755 index 0000000..d23ff6e --- /dev/null +++ b/ubuntu/scripts/ltp-network.sh @@ -0,0 +1,112 @@ +#!/bin/bash + +DIS="ubuntu" +START_DIR=$(pwd) +LTP_DIR="/opt/ltp" +INTERFACE=$1 # TEST_INTERFACE: from Dispatcher Job File +SERVER_IP=$2 # TEST_SERVER: from Dispatcher Job File +SERVER_NAME="server.ltp" +SERVER_PASSWD="2f70c6f33c8d78a717eb01296b8a4d59" + +# overwrite configuration +cp $START_DIR/$DIS/scripts/ltp-network-xinetd.conf /etc/xinetd.conf +cp $START_DIR/$DIS/scripts/ltp-network-udhcpd /etc/default/udhcpd + +# for rsh +cd ~ +if [ -d .ssh ]; then + rm -rf .ssh +fi +mkdir .ssh + +cat > ~/.ssh/config <<-EOF +Host * + StrictHostKeyChecking no +EOF + +cat > ~/.ssh/id_rsa <<-EOF +-----BEGIN RSA PRIVATE KEY----- +MIIEpAIBAAKCAQEA3vTpHWDooU7wd8iUDa9aWKl97xX5UGr9u2geNK3lcp1ZVdnq +qetd+oaUqMLXS9KvWxk0CDxRjk9S9HAvPlsj9XlvTOYEvI03M2Vl6zew489WPXAu +OrbGk26kReR1bWVi2BkEsu8BjZtBZ828ncNWb6s/IX7IkyIEi+3QyE2lr6KuE0iL +gc+4xX/iT+suuP8RK/UPhCTVqCvpIaiURykDokEEgTqTWvfVdFYLexntOG7C3VQQ +5WZF+20AlvFAHS2CKz0GO/D0MvveD0IRAsVLy+dOgG4muNAUFMsu/Zs+r+CpHQzI +LBsstP8QEEhSFtQM4RyqoOtTlNwQrzYa4b4HXwIDAQABAoIBAQDcjE4xRpS4RLsw +8pQqOWTYwckWgZkfSMb35JXErKSFTUt61lcAgRh04z4Y9qw8kAvwxKyo3OocKTG5 +JWRGfafDgr1rxzm2Psb1K3+3P17W61m26sqAQB+M5ezQSp8yeRFfDNiOHElgB82a +XnUPZpSRYEfR3XWRvhvbQ4O9MLoOUrfS613osoAzaqav0OGSUHzSsvkX7aOMfAt1 +TJj1iM/I41Le14LBovqvtfG1ltDDybTmu30gAHTD6e726IS+2qlTf0QhxpHGP5RS +pxAI8AZsv4HROQIiO9l1TT+8NnatXFS2v33sUwaFtU79eQ46nGxIKGdPNhJJUc8D +tTT5IO6pAoGBAP7jaJZG+YP1tvqAkPuCxQ+T3nLX7V8hE7aZg/LZCVy1pgCavTNp +jbg2gGsAw69D5J3309kQLPYd9i6N8D5WO/9vQ3yjOQlNrgJVvTw/0RMbZLeX6iQQ +bpGniqeqqF+NZgJ5kMHbJJbWUMvnY9cEh/zTG+78jzGfpDUfGnsahaxTAoGBAN/t +2WxawvbFh7u4Hnfcn3y378WdYsWogeF05GjPoCd9+V+78X4HWvkaVvhEQFkjAP5v +2OblNN7U7YwL33JwtvbdiaLtorvXiXvSbj6yhMWItb2bqfEOh6IFWuMU5UzDaxym +UaWcEg/n+hvq+W888zTDziJvoiLKH7+lfncRdHdFAoGAE0FsykWMXgq3Cw+hZE7J +wlaCbJyhYxllmtrYHAWHboiOhOcrufGUckEzzGGfZuMzJzfsui49p042Jeg1KRBs +sexe5dCS44AJ0EVX6XBMxCvCnRgN6TGQmNJWaDo9RBKzjSZP6EU862Q/cFgHs9u0 +xkXQi2prCu2rgxPZdUlYpd8CgYBfV+Y7PGnGqFQimUJfxpAhii+M9HYZsqWaWSrn +dX+7UOfc2yj3gCo75fshue2sBjtmGjlAFldsiTybZHK/Rz6f3bO8q3GeiScAkZhf +GaNud8bp9F1nRch6M81+4ma/SHVSvX4GBW2rWBolyOZrdogW70fVYbKnHWhnMQ+n +osb0AQKBgQDh7ltYaoCRxAAcWPSQvzgdHOdAfEmhXTuWVQC7HzUTOO1vWgnF7SQj +olwZnFoETACvW4DRP5zhDmqFWgmqdvhEw36aBHMlJlumpWCO9WE248ljpXUcE5p0 +HE+8/JeffV2tY0KTlT4Hh3kmr2IpSKTMQjBfBZG1xUxlVz/2ZlVspQ== +-----END RSA PRIVATE KEY----- +EOF + +chmod 600 ~/.ssh/id_rsa +chown -R $(whoami):$(whoami) .ssh + +# network coufiguration +echo "===== network coufiguration =====" +echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts +ifconfig $INTERFACE up +ifconfig $INTERFACE mtu 1500 +dhclient $INTERFACE +echo "+ +" > ~/.rhosts +echo "$SERVER_IP $SERVER_NAME" >> /etc/hosts +echo $(ifconfig $INTERFACE | grep 'inet addr' | awk -F: '{print $2}' |awk '{print $1 " client.ltp"}') >> /etc/hosts +echo "client.ltp" > /etc/hostname +hostname client.ltp + +# check network status +ifconfig -a > ~/ifconfig.log +cat ~/ifconfig.log +ping -c 5 server.ltp > ~/ping.log +cat ~/ping.log +grep "100% packet loss" ~/ping.log && (echo "No network connection!!" ; exit 1) + +# temporary modify server hostname +SERVER_ORI_NAME=$(rsh -n -l root $SERVER_IP hostname) +rsh -n -l root $SERVER_IP hostname $SERVER_NAME + +echo "===== ltp network test start =====" +cd $LTP_DIR + +# form networktests.sh +export RHOST=$SERVER_NAME +export PASSWD=$SERVER_PASSWD + +# for nfs test +echo "/ *(rw,sync,no_root_squash,no_subtree_check)" > /etc/exports +sed -i -e "s/$RPCMOUNTDOPTS --no-nfs-version 3/$RPCMOUNTDOPTS/g" /etc/init.d/nfs-kernel-server +service nfs-kernel-server restart + +# for sctp test +modprobe sctp + +# for tcp test +service xinetd restart +#service udhcpd restart # this test need to start a dhcp server + +# run test +./runltp -q -p -f multicast,nfs,rpc,sctp,ipv6_lib,tcp_cmds,tcp_cmds_addition -S $START_DIR/$DIS/scripts/ltp-network-skiplist +ifconfig $INTERFACE mtu 1500 # ip test will modify mtu to 300 + +# print test result +find ./results -name "LTP_RUN_ON*" -print0 |xargs -0 cat + +# recover server hostname +rsh -n -l root $SERVER_IP hostname $SERVER_ORI_NAME +echo "===== ltp network test end =====" + |