def test_preflight_check_failed(self): import VMBuilder from VMBuilder.plugins.ubuntu.distro import Ubuntu from VMBuilder.exception import VMBuilderUserError vm = VMBuilder.VM() vm.suite = 'foo' ubuntu = Ubuntu(vm) self.assertRaises(VMBuilderUserError, ubuntu.preflight_check)
def run(self): try: next = False conf = None for val in sys.argv: if (val == '-c') | (val == '--config'): next = True elif next: conf = val break vm = VMBuilder.VM(conf) vm.register_setting('--version', action='callback', callback=self.versioninfo, callback_kwargs={ 'vm' : vm }, help='Show version information') vm.register_setting('--rootsize', metavar='SIZE', default=4096, help='Size (in MB) of the root filesystem [default: %default]') vm.register_setting('--optsize', metavar='SIZE', default=0, help='Size (in MB) of the /opt filesystem. If not set, no /opt filesystem will be added.') vm.register_setting('--swapsize', metavar='SIZE', default=1024, help='Size (in MB) of the swap partition [default: %default]') vm.register_setting('--raw', metavar='PATH', type='string', help="Specify a file (or block device) to as first disk image.") vm.register_setting('--part', metavar='PATH', type='string', help="Allows to specify a partition table in PATH each line of partfile should specify (root first): \n mountpoint size \none per line, separated by space, where size is in megabytes. You can have up to 4 virtual disks, a new disk starts on a line containing only '---'. ie: \n root 2000 \n /boot 512 \n swap 1000 \n --- \n /var 8000 \n /var/log 2000") self.set_usage(vm) vm.optparser.disable_interspersed_args() (foo, args) = vm.optparser.parse_args() self.handle_args(vm, args) vm.optparser.enable_interspersed_args() for opt in vm.optparser.option_list + sum([grp.option_list for grp in vm.optparser.option_groups], []): if len(opt._long_opts) > 1 or (opt.action == 'store' and opt._long_opts[0][2:] != opt.dest): opt.help += " Config option: %s" % opt.dest (settings, args) = vm.optparser.parse_args(values=optparse.Values()) for (k,v) in settings.__dict__.iteritems(): setattr(vm, k, v) self.set_disk_layout(vm) vm.create() except VMBuilder.VMBuilderUserError, e: print >> sys.stderr, e