-# Copyright (c) Citrix Systems 2008. All rights reserved.
-# xsconsole is proprietary software.
+# Copyright (c) 2007-2011 Citrix Systems Inc.
+# Copyright (c) 2009,2010,2011,2012 Nicira, Inc.
#
-# Xen, the Xen logo, XenCenter, XenMotion are trademarks or registered
-# trademarks of Citrix Systems, Inc., in the United States and other
-# countries.
-
-# Copyright (c) 2009, 2010 Nicira Networks.
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; version 2 only.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
from XSConsoleLog import *
@staticmethod
def Get(action):
try:
- arg = [vsctl, "-vANY:console:emer"] + action.split()
+ arg = [vsctl, "--timeout=30", "-vconsole:off"] + action.split()
output = ShellPipe(arg).Stdout()
except StandardError, e:
XSLogError("config retrieval error: " + str(e))
self.xs_version = data.host.software_version.product_version('')
pool = data.GetPoolForThisHost()
if pool is not None:
- if self.xs_version == "5.5.0":
- self.controller = pool.get("other_config", {}).get("vSwitchController", "")
- else:
- self.controller = pool.get("vswitch_controller", "")
+ self.controller = pool.get("vswitch_controller", "")
else:
self.controller = ""
lambda: self.syncController()),
# ChoiceDef(Lang("Restart ovs-vswitchd"),
# lambda: self.restartService("vswitch")),
-# ChoiceDef(Lang("Restart ovs-brcompatd"),
-# lambda: self.restartService("vswitch-brcompatd"))
]
self.menu = Menu(self, None, Lang("Configure Open vSwitch"), choiceDefs)
if len(pools) > 1:
XSLogFatal(Lang("More than one pool for host."))
return
- if self.xs_version == "5.5.0":
- key = "vSwitchController"
- session.xenapi.pool.remove_from_other_config(pools[0], key)
- if value != None:
- session.xenapi.pool.add_to_other_config(pools[0], key, value)
- else:
- session.xenapi.pool.set_vswitch_controller(value)
+ session.xenapi.pool.set_vswitch_controller(value)
Data.Inst().Update()
def _updateActiveServers(self, session):
pool = data.GetPoolForThisHost()
if pool is not None:
- if (xs_version == "5.5.0"):
- dbController = pool.get("other_config", {}).get("vSwitchController", "")
- else:
- dbController = pool.get("vswitch_controller", "")
+ dbController = pool.get("vswitch_controller", "")
else:
dbController = ""
if dbController == "":
dbController = Lang("<None>")
inPane.AddStatusField(Lang("Controller (config)", 20), dbController)
- controller = VSwitchConfig.Get("get Open_vSwitch . managers")
- controller = controller.strip('[]"')
+ controller = VSwitchConfig.Get("get-manager")
if controller == "":
controller = Lang("<None>")
inPane.AddStatusField(Lang("ovsdb-server status", 20),
VSwitchService.Inst("openvswitch", "ovsdb-server").status())
- # Only XenServer 5.5.0 runs ovs-brcompatd
- if (xs_version == "5.5.0"):
- inPane.AddStatusField(Lang("ovs-brcompatd status", 20),
- VSwitchService.Inst("openvswitch", "ovs-brcompatd").status())
-
inPane.AddKeyHelpField( {
Lang("<Enter>") : Lang("Reconfigure"),
Lang("<F5>") : Lang("Refresh")