Allow use of onos docker for existing tests
- Allow Cluster to pull/build onos docker
- Connect clidriver to cli runnning in docker
- Some changes for debugability in components
- To use, set the useDocker and diffCliHosts tags in the cluster
component to True, then define parameters in the params file
- Update all SR Stratum tests to use the tost docker image
- NOTE: Since the tost-onos image doesn't have openflow installe, we are
currently only using docker for the bmv2 and tofino switches
Change-Id: If900b0bdbf9a41b8885c692ccba18a3b1bc580cc
diff --git a/TestON/drivers/common/cli/emulator/mininetclidriver.py b/TestON/drivers/common/cli/emulator/mininetclidriver.py
index 682760a..47123a4 100644
--- a/TestON/drivers/common/cli/emulator/mininetclidriver.py
+++ b/TestON/drivers/common/cli/emulator/mininetclidriver.py
@@ -163,7 +163,7 @@
main.log.info( self.name + ": Sending sudo password" )
self.handle.sendline( self.pwd )
i = self.handle.expect( [ '%s:' % self.user_name,
- self.prompt,
+ self.Prompt(),
pexpect.EOF,
pexpect.TIMEOUT ],
timeout )
@@ -210,12 +210,12 @@
cmdString += mnCmd
# Send the command and check if network started
self.handle.sendline( "" )
- self.handle.expect( self.prompt )
+ self.handle.expect( self.Prompt() )
main.log.info( "Sending '" + cmdString + "' to " + self.name )
self.handle.sendline( cmdString )
startTime = time.time()
while True:
- i = self.handle.expect( [ 'mininet>',
+ i = self.handle.expect( [ self.mnPrompt,
'Exception|Error',
'\*\*\*',
pexpect.EOF,
@@ -228,7 +228,7 @@
elif i == 1:
response = str( self.handle.before +
self.handle.after )
- self.handle.expect( self.prompt )
+ self.handle.expect( self.Prompt() )
response += str( self.handle.before +
self.handle.after )
main.log.error(
@@ -1255,7 +1255,7 @@
try:
response = self.execute(
cmd='dump',
- prompt='mininet>',
+ prompt=self.mnPrompt,
timeout=10 )
except pexpect.EOF:
main.log.error( self.name + ": EOF exception found" )
@@ -1271,7 +1271,7 @@
try:
response = self.execute(
cmd='intfs',
- prompt='mininet>',
+ prompt=self.mnPrompt,
timeout=10 )
except pexpect.EOF:
main.log.error( self.name + ": EOF exception found" )
@@ -1285,7 +1285,7 @@
def net( self ):
main.log.info( self.name + ": List network connections" )
try:
- response = self.execute( cmd='net', prompt='mininet>', timeout=10 )
+ response = self.execute( cmd='net', prompt=self.mnPrompt, timeout=10 )
except pexpect.EOF:
main.log.error( self.name + ": EOF exception found" )
main.log.error( self.name + ": " + self.handle.before )
@@ -1298,7 +1298,7 @@
def links( self, timeout=1000 ):
main.log.info( self.name + ": List network links" )
try:
- response = self.execute( cmd='links', prompt='mininet>',
+ response = self.execute( cmd='links', prompt=self.mnPrompt,
timeout=timeout )
except pexpect.EOF:
main.log.error( self.name + ": EOF exception found" )
@@ -1506,7 +1506,7 @@
try:
response = self.execute(
cmd='nodes',
- prompt='mininet>',
+ prompt=self.mnPrompt,
timeout=10 )
except pexpect.EOF:
main.log.error( self.name + ": EOF exception found" )
@@ -1522,7 +1522,7 @@
try:
response = self.execute(
cmd='pingpair',
- prompt='mininet>',
+ prompt=self.mnPrompt,
timeout=20 )
except pexpect.EOF:
main.log.error( self.name + ": EOF exception found" )
@@ -2253,7 +2253,7 @@
"""
try:
self.handle.sendline( '' )
- i = self.handle.expect( [ 'mininet>', self.hostPrompt, pexpect.EOF, pexpect.TIMEOUT ],
+ i = self.handle.expect( [ self.mnPrompt, self.hostPrompt, pexpect.EOF, pexpect.TIMEOUT ],
timeout=2 )
response = main.TRUE
if i == 0:
@@ -2292,7 +2292,7 @@
try:
self.handle.sendline( "" )
i = self.handle.expect( [ self.mnPrompt,
- self.bashPrompt,
+ self.Prompt(),
pexpect.EOF,
pexpect.TIMEOUT ],
timeout )
@@ -2301,8 +2301,8 @@
startTime = time.time()
self.handle.sendline( "exit" )
exitRet = 1
- while not exitRet:
- exitRet = self.handle.expect( [ self.bashprompt,
+ while exitRet:
+ exitRet = self.handle.expect( [ self.Prompt(),
"Traceback",
"AssertionError",
self.mnPrompt ],
@@ -2315,6 +2315,7 @@
cmd = "sudo " + cmd
self.handle.sendline( cmd )
response = main.TRUE
+ self.handle.expect( self.Prompt() )
elif i == 1:
main.log.info( " Mininet trying to exit while not " +
@@ -2327,21 +2328,21 @@
"TIMEOUT" )
self.handle.sendline( "" )
- self.handle.expect( self.prompt )
+ self.handle.expect( self.Prompt() )
cmd = "killall -9 dhclient dhcpd zebra bgpd"
if self.sudoRequired:
cmd = "sudo " + cmd
self.handle.sendline( cmd )
- self.handle.expect( self.prompt )
+ self.handle.expect( self.Prompt() )
if fileName:
self.handle.sendline( "" )
- self.handle.expect( self.prompt )
+ self.handle.expect( self.Prompt() )
cmd = "kill -9 \`ps -ef | grep \"" + fileName + "\" | grep -v grep | awk '{print $2}'\`"
if self.sudoRequired:
cmd = "sudo " + cmd
self.handle.sendline( cmd )
- self.handle.expect( self.prompt )
+ self.handle.expect( self.Prompt() )
except pexpect.TIMEOUT:
main.log.error( self.name + ": TIMEOUT exception found" )
main.log.error( self.name + ": " + self.handle.before )
@@ -3898,7 +3899,7 @@
host = self.name
if self.mExecDir:
self.handle.sendline( "cd %s" % self.mExecDir )
- self.handle.expect( self.prompt )
+ self.handle.expect( self.Prompt() )
self.handle.sendline( self.home + "/util/m " + host )
if self.hostHome: