2 # -*- coding: utf-8 -*-
4 # This file is part of Karesansui.
6 # Copyright (C) 2009-2010 HDE, Inc.
8 # This program is free software; you can redistribute it and/or
9 # modify it under the terms of the GNU General Public License
10 # as published by the Free Software Foundation; either version 2
11 # of the License, or (at your option) any later version.
17 from optparse import OptionParser
19 from ksscommand import KssCommand, KssCommandException, KssCommandOptException
25 from karesansui import __version__
26 from karesansui.lib.virt.virt import KaresansuiVirtConnection, KaresansuiVirtException
27 from karesansui.lib.utils import load_locale
29 print >>sys.stderr, "[Error] karesansui package was not found."
34 usage = '%prog [options]'
37 optp = OptionParser(usage=usage, version=__version__)
38 optp.add_option('-n', '--name', dest='name', help=_('Network name'))
39 return optp.parse_args()
43 KssCommandOptException('ERROR: %s option is required.' % '-n or --name')
45 class StartNetwork(KssCommand):
48 (opts, args) = getopts()
52 conn = KaresansuiVirtConnection(readonly=False)
55 active_networks = conn.list_active_network()
56 inactive_networks = conn.list_inactive_network()
57 if opts.name in active_networks or opts.name in inactive_networks:
59 conn.start_network(opts.name)
62 if opts.name in conn.list_active_network():
63 self.logger.info('Started network. - net=%s' % (opts.name))
64 print >>sys.stderr, _('Started network. - net=%s') % (opts.name)
67 raise KssCommandException('network not found. - net=%s' % (opts.name))
73 if __name__ == "__main__":
74 target = StartNetwork()
75 sys.exit(target.run())