Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

HTML

<img src="https://jenkins.onosproject.org/view/QA/job/postjob-VM/lastSuccessfulBuild/artifact/HAsingleInstanceRestart_master_20-builds_graph.jpg", alt="HAsingleInstanceRestart", style="width:525px;height:350px;border:0">

commit 581c8407e613a27aaa573a600828b30a37066fb8

...

commit eb5eebbb820c0a623f0fbbae1ac3b3149ad13324 (HEAD, origin/master, origin/HEAD, master)
Author: Sanjay S pierventre [sanjaypier@opennetworking.s@happiestminds.comorg]
AuthorDate: Fri Apr 24 15:44:50 2015 +0530
Commit: Gerrit Code Review [gerrit@onlab.us]
CommitDate: Thu Apr 30 04:04:11 2015 +0000
Modified to accommodate code review comments.
HTML

<iframe src="https://onos-jenkins.onlab.us/job/HASingleInstanceRestart/plot/getPlot?index=0&width=500&height=300"noborder="0" width="500" height="300" scrolling="yes" seamless="seamless"></iframe>

Case 1: Setting up test environment - PASSED

Thu Sep 23 19:03:14 2021 +0200
Commit: Pier Luigi Ventre [pier@opennetworking.org]
CommitDate: Mon Sep 27 19:27:55 2021 +0000

[SDFAB-616] Inconsistent format of port number in DhcpRelay
--
(cherry picked from commit 61bd673eec2282aff175daff141059870db78c7d)

Case 1: Constructing test variables and building ONOS package - PASS

For loading from params file, and pull and build the latest ONOS package

  • 1.1 Constructing test variables - PASS (tick)
  • 1.2 Apply cell to environment - PASS (tick)
  • 1.3 Uninstalling Atomix - PASS (tick)
  • 1.4 Uninstalling ONOS package - PASS (tick)
  • 1.5 Apply cell to environment - PASS (tick)
  • 1.6 Starting Mininet - PASS (tick)
  • 1.7 Creating ONOS package - PASS (tick)
  • 1.8 Installing Atomix - PASS (tick)
  • 1.9 Installing ONOS package - PASS (tick)
  • 1.10 Set up ONOS secure SSH - PASS (tick)
  • 1.11 Checking ONOS service - PASS (tick)
  • 1.12 Starting ONOS CLI sessions - PASS (tick)
  • 1.13 Checking ONOS nodes - PASS (tick)
  • 1.14 Checking ONOS applications - PASS (tick)
  • 1.15 Checking ONOS nodes - PASS (tick)
  • 1.16 Activate apps defined in the params file - No Result (warning)
  • 1.17 Set ONOS configurations - PASS (tick)
  • 1.18 Check app ids - PASS (tick)
  • 1.19 Set logging levels
  • 1.1 Applying cell variable to environment - No Result (warning)
  • 1.2 Starting Mininet - No Result (warning)
  • 1.3 Compiling the latest version of ONOS - No Result (warning)
  • 1.4 Creating ONOS package - No Result (warning)
  • 1.5 Installing ONOS package - No Result (warning)
  • 1.6 Checking if ONOS is up yet - No Result (warning)
  • 1.7 Start Packet Capture MN - PASS (tick)

Case 2: Assigning

...

devices to controllers - PASS

Assign switches to ONOS using 'ovs-vsctl' and check that an ONOS node becomes the master of the device.

  • 2.1 Assign switches to controllers - PASS (tick)

Case 8: Compare ONOS Topology view to Mininet topology -

...

PASS

Compare topology objects between Mininet and ONOS

  • 8.1 Create TestONTopology object - No Result (warning) 8.2 Comparing ONOS topology to MN topology - No Result (warning)PASS (tick)
  • 8.3 Collecting topology information from ONOS 2 Checking ONOS nodes - PASS (tick)

Case 3: Adding host Intents

...

- PASS

Discover hosts by using pingall then assign predetermined host-to-host intents. After installation, check that the intent is distributed to all nodes and the state is INSTALLED

  • 3.1 Install reactive forwarding app - PASS (tick)
  • 3.2 Check app ids - PASS (tick)
  • 3.3 Discovering Hosts( Via pingall for now ) - PASS (tick)
  • 3.4 Uninstall reactive forwarding app - PASS (tick)
  • 3.5 Check app ids - PASS (tick)
  • 3.6 2 Add host intents via cli - PASS (tick)
  • 3.7 Intent Anti-Entropy dispersion - PASS (tick)

Case 4: Verify connectivity by sending traffic across Intents - PASS

Ping across added host intents

...

to check functionality and check the state of the intent

  • 4.1 Check Intent state - PASS (tick)
  • 4.2 Ping across added host intents - PASS (tick)
  • 4.3 Check leadership of topics - PASS (tick)
  • 4.4 Wait a minute then ping again - PASS (tick)

Case 5: Setting up and gathering data for current state -

...

PASS

  • 5.1 Check that each switch has a master - PASS (tick)
  • 5.2 Get the intents Mastership of each switch from each controller - No Result (warning)
  • 5.3 Read device roles from ONOS - PASS (tick)
  • 5.4 Check for consistency in roles from each controller - PASS (tick)
  • 5.5 Get the intents from each controller - PASS (tick)
  • 5.6 Check for consistency in Intents from each controller - PASS (tick)
  • 5.7 Get the flows from each controller - No Result (warning)PASS (tick)
  • 5.8 Check for consistency in Flows from each controller - PASS (tick)
  • 5.4 9 Get the OF Table entries - No Result (warning)
  • 5.5 Create TestONTopology object 10 Start continuous pings - No Result (warning)
  • 5.6 11 Collecting topology information from ONOS - No Result (warning)
  • 5.12 Host view is consistent across ONOS nodes - PASS (tick)
  • 5.13 Each host has an IP address - PASS (tick)
  • 5.14 Cluster view is consistent across ONOS nodes - PASS (tick)
  • 5.15 Cluster view correct across ONOS nodes - PASS (tick)
  • 5.7 16 Comparing ONOS topology to MN - PASS (tick)
  • 5.17 Device information is correct - PASS (tick)
  • 5.18 Links are correct - PASS (tick)
  • 5.19 Hosts are correct - PASS (tick)

Case 14: Start Leadership Election app - PASS

  • 14.1 Install leadership election app - PASS (tick)
  • 14.2 Run for election on each node - PASS (tick)
  • 14.3 Active node was elected leader? - PASS (tick)

Case 15:

...

Check that Leadership Election is still functional - PASS

  • 15.1 Run for election on each node - PASS (tick)
  • 15.2 Check that each node shows the same leader and candidates - PASS (tick)
  • 15.3 Find current leader and withdraw - PASS (tick)
  • 15.4 Check that a new node was elected leader - PASS (tick)
  • 15.5 Check that that new leader was the candidate of old leader - PASS (tick)
  • 15.6 Run for election on old leader( just so everyone is in the hat ) - PASS (tick)
  • 15.7 Check that oldLeader is a candidate, and leader if only 1 node - No Result (warning)

Case 16: Install Primitives app -

...

PASS

  • 16.1 Install Primitives app - PASS (tick)

Case 17: Check for basic functionality with distributed primitives -

...

FAIL

Test the methods of the distributed primitives (counters and sets) throught the cli

  • 17.1 Increment and then get a default counter on each node - PASS (tick)
  • 17.2 Increment and get an in memory Get then Increment a default counter on each node - PASS (tick)
  • 17.3 Check counters are consistant across nodes Counters we added have the correct values - PASS (tick)
  • 17.4 Add -8 to then get a default counter on each node - PASS (tick)
  • 17.5 Add 5 to then get a default counter on each node - PASS (tick)
  • 17.6 Get then add 5 to a default counter on each node - PASS (tick)
  • 17.7 Counters we added have the correct values - PASS (tick)
  • 17.5 8 Distributed Set get - PASS (tick)
  • 17.6 9 Distributed Set size - PASS (tick)
  • 17.7 10 Distributed Set add() - PASS (tick)
  • 17.8 11 Distributed Set addAll() - PASS (tick)
  • 17.9 12 Distributed Set contains() - PASS (tick)
  • 17.10 13 Distributed Set containsAll() - PASS (tick)
  • 17.11 14 Distributed Set remove() - PASS (tick)
  • 17.12 15 Distributed Set removeAll() - PASS (tick)
  • 17.13 16 Distributed Set addAll() - PASS (tick)
  • 17.14 17 Distributed Set clear() - PASS (tick)
  • 17.15 18 Distributed Set addAll() - PASS (tick)
  • 17.16 19 Distributed Set retain() - FAIL (error)
    • Set retain was incorrect
  • 17.20 Partitioned Transactional maps put - PASS (tick)
  • 17.21 Partitioned Transactional maps get - PASS (tick)
  • 17.22 Get the value of a new value - PASS (tick)
  • 17.23 Atomic Value set() - PASS (tick)
  • 17.24 Get the value after set() - PASS (tick)
  • 17.25 Atomic Value compareAndSet() - PASS (tick)
  • 17.26 Get the value after compareAndSet() - PASS (tick)
  • 17.27 Atomic Value getAndSet() - PASS (tick)
  • 17.28 Get the value after getAndSet() - PASS (tick)
  • 17.29 Atomic Value destory() - PASS (tick)
  • 17.30 Get the value after destroy() - PASS (tick)
  • 17.31 Work Queue add() - PASS (tick)
  • 17.32 Check the work queue stats - PASS (tick)
  • 17.33 Work Queue addMultiple() - PASS (tick)
  • 17.34 Check the work queue stats - PASS (tick)
  • 17.35 Work Queue takeAndComplete() 1 - PASS (tick)
  • 17.36 Check the work queue stats - PASS (tick)
  • 17.37 Work Queue takeAndComplete() 2 - PASS (tick)
  • 17.38 Check the work queue stats - PASS (tick)
  • 17.39 Work Queue destroy() - PASS (tick)
  • 17.40 Check the work queue stats - PASS (tick)

Case 6:

...

Restart ONOS node - PASS

Killing ONOS process and restart cli sessions once onos is up.

  • 6.1 Checking ONOS Logs for errors - No Result (warning)
  • 6.2 Killing ONOS processes - PASS (tick)
  • 6.3 Checking if ONOS is up yet - PASS (tick)
  • 6.4 Starting ONOS CLI sessions - PASS (tick)

Case 8: Compare ONOS Topology view to Mininet topology -

...

PASS

Compare topology objects between Mininet and ONOS

  • 8.1 Create TestONTopology object - No Result (warning) 8.2 Comparing ONOS topology to MN topology - No Result (warning)PASS (tick)
  • 8.3 Collecting topology information from ONOS 2 Checking ONOS nodes - PASS (tick)

Case 3: Adding host Intents -

...

PASS

Discover hosts by using pingall then assign predetermined host-to-host intents. After installation, check that the intent is distributed to all nodes and the state is INSTALLED

  • 3.1 Install reactive forwarding app - PASS (tick)
  • 3.2 Check app ids - PASS (tick)
  • 3.3 Discovering Hosts( Via pingall for now ) - PASS (tick)
  • 3.4 Uninstall reactive forwarding app - PASS (tick)
  • 3.5 Check app ids - PASS (tick)
  • 3.6 2 Add host intents via cli - PASS (tick)
  • 3.7 Intent Anti-Entropy dispersion - PASS (tick)

Case 7: Running ONOS Constant State Tests -

...

PASS

  • 7.1 Check if switch roles are consistent across all nodes that each switch has a master - PASS (tick)
  • 7.2 Read device roles from ONOS - PASS (tick)
  • 7.3 Check for consistency in roles from each controller - PASS (tick)
  • 7.2 4 Compare switch roles from before failure - PASS (tick)
  • 7.3 5 Get the intents and compare across all nodes from each controller - PASS (tick)
  • 7.4 Get the OF Table entries and compare to before component failure - FAIL (error)

...

  • 6 Check for consistency in Intents from each controller - PASS (tick)

Case 4: Verify connectivity by sending traffic across Intents - PASS

Ping across added host intents to check functionality and check the state of the intent

  • 4.1 Check Intent state - PASS (tick)
  • 4.2 Ping across added host intents - PASS (tick)
  • 4.3 Check leadership of topics - PASS (tick)
  • 4.4 Wait a minute then ping again - PASS (tick)

Case 15: Check that Leadership Election is still functional -

...

PASS

  • 15.1 Run for election on each node - PASS (tick)
  • 15.2 Check that each node shows the same leader and candidates - PASS (tick)
  • 15.3 Find current leader and withdraw - FAIL (error)PASS (tick)
  • 15.4 Check that a new node was elected leader - PASS (tick)
  • 15.2 Make sure new leader is elected - FAIL (error)5 Check that that new leader was the candidate of old leader - PASS (tick)
  • 15.3 6 Run for election on old leader( just so everyone is in the hat ) - FAIL (error)PASS (tick)
  • 15.7 Check that oldLeader is a candidate, and leader if only 1 node - No Result (warning)

Case 17: Check for basic functionality with distributed primitives -

...

FAIL

Test the methods of the distributed primitives (counters and sets) throught the cli

  • 17.1 Increment and then get a default counter on each node - PASS (tick)
  • 17.2 Increment and get an in memory Get then Increment a default counter on each node - PASS (tick)
  • 17.3 Check counters are consistant across nodes Counters we added have the correct values - PASS (tick)
  • 17.4 Add -8 to then get a default counter on each node - PASS (tick)
  • 17.5 Add 5 to then get a default counter on each node - PASS (tick)
  • 17.6 Get then add 5 to a default counter on each node - PASS (tick)
  • 17.7 Counters we added have the correct values - PASS (tick)
  • 17.5 8 Distributed Set get - PASS (tick)FAIL (error)
    • Set elements are incorrect
  • 17.6 9 Distributed Set size - PASS (tick)FAIL (error)
    • Set sizes are incorrect
  • 17.7 10 Distributed Set add() - PASS (tick)
  • 17.8 11 Distributed Set addAll() - PASS (tick)
  • 17.9 12 Distributed Set contains() - PASS (tick)
  • 17.10 13 Distributed Set containsAll() - PASS (tick)
  • 17.11 14 Distributed Set remove() - PASS (tick)
  • 17.12 15 Distributed Set removeAll() - PASS (tick)
  • 17.13 16 Distributed Set addAll() - PASS (tick)
  • 17.14 17 Distributed Set clear() - PASS (tick)
  • 17.15 18 Distributed Set addAll() - PASS (tick)
  • 17.16 Distributed Set retain() - PASS (tick)19 Distributed Set retain() - FAIL (error)
    • Set retain was incorrect
  • 17.20 Partitioned Transactional maps put - PASS (tick)
  • 17.21 Partitioned Transactional maps get - PASS (tick)
  • 17.22 Get the value of a new value - PASS (tick)
  • 17.23 Atomic Value set() - PASS (tick)
  • 17.24 Get the value after set() - PASS (tick)
  • 17.25 Atomic Value compareAndSet() - PASS (tick)
  • 17.26 Get the value after compareAndSet() - PASS (tick)
  • 17.27 Atomic Value getAndSet() - PASS (tick)
  • 17.28 Get the value after getAndSet() - PASS (tick)
  • 17.29 Atomic Value destory() - PASS (tick)
  • 17.30 Get the value after destroy() - PASS (tick)
  • 17.31 Work Queue add() - PASS (tick)
  • 17.32 Check the work queue stats - PASS (tick)
  • 17.33 Work Queue addMultiple() - PASS (tick)
  • 17.34 Check the work queue stats - PASS (tick)
  • 17.35 Work Queue takeAndComplete() 1 - PASS (tick)
  • 17.36 Check the work queue stats - PASS (tick)
  • 17.37 Work Queue takeAndComplete() 2 - PASS (tick)
  • 17.38 Check the work queue stats - PASS (tick)
  • 17.39 Work Queue destroy() - PASS (tick)
  • 17.40 Check the work queue stats - PASS (tick)

Case 9: Turn off a link to ensure that Link Discovery is working properly -

...

PASS

  • 9.1 Kill Link between s28 and s3 and s28 - PASS (tick)

Case 8: Compare ONOS Topology view to Mininet topology -

...

PASS

Compare topology objects between Mininet and ONOS

  • 8.1 Create TestONTopology object - No Result (warning) 8.2 Comparing ONOS topology to MN topology - No Result (warning)PASS (tick)
  • 8.3 Collecting topology information from ONOS 2 Checking ONOS nodes - PASS (tick)

Case 4: Verify connectivity by sending traffic across Intents - PASS

Ping across added host intents to check functionality and check the state of the intent

  • 4.1 Check Intent state - PASS (tick)
  • 4.2 Ping across added host intents -

...

  • PASS (tick)
  • 4.3 Check leadership of topics - PASS (tick)
  • 4.4 Wait a minute then ping again - PASS (tick)

Case 10: Restore a link to ensure that Link Discovery is working properly -

...

PASS

  • 10.1 Bring link between s28 and s3 and s28 back up - PASS (tick)

Case 8: Compare ONOS Topology view to Mininet topology -

...

PASS

Compare topology objects between Mininet and ONOS

  • 8.1 Create TestONTopology object - No Result (warning) 8.2 Comparing ONOS topology to MN topology - No Result (warning)PASS (tick)
  • 8.3 Collecting topology information from ONOS 2 Checking ONOS nodes - PASS (tick)

Case 4: Verify connectivity by sending traffic across Intents - PASS

Ping across added host intents to check functionality and check the state of the intent

  • 4.1 Check Intent state - PASS (tick)
  • 4.2 Ping across added host intents

...

  • - PASS (tick)
  • 4.3 Check leadership of topics - PASS (tick)
  • 4.4 Wait a minute then ping again - PASS (tick)

Case 11: Killing a switch to ensure it is discovered correctly -

...

PASS

  • 11.1 Kill s5 - PASS (tick)

Case 8: Compare ONOS Topology view to Mininet topology -

...

PASS

Compare topology objects between Mininet and ONOS

  • 8.1 Create TestONTopology object - No Result (warning) 8.2 Comparing ONOS topology to MN topology - No Result (warning)PASS (tick)
  • 8.3 Collecting topology information from ONOS 2 Checking ONOS nodes - PASS (tick)

Case 4: Verify connectivity by sending traffic across Intents - PASS

Ping across added host intents

...

to check functionality and check the state of the intent

  • 4.1 Check Intent state - PASS (tick)
  • 4.2 Ping across added host intents - PASS (tick)
  • 4.3 Check leadership of topics - PASS (tick)
  • 4.4 Wait a minute then ping again - PASS (tick)

Case 12: Adding a switch to ensure it is discovered correctly -

...

PASS

  • 12.1 Add back s5 - PASS (tick)

Case 8: Compare ONOS Topology view to Mininet topology -

...

PASS

Compare topology objects between Mininet and ONOS

  • 8.1 Create TestONTopology object - No Result (warning) 8.2 Comparing ONOS topology to MN topology - No Result (warning)PASS (tick)
  • 8.3 Collecting topology information from ONOS 2 Checking ONOS nodes - PASS (tick)

Case 4: Verify connectivity by sending traffic across Intents - PASS

Ping across added host intents

...

to check functionality and check the state of the intent

  • 4.1 Check Intent state - PASS (tick)
  • 4.2 Ping across added host intents - PASS (tick)
  • 4.3 Check leadership of topics - PASS (tick)
  • 4.4 Wait a minute then ping again - PASS (tick)

Case 13: Test Cleanup -

...

PASS

  • 13.1 Killing tcpdumps - No Result (warning)Checking raft log size - PASS (tick)
  • 13.2 Copying MN pcap and ONOS log files to test station Killing tcpdumps - No Result (warning)
  • 13.3 Stopping Mininet - No Result (warning) 13.4 Checking ONOS Logs for errors - No Result (warning)
  • 13.5 Packing and rotating pcap archives 4 Stopping Mininet - PASS (tick)