Parameterize build script filename
diff --git a/onos-build-base.py b/onos-build-base.py
index fef1f27..4672fdf 100755
--- a/onos-build-base.py
+++ b/onos-build-base.py
@@ -20,13 +20,13 @@
# Import required functions from the Mininet build script
from build import bootAndRun, Prompt, OVFOSNameID, generateOVF, log, build, run
-def installONOS( vm, prompt=Prompt ):
+def install( vm, scriptFileName='install-base.sh', prompt=Prompt ):
# start with sendline
#TODO consider resizing the HDD
- url = 'https://gerrit.onosproject.org/gitweb?p=onos-vm.git;a=blob_plain;hb=refs/heads/onos-tutorial-1.1;f=install-base.sh'
- vm.sendline( ' wget -O install-base.sh "%s" | bash' % url ) # space prefix is used to avoid entry in history
+ url = 'https://gerrit.onosproject.org/gitweb?p=onos-vm.git;a=blob_plain;hb=refs/heads/onos-tutorial-1.1;f=%s' % scriptFileName
+ vm.sendline( ' wget -O %s "%s" | bash' % (scriptFileName, url) ) # space prefix is used to avoid entry in history
vm.expect( prompt, timeout=20 )
- vm.sendline( 'bash install-base.sh' )
+ vm.sendline( 'bash %s' % scriptFileName )
vm.expect( prompt, timeout=3600 )
@@ -36,13 +36,12 @@
assert 'disk image' in output
return os.stat( vmdk )[ ST_SIZE ]
-def buildBaseVm( image, out, flavor='trusty64server', installMemory=4096, ovfMemory=4096 ):
+def buildBaseVm( image, out, scriptFileName, scflavor='trusty64server', installMemory=4096, ovfMemory=4096 ):
if not image:
- # build VM from flavor
- #build( flavor )
- pass
+ log( '* Error: no image specified' )
+ sys.exit( 1 )
- bootAndRun( image, runFunction=installONOS, memory=installMemory, outputFile=out )
+ bootAndRun( image, runFunction=install, scriptFileName=scriptFileName, memory=installMemory, outputFile=out )
size = vmdk2size( out + '.vmdk' ) # get vmdk size
ovfname = out
@@ -66,11 +65,13 @@
help='archive .ovf and .vmdk into .zip file' )
parser.add_argument( '-o', '--out', required=True,
help='output file for test image (vmdk)' )
+ parser.add_argument( '-s', '--script', required=True,
+ help='Install script filename' )
args = parser.parse_args()
print args
- buildBaseVm( args.image, args.out )
+ buildBaseVm( args.image, args.out, args.script )
if args.zip:
log( '* Generating .zip file' )