From fb51cdaca3189c20aaff1c60599a70b4f74f6c2d Mon Sep 17 00:00:00 2001 From: Brian O'Connor Date: Thu, 12 Dec 2013 18:38:20 -0800 Subject: [PATCH] adding output file to build.py --- util/vm/build.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/util/vm/build.py b/util/vm/build.py index 6f8b521..dda4b93 100755 --- a/util/vm/build.py +++ b/util/vm/build.py @@ -765,7 +765,7 @@ def getMininetVersion( vm ): def bootAndRunTests( image, tests=None, pre='', post='', prompt=Prompt, - memory=1024 ): + memory=1024, outputFile=None ): """Boot and test VM tests: list of tests to run pre: command line to run in VM before tests @@ -802,6 +802,9 @@ def bootAndRunTests( image, tests=None, pre='', post='', prompt=Prompt, vm.sendline( 'sudo shutdown -h now ' ) log( '* Waiting for shutdown' ) vm.wait() + if outputFile: + log( '* Saving temporary image to %s' % outputFile ) + convert( cow, outputFile ) log( '* Removing temporary dir', tmpdir ) srun( 'rm -rf ' + tmpdir ) elapsed = time() - bootTestStart @@ -868,6 +871,8 @@ def parseArgs(): help='VM flavor(s) to build (e.g. raring32server)' ) parser.add_argument( '-z', '--zip', action='store_true', help='archive .ovf and .vmdk into .zip file' ) + parser.add_argument( '-o', '--out', + help='output file for test image (vmdk)' ) args = parser.parse_args() if args.depend: depend() @@ -900,7 +905,8 @@ def parseArgs(): exit( 1 ) for image in args.image: bootAndRunTests( image, tests=args.test, pre=args.run, - post=args.post, memory=args.memory) + post=args.post, memory=args.memory, + outputFile=args.out ) if not ( args.depend or args.list or args.clean or args.flavor or args.image ): parser.print_help()