diff options
Diffstat (limited to 'framework/src/onos/tools/test')
7 files changed, 90 insertions, 29 deletions
diff --git a/framework/src/onos/tools/test/bin/onos-secure-ssh b/framework/src/onos/tools/test/bin/onos-secure-ssh index 3c15fa3c..a3980e17 100755 --- a/framework/src/onos/tools/test/bin/onos-secure-ssh +++ b/framework/src/onos/tools/test/bin/onos-secure-ssh @@ -9,9 +9,6 @@ nodes=$(env | sort | egrep "OC[0-9]+" | cut -d= -f2) for node in $nodes; do - # Setup passwordless login for the remote user on the local bench host - onos-user-key $node - # Prune the node entry from the known hosts file since server key changes ssh-keygen -f "$HOME/.ssh/known_hosts" -R [$node]:8101 @@ -27,5 +24,10 @@ for node in $nodes; do sleep 1 done " + + # Setup passwordless login for the remote user on the local bench host + # For now, we let the local public key override the remote one + # TODO: fix username collision between workbench and the remote hosts + onos-user-key $node done diff --git a/framework/src/onos/tools/test/scenarios/fast.xml b/framework/src/onos/tools/test/scenarios/fast.xml new file mode 100644 index 00000000..3cfe2c60 --- /dev/null +++ b/framework/src/onos/tools/test/scenarios/fast.xml @@ -0,0 +1,30 @@ +<!-- + ~ Copyright 2015 Open Networking Laboratory + ~ + ~ Licensed under the Apache License, Version 2.0 (the "License"); + ~ you may not use this file except in compliance with the License. + ~ You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, software + ~ distributed under the License is distributed on an "AS IS" BASIS, + ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + ~ See the License for the specific language governing permissions and + ~ limitations under the License. + --> +<scenario name="fast" description="ONOS fast smoke test"> + <import file="${ONOS_SCENARIOS}/prerequisites.xml"/> + + <import file="${ONOS_SCENARIOS}/setup.xml"/> + <dependency name="Setup" requires="Prerequisites"/> + + <import file="${ONOS_SCENARIOS}/net-fast.xml"/> + <dependency name="Net-Fast" requires="Setup"/> + + <import file="${ONOS_SCENARIOS}/archetypes.xml"/> + <dependency name="Archetypes" requires="Setup"/> + + <import file="${ONOS_SCENARIOS}/wrapup.xml"/> + <dependency name="Wrapup" requires="~Archetypes,~Setup,~Net-Fast"/> +</scenario> diff --git a/framework/src/onos/tools/test/scenarios/net-fast.xml b/framework/src/onos/tools/test/scenarios/net-fast.xml new file mode 100644 index 00000000..359c0082 --- /dev/null +++ b/framework/src/onos/tools/test/scenarios/net-fast.xml @@ -0,0 +1,29 @@ +<!-- + ~ Copyright 2015 Open Networking Laboratory + ~ + ~ Licensed under the Apache License, Version 2.0 (the "License"); + ~ you may not use this file except in compliance with the License. + ~ You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, software + ~ distributed under the License is distributed on an "AS IS" BASIS, + ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + ~ See the License for the specific language governing permissions and + ~ limitations under the License. + --> +<scenario name="net-fast" description="Basic network functionality fast test"> + <group name="Net-Fast"> + <import file="${ONOS_SCENARIOS}/net-setup.xml"/> + + <import file="${ONOS_SCENARIOS}/net-pingall.xml" namespace="Reactive-Forwarding"/> + <dependency name="Reactive-Forwarding.Net-Pingall" requires="Net-Setup"/> + + <import file="${ONOS_SCENARIOS}/net-link-down-up.xml" namespace="Reactive-Forwarding"/> + <dependency name="Reactive-Forwarding.Net-Link-Down-Up" requires="Net-Setup,~Reactive-Forwarding.Net-Pingall"/> + + <import file="${ONOS_SCENARIOS}/net-teardown.xml"/> + <dependency name="Net-Teardown" requires="~Reactive-Forwarding.Net-Link-Down-Up"/> + </group> +</scenario> diff --git a/framework/src/onos/tools/test/scenarios/net-pingall.xml b/framework/src/onos/tools/test/scenarios/net-pingall.xml index 87c13227..100cebac 100644 --- a/framework/src/onos/tools/test/scenarios/net-pingall.xml +++ b/framework/src/onos/tools/test/scenarios/net-pingall.xml @@ -22,7 +22,7 @@ exec="onos-check-apps ${OC1} drivers,openflow,proxyarp,fwd includes"/> <!-- TODO: take this out when initial pingall sweep is 100% --> - <step name="Initial-Ping-All" requires="Check-Apps" + <step name="Initial-Ping-All" requires="Check-Apps" unless="${ONOS_RF_BUG_FIXED}" exec="onos-mininet sendAndExpect py net.pingAll(1) --expect received"/> <step name="Ping-All-And-Verify" requires="Check-Apps,Initial-Ping-All" diff --git a/framework/src/onos/tools/test/scenarios/net-smoke.xml b/framework/src/onos/tools/test/scenarios/net-smoke.xml index 91131c62..037b6f00 100644 --- a/framework/src/onos/tools/test/scenarios/net-smoke.xml +++ b/framework/src/onos/tools/test/scenarios/net-smoke.xml @@ -36,13 +36,13 @@ <dependency name="Net-Create-Flows" requires="Net-Setup,P2P-Intent-Connectivity,Net-REST"/> <import file="${ONOS_SCENARIOS}/net-topo.xml"/> - <dependency name="Net-topo" requires="Net-Setup,Net-Create-Flows"/> + <dependency name="Net-Topo" requires="Net-Setup,Net-Create-Flows"/> <import file="${ONOS_SCENARIOS}/net-teardown.xml"/> <dependency name="Net-Teardown" requires="~Host-Intent-Connectivity, ~P2P-Intent-Connectivity, ~Net-REST, ~Net-Create-Flows, - ~Net-topo"/> + ~Net-Topo"/> </group> </scenario> diff --git a/framework/src/onos/tools/test/scenarios/net-topo.xml b/framework/src/onos/tools/test/scenarios/net-topo.xml index e8e23997..abcf8642 100644 --- a/framework/src/onos/tools/test/scenarios/net-topo.xml +++ b/framework/src/onos/tools/test/scenarios/net-topo.xml @@ -16,60 +16,60 @@ <scenario name="net-topo" description="Network topology test"> <!-- TODO: parametrize this via recipes --> - <group name="Net-topo"> + <group name="Net-Topo"> <!-- Verify the overall topology using the REST API --> - <step name="Net-topo.Query-Topo" + <step name="Net-Topo.Query-Topo" exec="query-topo.py ${OC1} topo"/> - <step name="Net-topo.Verify-Topo-Devices" requires="Net-topo.Query-Topo" + <step name="Net-Topo.Verify-Topo-Devices" requires="Net-Topo.Query-Topo" exec="test ${topoDevices} == 25"/> - <step name="Net-topo.Verify-Topo-Links" requires="Net-topo.Query-Topo" + <step name="Net-Topo.Verify-Topo-Links" requires="Net-Topo.Query-Topo" exec="test ${topoLinks} == 140"/> - <step name="Net-topo.Verify-Topo-Clusters" requires="Net-topo.Query-Topo" + <step name="Net-Topo.Verify-Topo-Clusters" requires="Net-Topo.Query-Topo" exec="test ${topoClusters} == 1"/> <!-- Verify the cluster topology using the REST API --> - <step name="Net-topo.Query-Cluster0" + <step name="Net-Topo.Query-Cluster0" exec="query-cluster.py ${OC1} clusterTopo0 0"/> - <step name="Net-topo.Verify-Cluster0-Id" requires="Net-topo.Query-Cluster0" + <step name="Net-Topo.Verify-Cluster0-Id" requires="Net-Topo.Query-Cluster0" exec="test ${clusterTopo0Id} == 0"/> - <step name="Net-topo.Verify-Cluster0-DeviceCount" requires="Net-topo.Query-Cluster0" + <step name="Net-Topo.Verify-Cluster0-DeviceCount" requires="Net-Topo.Query-Cluster0" exec="test ${clusterTopo0DeviceCount} == 25"/> - <step name="Net-topo.Verify-Cluster0-LinkCount" requires="Net-topo.Query-Cluster0" + <step name="Net-Topo.Verify-Cluster0-LinkCount" requires="Net-Topo.Query-Cluster0" exec="test ${clusterTopo0LinkCount} == 140"/> - <step name="Net-topo.Verify-Cluster0-Root" requires="Net-topo.Query-Cluster0" + <step name="Net-Topo.Verify-Cluster0-Root" requires="Net-Topo.Query-Cluster0" exec="test '${clusterTopo0Root}' == 'of:000000000000000a'"/> <!-- Verify the list of devices for the cluster --> - <step name="Net-topo.Verify-Cluster0-Devices" + <step name="Net-Topo.Verify-Cluster0-Devices" exec="verify-topo-devices.py ${OC1} 0 0 24"/> <!-- Spot check some known links in the topology --> - <step name="Net-topo.Verify-Cluster0-Link1" + <step name="Net-Topo.Verify-Cluster0-Link1" exec="find-link-in-cluster.py ${OC1} link1 0 140 of:000000000000000f 8 of:0000000000000015 3"/> - <step name="Net-topo.Verify-Cluster0-Link2" + <step name="Net-Topo.Verify-Cluster0-Link2" exec="find-link-in-cluster.py ${OC1} link2 0 140 of:0000000000000008 3 of:0000000000000005 4"/> - <step name="Net-topo.Verify-Cluster0-Link3" + <step name="Net-Topo.Verify-Cluster0-Link3" exec="find-link-in-cluster.py ${OC1} link3 0 140 of:0000000000000011 2 of:0000000000000002 9"/> - <step name="Net-topo.Verify-Cluster0-Link4" + <step name="Net-Topo.Verify-Cluster0-Link4" exec="find-link-in-cluster.py ${OC1} link4 0 140 of:000000000000000f 3 of:000000000000000d 10"/> - <step name="Net-topo.Verify-Cluster0-Link5" + <step name="Net-Topo.Verify-Cluster0-Link5" exec="find-link-in-cluster.py ${OC1} link5 0 140 of:000000000000000d 13 of:0000000000000010 6"/> <!-- Verify the topology infrastructure query --> - <step name="Net-topo.Query-Cluster0-Infra1" + <step name="Net-Topo.Query-Cluster0-Infra1" exec="find-topo-infrastructure.py ${OC1} infra1 of:000000000000000f:8"/> - <step name="Net-topo.Verify-Cluster0-Infra1" requires="Net-topo.Query-Cluster0-Infra1" + <step name="Net-Topo.Verify-Cluster0-Infra1" requires="Net-Topo.Query-Cluster0-Infra1" exec="test '${infra1Infrastructure}' == 'True'"/> - <step name="Net-topo.Query-Cluster0-Infra2" + <step name="Net-Topo.Query-Cluster0-Infra2" exec="find-topo-infrastructure.py ${OC1} infra2 of:000000000000000d:8"/> - <step name="Net-topo.Verify-Cluster0-Infra2" requires="Net-topo.Query-Cluster0-Infra2" + <step name="Net-Topo.Verify-Cluster0-Infra2" requires="Net-Topo.Query-Cluster0-Infra2" exec="test '${infra2Infrastructure}' == 'True'"/> - <step name="Net-topo.Query-Cluster0-Infra3" + <step name="Net-Topo.Query-Cluster0-Infra3" exec="find-topo-infrastructure.py ${OC1} infra3 of:0000000000000012:8"/> - <step name="Net-topo.Verify-Cluster0-Infra3" requires="Net-topo.Query-Cluster0-Infra3" + <step name="Net-Topo.Verify-Cluster0-Infra3" requires="Net-Topo.Query-Cluster0-Infra3" exec="test '${infra3Infrastructure}' == 'False'"/> </group> diff --git a/framework/src/onos/tools/test/scenarios/prerequisites.xml b/framework/src/onos/tools/test/scenarios/prerequisites.xml index 2c541d5b..5690fc4a 100644 --- a/framework/src/onos/tools/test/scenarios/prerequisites.xml +++ b/framework/src/onos/tools/test/scenarios/prerequisites.xml @@ -20,7 +20,7 @@ <parallel var="${OC#}"> <step name="Check-Passwordless-Login-${#}" - exec="ssh -n -o ConnectTimeout=3 -o PasswordAuthentication=no sdn@${OC#} date"/> + exec="ssh -n -o ConnectTimeout=3 -o PasswordAuthentication=no ${ONOS_USER}@${OC#} date"/> </parallel> </group> </scenario> |