本文整理汇总了Python中vdsm.utils.tobool函数的典型用法代码示例。如果您正苦于以下问题:Python tobool函数的具体用法?Python tobool怎么用?Python tobool使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了tobool函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: __init__
def __init__(self, vm, dst='', dstparams='',
mode=MODE_REMOTE, method=METHOD_ONLINE,
tunneled=False, dstqemu='', abortOnError=False,
compressed=False, autoConverge=False, **kwargs):
self.log = vm.log
self._vm = vm
self._dst = dst
self._mode = mode
if method != METHOD_ONLINE:
self.log.warning(
'migration method %s is deprecated, forced to "online"',
method)
self._dstparams = dstparams
self._machineParams = {}
self._tunneled = utils.tobool(tunneled)
self._abortOnError = utils.tobool(abortOnError)
self._dstqemu = dstqemu
self._downtime = kwargs.get('downtime') or \
config.get('vars', 'migration_downtime')
self._autoConverge = autoConverge
self._compressed = compressed
self.status = {
'status': {
'code': 0,
'message': 'Migration in progress'}}
self._progress = 0
threading.Thread.__init__(self)
self._preparingMigrationEvt = True
self._migrationCanceledEvt = False
self._monitorThread = None
开发者ID:txomon,项目名称:vdsm,代码行数:30,代码来源:migration.py
示例2: appendFeatures
def appendFeatures(self):
"""
Add machine features to domain xml.
Currently only
<features>
<acpi/>
<features/>
for hyperv:
<features>
<acpi/>
<hyperv>
<relaxed state='on'/>
</hyperv>
<features/>
"""
if (utils.tobool(self.conf.get('acpiEnable', 'true')) or
utils.tobool(self.conf.get('hypervEnable', 'false'))):
features = self.dom.appendChildWithArgs('features')
if utils.tobool(self.conf.get('acpiEnable', 'true')):
features.appendChildWithArgs('acpi')
if utils.tobool(self.conf.get('hypervEnable', 'false')):
hyperv = Element('hyperv')
features.appendChild(hyperv)
hyperv.appendChildWithArgs('relaxed', state='on')
开发者ID:mpavlase,项目名称:vdsm,代码行数:30,代码来源:vmxml.py
示例3: __init__
def __init__(self, vm, dst='', dstparams='',
mode=MODE_REMOTE, method=METHOD_ONLINE,
tunneled=False, dstqemu='', abortOnError=False,
consoleAddress=None, compressed=False,
autoConverge=False, **kwargs):
self.log = vm.log
self._vm = vm
self._dst = dst
self._mode = mode
if method != METHOD_ONLINE:
self.log.warning(
'migration method %s is deprecated, forced to "online"',
method)
self._dstparams = dstparams
self._machineParams = {}
self._tunneled = utils.tobool(tunneled)
self._abortOnError = utils.tobool(abortOnError)
self._consoleAddress = consoleAddress
self._dstqemu = dstqemu
self._downtime = kwargs.get('downtime') or \
config.get('vars', 'migration_downtime')
self._maxBandwidth = int(
kwargs.get('maxBandwidth') or
config.getint('vars', 'migration_max_bandwidth')
)
self._autoConverge = autoConverge
self._compressed = compressed
self.status = {
'status': {
'code': 0,
'message': 'Migration in progress'}}
self._progress = 0
threading.Thread.__init__(self)
self._preparingMigrationEvt = True
self._migrationCanceledEvt = False
self._monitorThread = None
self._destServer = None
progress_timeout = config.getint('vars', 'migration_progress_timeout')
self._convergence_schedule = {
'init': [],
'stalling': [
{
'limit': progress_timeout,
'action': {
'name': CONVERGENCE_SCHEDULE_SET_ABORT,
'params': []
}
}
]
}
self._use_convergence_schedule = False
if 'convergenceSchedule' in kwargs:
self._convergence_schedule = kwargs.get('convergenceSchedule')
self._use_convergence_schedule = True
self.log.debug('convergence schedule set to: %s',
str(self._convergence_schedule))
开发者ID:kanalun,项目名称:vdsm,代码行数:60,代码来源:migration.py
示例4: addNetwork
def addNetwork(network, vlan=None, bonding=None, nics=None, ipaddr=None,
netmask=None, prefix=None, mtu=None, gateway=None,
ipv6addr=None, ipv6gateway=None, force=False,
configurator=None, bondingOptions=None, bridged=True,
_netinfo=None, qosInbound=None, qosOutbound=None, **options):
nics = nics or ()
if _netinfo is None:
_netinfo = netinfo.NetInfo()
bridged = utils.tobool(bridged)
vlan = _vlanToInternalRepresentation(vlan)
if mtu:
mtu = int(mtu)
if prefix:
if netmask:
raise ConfigNetworkError(ne.ERR_BAD_PARAMS,
'Both PREFIX and NETMASK supplied')
else:
try:
netmask = netinfo.prefix2netmask(int(prefix))
except ValueError as ve:
raise ConfigNetworkError(ne.ERR_BAD_ADDR, "Bad prefix: %s" %
ve)
if not utils.tobool(force):
logging.debug('validating network...')
if network in _netinfo.networks:
raise ConfigNetworkError(ne.ERR_USED_BRIDGE,
'Network already exists')
if bonding:
_validateInterNetworkCompatibility(_netinfo, vlan, bonding,
bridged)
else:
for nic in nics:
_validateInterNetworkCompatibility(_netinfo, vlan, nic,
bridged)
logging.info("Adding network %s with vlan=%s, bonding=%s, nics=%s,"
" bondingOptions=%s, mtu=%s, bridged=%s, options=%s",
network, vlan, bonding, nics, bondingOptions,
mtu, bridged, options)
if configurator is None:
configurator = Ifcfg()
bootproto = options.pop('bootproto', None)
defaultRoute = network == constants.MANAGEMENT_NETWORK
netEnt = objectivizeNetwork(network if bridged else None, vlan, bonding,
bondingOptions, nics, mtu, ipaddr, netmask,
gateway, bootproto, ipv6addr, ipv6gateway,
_netinfo=_netinfo, configurator=configurator,
defaultRoute=defaultRoute, **options)
netEnt.configure(**options)
configurator.configureLibvirtNetwork(network, netEnt,
qosInbound=qosInbound,
qosOutbound=qosOutbound)
开发者ID:doronunu,项目名称:vdsm,代码行数:60,代码来源:configNetwork.py
示例5: getXML
def getXML(self):
"""
Create domxml for a graphics framebuffer.
<graphics type='spice' port='5900' tlsPort='5901' autoport='yes'
listen='0' keymap='en-us'
passwdValidTo='1970-01-01T00:00:01'>
<listen type='address' address='0'/>
<clipboard copypaste='no'/>
</graphics>
OR
<graphics type='vnc' port='5900' autoport='yes' listen='0'
keymap='en-us' passwdValidTo='1970-01-01T00:00:01'>
<listen type='address' address='0'/>
</graphics>
"""
graphicsAttrs = {
'type': self.device,
'port': self.port,
'autoport': 'yes'}
if self.device == 'spice':
graphicsAttrs['tlsPort'] = self.tlsPort
if not utils.tobool(self.specParams.get('disableTicketing', False)):
graphicsAttrs['passwd'] = '*****'
graphicsAttrs['passwdValidTo'] = '1970-01-01T00:00:01'
if 'keyMap' in self.specParams:
graphicsAttrs['keymap'] = self.specParams['keyMap']
graphics = vmxml.Element('graphics', **graphicsAttrs)
if not utils.tobool(self.specParams.get('copyPasteEnable', True)):
clipboard = vmxml.Element('clipboard', copypaste='no')
graphics.appendChild(clipboard)
if not utils.tobool(self.specParams.get('fileTransferEnable', True)):
filetransfer = vmxml.Element('filetransfer', enable='no')
graphics.appendChild(filetransfer)
if (self.device == 'spice' and
'spiceSecureChannels' in self.specParams):
for chan in self._getSpiceChannels():
graphics.appendChildWithArgs('channel', name=chan,
mode='secure')
if self.specParams.get('displayNetwork'):
graphics.appendChildWithArgs('listen', type='network',
network=netinfo.LIBVIRT_NET_PREFIX +
self.specParams.get('displayNetwork'))
else:
graphics.setAttrs(listen='0')
return graphics
开发者ID:nickxiao,项目名称:vdsm,代码行数:57,代码来源:graphics.py
示例6: addNetwork
def addNetwork(network, vlan=None, bonding=None, nics=None, ipaddr=None,
netmask=None, prefix=None, mtu=None, gateway=None, force=False,
configurator=None, bondingOptions=None, bridged=True,
_netinfo=None, qosInbound=None, qosOutbound=None, **options):
nics = nics or ()
if _netinfo is None:
_netinfo = netinfo.NetInfo()
bridged = utils.tobool(bridged)
if mtu:
mtu = int(mtu)
if prefix:
if netmask:
raise ConfigNetworkError(ne.ERR_BAD_PARAMS,
'Both PREFIX and NETMASK supplied')
else:
try:
netmask = netinfo.prefix2netmask(int(prefix))
except ValueError as ve:
raise ConfigNetworkError(ne.ERR_BAD_ADDR, "Bad prefix: %s" %
ve)
if not utils.tobool(force):
logging.debug('validating network...')
if network in _netinfo.networks:
raise ConfigNetworkError(ne.ERR_USED_BRIDGE,
'Network already exists')
if bonding:
_validateInterNetworkCompatibility(_netinfo, vlan, bonding,
bridged)
else:
for nic in nics:
_validateInterNetworkCompatibility(_netinfo, vlan, nic,
bridged)
logging.info("Adding network %s with vlan=%s, bonding=%s, nics=%s,"
" bondingOptions=%s, mtu=%s, bridged=%s, options=%s",
network, vlan, bonding, nics, bondingOptions,
mtu, bridged, options)
if configurator is None:
configurator = Ifcfg()
bootproto = options.pop('bootproto', None)
netEnt = objectivizeNetwork(network if bridged else None, vlan, bonding,
bondingOptions, nics, mtu, ipaddr, netmask,
gateway, bootproto, _netinfo, configurator,
**options)
# libvirt net addition must be done before creation so that on dhcp ifup
# the dhcp hook will already see the network as belonging to vdsm.
configurator.configureLibvirtNetwork(network, netEnt,
qosInbound=qosInbound,
qosOutbound=qosOutbound)
netEnt.configure(**options)
开发者ID:hackxay,项目名称:vdsm,代码行数:56,代码来源:configNetwork.py
示例7: delNetwork
def delNetwork(network, force=False, configWriter=None, **options):
_netinfo = NetInfo()
validateBridgeName(network)
if network not in networks().keys():
raise ConfigNetworkError(ne.ERR_BAD_BRIDGE, "Cannot delete network %r: It doesn't exist" % network)
nics, vlan, bonding = _netinfo.getNicsVlanAndBondingForNetwork(network)
bridged = networks()[network]['bridged']
logging.info("Removing network %s with vlan=%s, bonding=%s, nics=%s. options=%s"%(network, vlan, bonding, nics, options))
if not utils.tobool(force):
if bonding:
validateBondingName(bonding)
if set(nics) != set(_netinfo.bondings[bonding]["slaves"]):
raise ConfigNetworkError(ne.ERR_BAD_NIC, 'delNetwork: %s are not all nics enslaved to %s' % (nics, bonding))
if vlan:
#assertVlan(vlan)
validateVlanId(vlan)
if bridged:
assertBridgeClean(network, vlan, bonding, nics)
if configWriter is None:
configWriter = ConfigWriter()
if not utils.tobool(options.get('skipLibvirt', False)):
removeLibvirtNetwork(network)
if bridged:
configWriter.setNewMtu(network)
if network and bridged:
ifdown(network)
subprocess.call([constants.EXT_BRCTL, 'delbr', network])
configWriter.removeBridge(network)
if vlan:
vlandev = (bonding or nics[0]) + '.' + vlan
ifdown(vlandev)
subprocess.call([constants.EXT_VCONFIG, 'rem', vlandev], stderr=subprocess.PIPE)
configWriter.removeVlan(vlan, bonding or nics[0])
if bonding:
if not bridged or not bondingOtherUsers(network, vlan, bonding):
ifdown(bonding)
if not bridged or not bondingOtherUsers(network, vlan, bonding):
configWriter.removeBonding(bonding)
for nic in nics:
if not bridged or not nicOtherUsers(network, vlan, bonding, nic):
ifdown(nic)
if bridged and nicOtherUsers(network, vlan, bonding, nic):
continue
configWriter.removeNic(nic)
开发者ID:ekohl,项目名称:vdsm,代码行数:51,代码来源:configNetwork.py
示例8: _top_dev
def _top_dev(network, attrs):
if utils.tobool(attrs.get('bridged')):
return network
# bridgeless
nics, vlan, _, bonding = netinfo.cache.CachingNetInfo().\
getNicsVlanAndBondingForNetwork(network)
return vlan or bonding or nics[0]
开发者ID:kanalun,项目名称:vdsm,代码行数:7,代码来源:extra_ipv4_addrs.py
示例9: appendClock
def appendClock(self):
"""
Add <clock> element to domain:
<clock offset="variable" adjustment="-3600">
<timer name="rtc" tickpolicy="catchup">
</clock>
for hyperv:
<clock offset="variable" adjustment="-3600">
<timer name="hypervclock" tickpolicy="catchup">
</clock>
"""
if utils.tobool(self.conf.get('hypervEnable', 'false')):
clockName = 'hypervclock'
else:
clockName = 'rtc'
m = Element('clock', offset='variable',
adjustment=str(self.conf.get('timeOffset', 0)))
m.appendChildWithArgs('timer', name=clockName, tickpolicy='catchup')
m.appendChildWithArgs('timer', name='pit', tickpolicy='delay')
if self.arch == caps.Architecture.X86_64:
m.appendChildWithArgs('timer', name='hpet', present='no')
self.dom.appendChild(m)
开发者ID:kripper,项目名称:vdsm,代码行数:28,代码来源:vmxml.py
示例10: _canonicalize_switch_type_bond
def _canonicalize_switch_type_bond(data):
options = data.get('options', '')
ovs = utils.rget(bonding.parse_bond_options(options), ('custom', 'ovs'))
if utils.tobool(ovs):
data['switch'] = 'ovs'
elif 'switch' not in data:
data['switch'] = 'legacy'
开发者ID:andrewlukoshko,项目名称:vdsm,代码行数:7,代码来源:canonicalize.py
示例11: _check_connectivity
def _check_connectivity(networks, bondings, options, logger):
if utils.tobool(options.get('connectivityCheck', True)):
logger.debug('Checking connectivity...')
if not _clientSeen(_get_connectivity_timeout(options)):
logger.info('Connectivity check failed, rolling back')
raise ConfigNetworkError(ne.ERR_LOST_CONNECTION,
'connectivity check failed')
开发者ID:sshnaidm,项目名称:vdsm,代码行数:7,代码来源:api.py
示例12: _delNetwork
def _delNetwork(network, vlan=None, bonding=None, nics=None, force=False,
configurator=None, implicitBonding=True, _netinfo=None,
keep_bridge=False, **options):
if _netinfo is None:
_netinfo = netinfo.NetInfo()
if configurator is None:
configurator = ConfiguratorClass()
if network not in _netinfo.networks:
logging.info("Network %r: doesn't exist in libvirt database", network)
vlan = _vlanToInternalRepresentation(vlan)
_delNonVdsmNetwork(network, vlan, bonding, nics, _netinfo,
configurator)
return
nics, vlan, bonding = _netinfo.getNicsVlanAndBondingForNetwork(network)
bridged = _netinfo.networks[network]['bridged']
logging.info("Removing network %s with vlan=%s, bonding=%s, nics=%s,"
"keep_bridge=%s options=%s", network, vlan, bonding,
nics, keep_bridge, options)
if not utils.tobool(force):
_validateDelNetwork(network, vlan, bonding, nics, bridged, _netinfo)
net_ent = _objectivizeNetwork(bridge=network if bridged else None,
vlan=vlan, bonding=bonding, nics=nics,
_netinfo=_netinfo, configurator=configurator,
implicitBonding=implicitBonding)
net_ent.ipv4.bootproto = (
'dhcp' if _netinfo.networks[network]['dhcpv4'] else 'none')
if bridged and keep_bridge:
# we now leave the bridge intact but delete everything underneath it
net_ent_to_remove = net_ent.port
if net_ent_to_remove is not None:
# the configurator will not allow us to remove a bridge interface
# (be it vlan, bond or nic) unless it is not used anymore. Since
# we are interested to leave the bridge here, we have to disconnect
# it from the device so that the configurator will allow its
# removal.
_disconnect_bridge_port(net_ent_to_remove.name)
else:
net_ent_to_remove = net_ent
# We must first remove the libvirt network and then the network entity.
# Otherwise if we first remove the network entity while the libvirt
# network is still up, the network entity (In some flows) thinks that
# it still has users and thus does not allow its removal
configurator.removeLibvirtNetwork(network)
if net_ent_to_remove is not None:
logging.info('Removing network entity %s', net_ent_to_remove)
net_ent_to_remove.remove()
# We must remove the QoS last so that no devices nor networks mark the
# QoS as used
backing_device = hierarchy_backing_device(net_ent)
if (backing_device is not None and
os.path.exists(netinfo.NET_PATH + '/' + backing_device.name)):
configurator.removeQoS(net_ent)
开发者ID:Caez83,项目名称:vdsm,代码行数:60,代码来源:api.py
示例13: getXML
def getXML(self):
"""
Create domxml for a host device.
<devices>
<hostdev mode='subsystem' type='pci' managed='no'>
<source>
<address domain='0x0000' bus='0x06' slot='0x02'
function='0x0'/>
</source>
<boot order='1'/>
</hostdev>
</devices>
"""
if (CAPABILITY_TO_XML_ATTR[
self._deviceParams['capability']] == 'pci' and
utils.tobool(self.specParams.get('iommuPlaceholder', False))):
raise core.SkipDevice
hostdev = self.createXmlElem(hwclass.HOSTDEV, None)
hostdev.setAttrs(
managed='no', mode='subsystem',
type=CAPABILITY_TO_XML_ATTR[self._deviceParams['capability']])
source = hostdev.appendChildWithArgs('source')
source.appendChildWithArgs('address', **self.hostAddress)
if hasattr(self, 'bootOrder'):
hostdev.appendChildWithArgs('boot', order=self.bootOrder)
if hasattr(self, 'address'):
hostdev.appendChildWithArgs('address', **self.address)
return hostdev
开发者ID:fancyKai,项目名称:vdsm,代码行数:35,代码来源:hostdevice.py
示例14: _getDriverXML
def _getDriverXML(self):
driver = vmxml.Element('driver')
driverAttrs = {'name': 'qemu'}
if self.blockDev:
driverAttrs['io'] = 'native'
else:
driverAttrs['io'] = 'threads'
if self.format == 'cow':
driverAttrs['type'] = 'qcow2'
elif self.format:
driverAttrs['type'] = 'raw'
if hasattr(self, 'specParams') and (
'pinToIoThread' in self.specParams):
driverAttrs['iothread'] = str(self.specParams['pinToIoThread'])
driverAttrs['cache'] = self.cache
if (self.propagateErrors == 'on' or
utils.tobool(self.propagateErrors)):
driverAttrs['error_policy'] = 'enospace'
else:
driverAttrs['error_policy'] = 'stop'
driver.setAttrs(**driverAttrs)
return driver
开发者ID:Caez83,项目名称:vdsm,代码行数:28,代码来源:storage.py
示例15: _getDriverXML
def _getDriverXML(drive):
driver = vmxml.Element('driver')
driverAttrs = {'name': 'qemu'}
if drive['diskType'] == DISK_TYPE.BLOCK:
driverAttrs['io'] = 'native'
else:
driverAttrs['io'] = 'threads'
if drive['format'] == 'cow':
driverAttrs['type'] = 'qcow2'
elif drive['format']:
driverAttrs['type'] = 'raw'
try:
driverAttrs['iothread'] = str(drive['specParams']['pinToIoThread'])
except KeyError:
pass
driverAttrs['cache'] = drive['cache']
if (drive['propagateErrors'] == 'on' or
utils.tobool(drive['propagateErrors'])):
driverAttrs['error_policy'] = 'enospace'
else:
driverAttrs['error_policy'] = 'stop'
driver.setAttrs(**driverAttrs)
return driver
开发者ID:fancyKai,项目名称:vdsm,代码行数:29,代码来源:storage.py
示例16: __init__
def __init__(self, conf, log, arch):
"""
Create the skeleton of a libvirt domain xml
<domain type="kvm">
<name>vmName</name>
<uuid>9ffe28b6-6134-4b1e-8804-1185f49c436f</uuid>
<memory>262144</memory>
<currentMemory>262144</currentMemory>
<vcpu current='smp'>160</vcpu>
<devices>
</devices>
</domain>
"""
self.conf = conf
self.log = log
self.arch = arch
self.doc = xml.dom.minidom.Document()
if utils.tobool(self.conf.get('kvmEnable', 'true')):
domainType = 'kvm'
else:
domainType = 'qemu'
domainAttrs = {'type': domainType}
# Hack around libvirt issue BZ#988070, this is going to be removed as
# soon as the domain XML format supports the specification of USB
# keyboards
if self.arch == caps.Architecture.PPC64:
domainAttrs['xmlns:qemu'] = \
'http://libvirt.org/schemas/domain/qemu/1.0'
self.dom = Element('domain', **domainAttrs)
self.doc.appendChild(self.dom)
self.dom.appendChildWithArgs('name', text=self.conf['vmName'])
self.dom.appendChildWithArgs('uuid', text=self.conf['vmId'])
if 'numOfIoThreads' in self.conf:
self.dom.appendChildWithArgs('iothreads',
text=str(self.conf['numOfIoThreads']))
memSizeKB = str(int(self.conf.get('memSize', '256')) * 1024)
self.dom.appendChildWithArgs('memory', text=memSizeKB)
self.dom.appendChildWithArgs('currentMemory', text=memSizeKB)
if 'maxMemSize' in self.conf:
maxMemSizeKB = str(int(self.conf['maxMemSize']) * 1024)
maxMemSlots = str(self.conf.get('maxMemSlots', '16'))
self.dom.appendChildWithArgs('maxMemory', text=maxMemSizeKB,
slots=maxMemSlots)
vcpu = self.dom.appendChildWithArgs('vcpu', text=self._getMaxVCpus())
vcpu.setAttrs(**{'current': self._getSmp()})
self._devices = Element('devices')
self.dom.appendChild(self._devices)
self.appendMetadata()
开发者ID:nickxiao,项目名称:vdsm,代码行数:60,代码来源:vmxml.py
示例17: check
def check(options):
if utils.tobool(options.get('connectivityCheck', True)):
logging.debug('Checking connectivity...')
if not _client_seen(_get_connectivity_timeout(options)):
logging.info('Connectivity check failed, rolling back')
raise ConfigNetworkError(ne.ERR_LOST_CONNECTION,
'connectivity check failed')
开发者ID:andrewlukoshko,项目名称:vdsm,代码行数:7,代码来源:connectivity.py
示例18: __init__
def __init__(self, vm, delay, message, timeout, force, event):
"""
:param vm: Vm undergoing power-down action
:param delay: Graceful timeout for the user to close his applications
(in seconds). During this time no action is taken.
:param message: Message to show the user.
:param timeout: Timeout for each power-down method (guestAgent, acpi)
until it is considered unsuccessful and the callback
chain should try another alternative.
:param force: Use forceful power-down if all graceful methods fail?
:param event: Event object used to detect successful power-down.
"""
self.vm = vm
self.chain = utils.CallbackChain()
self.delay = delay
self.message = message
self.timeout = timeout
self.event = event
# first try agent
if vm.guestAgent and vm.guestAgent.isResponsive():
self.chain.addCallback(self.guestAgentCallback)
# then acpi if enabled
if utils.tobool(vm.conf.get('acpiEnable', 'true')):
self.chain.addCallback(self.acpiCallback)
if force:
self.chain.addCallback(self.forceCallback)
开发者ID:futurice,项目名称:vdsm,代码行数:29,代码来源:vmpowerdown.py
示例19: editNetwork
def editNetwork(oldBridge, newBridge, vlan=None, bonding=None, nics=None, **options):
with ConfiguratorClass() as configurator:
_delNetwork(oldBridge, configurator=configurator, **options)
_addNetwork(newBridge, vlan=vlan, bonding=bonding, nics=nics, configurator=configurator, **options)
if utils.tobool(options.get("connectivityCheck", False)):
if not clientSeen(_get_connectivity_timeout(options)):
_delNetwork(newBridge, force=True)
raise ConfigNetworkError(ne.ERR_LOST_CONNECTION, "connectivity check failed")
开发者ID:nickxiao,项目名称:vdsm,代码行数:8,代码来源:api.py
示例20: _check_connectivity
def _check_connectivity(connectivity_check_networks, networks, bondings, options, logger):
if utils.tobool(options.get("connectivityCheck", True)):
logger.debug("Checking connectivity...")
if not clientSeen(_get_connectivity_timeout(options)):
logger.info("Connectivity check failed, rolling back")
for network in connectivity_check_networks:
# If the new added network was created on top of
# existing bond, we need to keep the bond on rollback
# flow, else we will break the new created bond.
_delNetwork(network, force=True, implicitBonding=networks[network].get("bonding") in bondings)
raise ConfigNetworkError(ne.ERR_LOST_CONNECTION, "connectivity check failed")
开发者ID:nickxiao,项目名称:vdsm,代码行数:11,代码来源:api.py
注:本文中的vdsm.utils.tobool函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论