#!/bin/python ## © University of Southampton IT Innovation Centre, 2017 ## ## Copyright in this software belongs to University of Southampton ## IT Innovation Centre of Gamma House, Enterprise Road, ## Chilworth Science Park, Southampton, SO16 7NS, UK. ## ## This software may not be used, sold, licensed, transferred, copied ## or reproduced in whole or in part in any manner or form or in or ## on any media by any person other than in accordance with the terms ## of the Licence Agreement supplied with the software, or otherwise ## without the prior written consent of the copyright owners. ## ## This software is distributed WITHOUT ANY WARRANTY, without even the ## implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR ## PURPOSE, except where stated in the Licence Agreement supplied with ## the software. ## ## Created By : Michael Boniface ## Created Date : 28-03-2018 ## Created for Project : FLAME import subprocess import sys proc = subprocess.Popen(['vboxmanage', 'list', 'vms'], stdout=subprocess.PIPE, shell=True) out, err = proc.communicate() if proc.returncode != 0: print("Could list virtualbox vms") sys.exit() vms = out.strip().decode('ascii') lines = vms.split("\n") for vm in lines: vm_id = vm.split()[0].replace('"', '') print("Removing VM: {0}".format(vm_id)) proc = subprocess.Popen(['vboxmanage', 'controlvm', vm_id, 'poweroff'], stdout=subprocess.PIPE, shell=True) out, err = proc.communicate() if proc.returncode != 0: print("Error power off VM: {0}, {1}, {2}".format(vm_id, out, err)) proc = subprocess.Popen(['vboxmanage', 'unregistervm', vm_id, '--delete'], stdout=subprocess.PIPE, shell=True) out, err = proc.communicate() if proc.returncode != 0: print("Error unregister VM: {0}, {1}, {2}".format(vm_id, out, err))