Francesco Romani has uploaded a new change for review.
Change subject: janitorial: move Vm._reportError into utils
......................................................................
janitorial: move Vm._reportError into utils
this function has nothing vm-specific and it is
general purpose.
This patch just moves code around with no
functional changes.
Change-Id: I01e822429b360bd0973d05b4831ba1b42b93a27f
Signed-off-by: Francesco Romani <fromani(a)redhat.com>
---
M lib/vdsm/utils.py
M vdsm/virt/vm.py
2 files changed, 19 insertions(+), 17 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/35/28835/1
diff --git a/lib/vdsm/utils.py b/lib/vdsm/utils.py
index 343d7ea..f241f17 100644
--- a/lib/vdsm/utils.py
+++ b/lib/vdsm/utils.py
@@ -55,6 +55,7 @@
from cpopen import CPopen
from .config import config
+from .define import errCode
from . import constants
# Buffsize is 1K because I tested it on some use cases and 1K was fastest. If
@@ -1285,3 +1286,15 @@
def prependDefer(self, func, *args, **kwargs):
self._finally.insert(0, (func, args, kwargs))
+
+
+def reportError(self, key, msg=None):
+ """
+ Produce an error status.
+ """
+ if msg is None:
+ error = errCode[key]
+ else:
+ error = {'status': {'code': errCode[key]
+ ['status']['code'], 'message': msg}}
+ return error
diff --git a/vdsm/virt/vm.py b/vdsm/virt/vm.py
index 344af86..7dfc11b 100644
--- a/vdsm/virt/vm.py
+++ b/vdsm/virt/vm.py
@@ -3662,7 +3662,7 @@
if not params:
self.log.error("updateVmPolicy got an empty policy.")
- return self._reportError(key='MissParam',
+ return utils.reportError(key='MissParam',
msg="updateVmPolicy got an empty
policy.")
#
@@ -3680,7 +3680,7 @@
if e.get_error_code() == libvirt.VIR_ERR_NO_DOMAIN:
return errCode['noVM']
else:
- return self._reportError(key='updateVmPolicyErr',
+ return utils.reportError(key='updateVmPolicyErr',
msg=e.message)
else:
del params['vcpuLimit']
@@ -4778,7 +4778,7 @@
def setBalloonTarget(self, target):
if self._dom is None:
- return self._reportError(key='balloonErr')
+ return utils.reportError(key='balloonErr')
try:
target = int(target)
self._dom.setMemory(target)
@@ -4802,7 +4802,7 @@
try:
self._dom.setSchedulerParameters({'vcpu_quota': int(quota)})
except ValueError:
- return self._reportError(key='cpuTuneErr',
+ return utils.reportError(key='cpuTuneErr',
msg='an integer is required for period')
except libvirt.libvirtError as e:
return self._reportException(key='cpuTuneErr', msg=e.message)
@@ -4812,22 +4812,11 @@
try:
self._dom.setSchedulerParameters({'vcpu_period': int(period)})
except ValueError:
- return self._reportError(key='cpuTuneErr',
+ return utils.reportError(key='cpuTuneErr',
msg='an integer is required for period')
except libvirt.libvirtError as e:
return self._reportException(key='cpuTuneErr', msg=e.message)
return {'status': doneCode}
-
- def _reportError(self, key, msg=None):
- """
- Produce an error status.
- """
- if msg is None:
- error = errCode[key]
- else:
- error = {'status': {'code': errCode[key]
- ['status']['code'], 'message':
msg}}
- return error
def _reportException(self, key, msg=None):
"""
@@ -4835,7 +4824,7 @@
This method should be called only within exception-handling context.
"""
self.log.exception("Operation failed")
- return self._reportError(key, msg)
+ return utils.reportError(key, msg)
def _getUnderlyingDeviceAddress(self, devXml):
"""
--
To view, visit
http://gerrit.ovirt.org/28835
To unsubscribe, visit
http://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I01e822429b360bd0973d05b4831ba1b42b93a27f
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>