use a single mininet instance in bindpy

This commit is contained in:
Cody Burkard
2014-07-01 14:51:07 -07:00
parent af2f67d98c
commit 40a4a25dd8
+13 -29
View File
@@ -29,10 +29,9 @@ have a temporary private directory mounted on "/var/log".
[ ( '/var/run', '/tmp/%(name)s/var/run' ), '/var/log' ] [ ( '/var/run', '/tmp/%(name)s/var/run' ), '/var/log' ]
This example runs TWO mininet instances, one after the other. This example has both persistent directories mounted on '/var/log'
The first mounts persistent private directories on /var/log and and '/var/run'. It also has a temporary private directory mounted
/var/run. The second mounts temporary private directories on the same on '/var/mn'
directories.
""" """
from mininet.net import Mininet from mininet.net import Mininet
@@ -44,45 +43,30 @@ from mininet.log import setLogLevel, info, debug
from functools import partial from functools import partial
# Persistent directory sample usage # Sample usage
def testPersistentPrivateDirs(): def testHostWithPrivateDirs():
"Test bind mounts" "Test bind mounts"
topo = SingleSwitchTopo( 10 ) topo = SingleSwitchTopo( 10 )
privateDirs = [ ( '/var/log', '/tmp/%(name)s/var/log' ), privateDirs = [ ( '/var/log', '/tmp/%(name)s/var/log' ),
( '/var/run', '/tmp/%(name)s/var/run' ) ] ( '/var/run', '/tmp/%(name)s/var/run' ),
'/var/mn' ]
host = partial( HostWithPrivateDirs, host = partial( HostWithPrivateDirs,
privateDirs=privateDirs ) privateDirs=privateDirs )
net = Mininet( topo=topo, host=host ) net = Mininet( topo=topo, host=host )
net.start() net.start()
info( 'Private Directories: [ ' ) directories = []
for directory in privateDirs: for directory in privateDirs:
if isinstance( directory, tuple ): directories.append( directory[ 0 ]
info( '%s, ' %directory[ 0 ] ) if isinstance( directory, tuple )
else: else directory )
info( '%s, ' %directory ) info( 'Private Directories:', directories, '\n' )
info( ']\n' )
CLI( net )
net.stop()
# Temporary directory sample usage
def testTempPrivateDirs():
"test bind mounts with temporary directories"
topo = SingleSwitchTopo( 10 )
privateDirs = [ '/var/log', '/var/run' ]
host = partial( HostWithPrivateDirs,
privateDirs=privateDirs )
net = Mininet( topo=topo, host=host )
net.start()
info( 'Private Directories: ', privateDirs, '\n' )
CLI( net ) CLI( net )
net.stop() net.stop()
if __name__ == '__main__': if __name__ == '__main__':
setLogLevel( 'info' ) setLogLevel( 'info' )
testPersistentPrivateDirs() testHostWithPrivateDirs()
testTempPrivateDirs()
info( 'Done.\n') info( 'Done.\n')