Change in vdsm[master]: Make IRS methods bypass API.py
by smizrahi@redhat.com
Saggi Mizrahi has uploaded a new change for review.
Change subject: Make IRS methods bypass API.py
......................................................................
Make IRS methods bypass API.py
Change-Id: Iaf7dc90462e47b9f067959df7325b57cbaa82241
Signed-off-by: Saggi Mizrahi <smizrahi(a)redhat.com>
---
M vdsm/BindingXMLRPC.py
1 file changed, 80 insertions(+), 432 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/27/7227/1
diff --git a/vdsm/BindingXMLRPC.py b/vdsm/BindingXMLRPC.py
index 0d74af6..2e0dce2 100644
--- a/vdsm/BindingXMLRPC.py
+++ b/vdsm/BindingXMLRPC.py
@@ -33,6 +33,7 @@
import API
from vdsm.exception import VdsmException
import fenceAgent
+from functools import partial
try:
from gluster.api import getGlusterMethods
@@ -388,358 +389,6 @@
api = API.Global()
return api.setMOMPolicy(policy)
- def domainActivate(self, sdUUID, spUUID, options=None):
- domain = API.StorageDomain(sdUUID, spUUID)
- return domain.activate()
-
- def domainAttach(self, sdUUID, spUUID, options=None):
- domain = API.StorageDomain(sdUUID, spUUID)
- return domain.attach(spUUID)
-
- def domainCreate(self, storageType, sdUUID, domainName,
- typeSpecificArg, domClass,
- domVersion=None, options=None):
- domain = API.StorageDomain(sdUUID, spUUID=None)
- return domain.create(storageType, typeSpecificArg, domainName,
- domClass, domVersion)
-
- def domainDeactivate(self, sdUUID, spUUID, msdUUID, masterVersion,
- options=None):
- domain = API.StorageDomain(sdUUID, spUUID)
- return domain.deactivate(msdUUID, masterVersion)
-
- def domainDetach(self, sdUUID, spUUID, msdUUID, masterVersion,
- options=None):
- domain = API.StorageDomain(sdUUID, spUUID)
- return domain.detach(msdUUID, masterVersion, force=False)
-
- def domainDetachForced(self, sdUUID, spUUID, options=None):
- domain = API.StorageDomain(sdUUID, spUUID)
- return domain.detach(None, None, force=True)
-
- def domainExtend(self, sdUUID, spUUID, devlist, options=None):
- domain = API.StorageDomain(sdUUID, spUUID)
- return domain.extend(devlist)
-
- def domainFormat(self, sdUUID,
- autoDetach=False, options=None):
- domain = API.StorageDomain(sdUUID, spUUID=None)
- return domain.format(autoDetach)
-
- def domainGetFileList(self, sdUUID, pattern='*', options=None):
- domain = API.StorageDomain(sdUUID, spUUID=None)
- return domain.getFileList(pattern)
-
- def domainGetImages(self, sdUUID, options=None):
- domain = API.StorageDomain(sdUUID, spUUID=None)
- return domain.getImages()
-
- def domainGetInfo(self, sdUUID, options=None):
- domain = API.StorageDomain(sdUUID, spUUID=None)
- return domain.getInfo()
-
- def domainGetStats(self, sdUUID, options=None):
- domain = API.StorageDomain(sdUUID, spUUID=None)
- return domain.getStats()
-
- def domainGetVolumes(self, sdUUID, spUUID,
- imgUUID=API.Image.BLANK_UUID):
- domain = API.StorageDomain(sdUUID, spUUID)
- return domain.getVolumes(imgUUID)
-
- def domainSetDescription(self, sdUUID, description, options=None):
- domain = API.StorageDomain(sdUUID, spUUID=None)
- return domain.setDescription(description)
-
- def domainUploadVolume(self, sdUUID, spUUID, imgUUID, volUUID,
- srcPath, size, method="rsync", options=None):
- domain = API.StorageDomain(sdUUID, spUUID)
- return domain.uploadVolume(imgUUID, volUUID, srcPath, size, method)
-
- def domainValidate(self, sdUUID, options=None):
- domain = API.StorageDomain(sdUUID, spUUID=None)
- return domain.validate()
-
- def imageDelete(self, sdUUID, spUUID,
- imgUUID, postZero=False, force=False):
- image = API.Image(imgUUID, spUUID, sdUUID)
- return image.delete(postZero, force)
-
- def imageDeleteVolumes(self, sdUUID, spUUID, imgUUID, volumes,
- postZero=False, force=False):
- image = API.Image(imgUUID, spUUID, sdUUID)
- return image.deleteVolumes(volumes, postZero, force)
-
- def imageMergeSnapshots(self, sdUUID, spUUID, vmUUID, imgUUID,
- ancestor, successor, postZero=False):
- image = API.Image(imgUUID, spUUID, sdUUID)
- return image.mergeSnapshots(ancestor, successor, postZero)
-
- def imageMove(self, spUUID, srcDomUUID, dstDomUUID, imgUUID, vmUUID,
- op, postZero=False, force=False):
- image = API.Image(imgUUID, spUUID, srcDomUUID)
- return image.move(dstDomUUID, op, postZero, force)
-
- def poolConnect(self, spUUID, hostID, scsiKey, msdUUID, masterVersion,
- options=None):
- pool = API.StoragePool(spUUID)
- return pool.connect(hostID, scsiKey, msdUUID, masterVersion)
-
- def poolConnectStorageServer(self, domType, spUUID, conList, options=None):
- pool = API.StoragePool(spUUID)
- return pool.connectStorageServer(domType, conList)
-
- def poolCreate(self, poolType, spUUID, poolName, masterDom, domList,
- masterVersion, lockPolicy=None, lockRenewalIntervalSec=None,
- leaseTimeSec=None, ioOpTimeoutSec=None,
- leaseRetries=None, options=None):
- pool = API.StoragePool(spUUID)
- return pool.create(poolName, masterDom, masterVersion, domList,
- lockRenewalIntervalSec, leaseTimeSec, ioOpTimeoutSec,
- leaseRetries)
-
- def poolDestroy(self, spUUID, hostID, scsiKey, options=None):
- pool = API.StoragePool(spUUID)
- return pool.destroy(hostID, scsiKey)
-
- def poolDisconnect(self, spUUID, hostID, scsiKey, remove=False,
- options=None):
- pool = API.StoragePool(spUUID)
- return pool.disconnect(hostID, scsiKey, remove)
-
- def poolDisconnectStorageServer(self, domType, spUUID, conList,
- options=None):
- pool = API.StoragePool(spUUID)
- return pool.disconnectStorageServer(domType, conList)
-
- def poolFenceSPMStorage(self, spUUID, lastOwner, lastLver, options=None):
- pool = API.StoragePool(spUUID)
- return pool.fence()
-
- def poolGetBackedUpVmsInfo(self, spUUID, sdUUID,
- vmList=None, options=None):
- pool = API.StoragePool(spUUID)
- return pool.getBackedUpVmsInfo(sdUUID, vmList)
-
- def poolGetBackedUpVmsList(self, spUUID, sdUUID=None, options=None):
- pool = API.StoragePool(spUUID)
- return pool.getBackedUpVmsList(sdUUID)
-
- def poolGetFloppyList(self, spUUID, options=None):
- pool = API.StoragePool(spUUID)
- return pool.getFloppyList()
-
- def poolGetDomainsContainingImage(self, spUUID, imgUUID, datadomains=True,
- options=None):
- pool = API.StoragePool(spUUID)
- return pool.getDomainsContainingImage(imgUUID, datadomains)
-
- def poolGetIsoList(self, spUUID, extension='iso', options=None):
- pool = API.StoragePool(spUUID)
- return pool.getIsoList(extension)
-
- def poolGetSpmStatus(self, spUUID, options=None):
- pool = API.StoragePool(spUUID)
- return pool.getSpmStatus()
-
- def poolGetInfo(self, spUUID, options=None):
- pool = API.StoragePool(spUUID)
- return pool.getInfo()
-
- def poolMoveMultipleImages(self, spUUID, srcDomUUID, dstDomUUID, imgDict,
- vmUUID, force=False):
- pool = API.StoragePool(spUUID)
- return pool.moveMultipleImages(srcDomUUID, dstDomUUID, imgDict, force)
-
- def poolReconstructMaster(self, spUUID, poolName, masterDom, domDict,
- masterVersion, lockPolicy=None,
- lockRenewalIntervalSec=None, leaseTimeSec=None,
- ioOpTimeoutSec=None, leaseRetries=None,
- hostId=None, options=None):
- pool = API.StoragePool(spUUID)
- return pool.reconstructMaster(hostId, poolName, masterDom,
- masterVersion, domDict, lockRenewalIntervalSec, leaseTimeSec,
- ioOpTimeoutSec, leaseRetries)
-
- def poolRefresh(self, spUUID, msdUUID, masterVersion, options=None):
- pool = API.StoragePool(spUUID)
- return pool.refresh(msdUUID, masterVersion)
-
- def poolSetDescription(self, spUUID, description, options=None):
- pool = API.StoragePool(spUUID)
- return pool.setDescription(description)
-
- def poolSpmStart(self, spUUID, prevID, prevLVER, recoveryMode,
- scsiFencing, maxHostID=None,
- domVersion=None, options=None):
- pool = API.StoragePool(spUUID)
- return pool.spmStart(prevID, prevLVER, scsiFencing,
- maxHostID, domVersion)
-
- def poolSpmStop(self, spUUID, options=None):
- pool = API.StoragePool(spUUID)
- return pool.spmStop()
-
- def poolUpgrade(self, spUUID, targetDomVersion):
- pool = API.StoragePool(spUUID)
- return pool.upgrade(targetDomVersion)
-
- def poolValidateStorageServerConnection(self, domType, spUUID, conList,
- options=None):
- pool = API.StoragePool(spUUID)
- return pool.validateStorageServerConnection(domType, conList)
-
- def poolUpdateVMs(self, spUUID, vmList, sdUUID=None, options=None):
- pool = API.StoragePool(spUUID)
- return pool.updateVMs(vmList, sdUUID)
-
- def poolRemoveVm(self, spUUID, vmUUID, sdUUID=None, options=None):
- pool = API.StoragePool(spUUID)
- return pool.removeVM(vmUUID, sdUUID)
-
- def volumeCopy(self, sdUUID, spUUID, vmUUID, srcImgUUID, srcVolUUID,
- dstImgUUID, dstVolUUID, description='',
- dstSdUUID=API.StorageDomain.BLANK_UUID,
- volType=API.Volume.Roles.SHARED,
- volFormat=API.Volume.Formats.UNKNOWN,
- preallocate=API.Volume.Types.UNKNOWN, postZero=False,
- force=False):
- volume = API.Volume(srcVolUUID, spUUID, sdUUID, srcImgUUID)
- return volume.copy(dstSdUUID, dstImgUUID, dstVolUUID,
- description, volType, volFormat, preallocate, postZero,
- force)
-
- def volumeCreate(self, sdUUID, spUUID, imgUUID, size, volFormat,
- preallocate, diskType, volUUID, desc,
- srcImgUUID=API.Image.BLANK_UUID,
- srcVolUUID=API.Volume.BLANK_UUID):
- volume = API.Volume(volUUID, spUUID, sdUUID, imgUUID)
- return volume.create(size, volFormat, preallocate, diskType,
- desc, srcImgUUID, srcVolUUID)
-
- def volumeExtend(self, sdUUID, spUUID, imgUUID, volUUID, size,
- isShuttingDown=None):
- volume = API.Volume(volUUID, spUUID, sdUUID, imgUUID)
- return volume.extend(size, isShuttingDown)
-
- def volumeGetInfo(self, sdUUID, spUUID, imgUUID, volUUID):
- volume = API.Volume(volUUID, spUUID, sdUUID, imgUUID)
- return volume.getInfo()
-
- def volumeGetPath(self, sdUUID, spUUID, imgUUID, volUUID):
- volume = API.Volume(volUUID, spUUID, sdUUID, imgUUID)
- return volume.getPath()
-
- def volumeGetSize(self, sdUUID, spUUID, imgUUID, volUUID):
- volume = API.Volume(volUUID, spUUID, sdUUID, imgUUID)
- return volume.getSize()
-
- def volumePrepare(self, sdUUID, spUUID, imgUUID, volUUID, rw=True):
- volume = API.Volume(volUUID, spUUID, sdUUID, imgUUID)
- return volume.prepare(rw)
-
- def volumeRefresh(self, sdUUID, spUUID, imgUUID, volUUID):
- volume = API.Volume(volUUID, spUUID, sdUUID, imgUUID)
- return volume.refresh()
-
- def volumeSetDescription(self, sdUUID, spUUID, imgUUID, volUUID,
- description):
- volume = API.Volume(volUUID, spUUID, sdUUID, imgUUID)
- return volume.setDescription(description)
-
- def volumeSetLegality(self, sdUUID, spUUID, imgUUID, volUUID, legality):
- volume = API.Volume(volUUID, spUUID, sdUUID, imgUUID)
- return volume.setLegality(legality)
-
- def volumeTearDown(self, sdUUID, spUUID, imgUUID, volUUID):
- volume = API.Volume(volUUID, spUUID, sdUUID, imgUUID)
- return volume.tearDown()
-
- def taskClear(self, taskId):
- task = API.Task(taskId)
- return task.clear()
-
- def taskGetInfo(self, taskId):
- task = API.Task(taskId)
- return task.getInfo()
-
- def taskGetStatus(self, taskId):
- task = API.Task(taskId)
- return task.getStatus()
-
- def taskRevert(self, taskId):
- task = API.Task(taskId)
- return task.revert()
-
- def taskStop(self, taskId):
- task = API.Task(taskId)
- return task.stop()
-
- # Global storage methods
- def tasksGetAllInfo(self):
- api = API.Global()
- return api.getAllTasksInfo()
-
- def tasksGetAllStatuses(self):
- api = API.Global()
- return api.getAllTasksStatuses()
-
- def iscsiDiscoverSendTargets(self, con, options=None):
- iscsiConn = API.ISCSIConnection(con['connection'],
- con['port'], con['user'], con['password'])
- return iscsiConn.discoverSendTargets()
-
- def vgCreate(self, name, devlist, force=False):
- vg = API.LVMVolumeGroup(self.cif)
- return vg.create(name, devlist, force)
-
- def vgGetInfo(self, vgUUID, options=None):
- vg = API.LVMVolumeGroup(vgUUID)
- return vg.getInfo()
-
- def vgRemove(self, vgUUID, options=None):
- vg = API.LVMVolumeGroup(vgUUID)
- return vg.remove()
-
- def domainsGetList(self, spUUID=None, domainClass=None, storageType=None,
- remotePath=None, options=None):
- api = API.Global()
- return api.getStorageDomains(spUUID, domainClass, storageType,
- remotePath)
-
- def poolsGetConnectedList(self, options=None):
- api = API.Global()
- return api.getConnectedStoragePools()
-
- def storageRepoGetStats(self, options=None):
- api = API.Global()
- return api.getStorageRepoStats()
-
- def vgsGetList(self, storageType=None, options=None):
- api = API.Global()
- return api.getLVMVolumeGroups(storageType)
-
- def devicesGetList(self, storageType=None, options=None):
- api = API.Global()
- return api.getDeviceList(storageType)
-
- def devicesGetVisibility(self, guids, options=None):
- api = API.Global()
- return api.getDevicesVisibility(guids)
-
- def deviceGetInfo(self, guid, options=None):
- api = API.Global()
- return api.getDeviceInfo(guid)
-
- def storageServerConnectionRefsAcquire(self, conRefArgs):
- return API.ConnectionRefs().acquire(conRefArgs)
-
- def storageServerConnectionRefsRelease(self, refIDs):
- return API.ConnectionRefs().release(refIDs)
-
- def storageServerConnectionRefsStatuses(self):
- return API.ConnectionRefs().statuses()
-
def getGlobalMethods(self):
return ((self.vmDestroy, 'destroy'),
(self.vmCreate, 'create'),
@@ -785,86 +434,85 @@
(self.vmHotunplugNic, 'hotunplugNic'))
def getIrsMethods(self):
- return ((self.domainActivate, 'activateStorageDomain'),
- (self.domainAttach, 'attachStorageDomain'),
- (self.domainCreate, 'createStorageDomain'),
- (self.domainDeactivate, 'deactivateStorageDomain'),
- (self.domainDetach, 'detachStorageDomain'),
- (self.domainDetachForced, 'forcedDetachStorageDomain'),
- (self.domainExtend, 'extendStorageDomain'),
- (self.domainFormat, 'formatStorageDomain'),
- (self.domainGetFileList, 'getFileList'),
- (self.domainGetImages, 'getImagesList'),
- (self.domainGetInfo, 'getStorageDomainInfo'),
- (self.domainGetStats, 'getStorageDomainStats'),
- (self.domainGetVolumes, 'getVolumesList'),
- (self.domainSetDescription, 'setStorageDomainDescription'),
- (self.domainUploadVolume, 'uploadVolume'),
- (self.domainValidate, 'validateStorageDomain'),
- (self.imageDelete, 'deleteImage'),
- (self.imageDeleteVolumes, 'deleteVolume'),
- (self.imageMergeSnapshots, 'mergeSnapshots'),
- (self.imageMove, 'moveImage'),
- (self.poolConnect, 'connectStoragePool'),
- (self.poolConnectStorageServer, 'connectStorageServer'),
- (self.poolCreate, 'createStoragePool'),
- (self.poolDestroy, 'destroyStoragePool'),
- (self.poolDisconnect, 'disconnectStoragePool'),
- (self.poolDisconnectStorageServer, 'disconnectStorageServer'),
- (self.poolFenceSPMStorage, 'fenceSpmStorage'),
- (self.poolGetBackedUpVmsInfo, 'getVmsInfo'),
- (self.poolGetBackedUpVmsList, 'getVmsList'),
- (self.poolGetFloppyList, 'getFloppyList'),
- (self.poolGetDomainsContainingImage, 'getImageDomainsList'),
- (self.poolGetIsoList, 'getIsoList'),
- (self.poolGetSpmStatus, 'getSpmStatus'),
- (self.poolGetInfo, 'getStoragePoolInfo'),
- (self.poolMoveMultipleImages, 'moveMultipleImages'),
- (self.poolReconstructMaster, 'reconstructMaster'),
- (self.poolRefresh, 'refreshStoragePool'),
- (self.poolSetDescription, 'setStoragePoolDescription'),
- (self.poolSpmStart, 'spmStart'),
- (self.poolSpmStop, 'spmStop'),
- (self.poolUpgrade, 'upgradeStoragePool'),
- (self.poolValidateStorageServerConnection,
- 'validateStorageServerConnection'),
- (self.poolUpdateVMs, 'updateVM'),
- (self.poolRemoveVm, 'removeVM'),
- (self.taskClear, 'clearTask'),
- (self.taskGetInfo, 'getTaskInfo'),
- (self.taskGetStatus, 'getTaskStatus'),
- (self.taskRevert, 'revertTask'),
- (self.taskStop, 'stopTask'),
- (self.volumeCopy, 'copyImage'),
- (self.volumeCreate, 'createVolume'),
- (self.volumeExtend, 'extendVolume'),
- (self.volumeGetInfo, 'getVolumeInfo'),
- (self.volumeGetPath, 'getVolumePath'),
- (self.volumeGetSize, 'getVolumeSize'),
- (self.volumePrepare, 'prepareVolume'),
- (self.volumeRefresh, 'refreshVolume'),
- (self.volumeSetDescription, 'setVolumeDescription'),
- (self.volumeSetLegality, 'setVolumeLegality'),
- (self.volumeTearDown, 'teardownVolume'),
- (self.tasksGetAllInfo, 'getAllTasksInfo'),
- (self.tasksGetAllStatuses, 'getAllTasksStatuses'),
- (self.iscsiDiscoverSendTargets, 'discoverSendTargets'),
- (self.vgCreate, 'createVG'),
- (self.vgGetInfo, 'getVGInfo'),
- (self.vgRemove, 'removeVG'),
- (self.domainsGetList, 'getStorageDomainsList'),
- (self.poolsGetConnectedList, 'getConnectedStoragePoolsList'),
- (self.storageRepoGetStats, 'repoStats'),
- (self.vgsGetList, 'getVGList'),
- (self.devicesGetList, 'getDeviceList'),
- (self.devicesGetVisibility, 'getDevicesVisibility'),
- (self.deviceGetInfo, 'getDeviceInfo'),
- (self.storageServerConnectionRefsAcquire,
- 'storageServer_ConnectionRefs_acquire'),
- (self.storageServerConnectionRefsRelease,
- 'storageServer_ConnectionRefs_release'),
- (self.storageServerConnectionRefsStatuses,
- 'storageServer_ConnectionRefs_statuses'),)
+ passThroughMethods = (
+ 'activateStorageDomain',
+ 'attachStorageDomain',
+ 'createStorageDomain',
+ 'deactivateStorageDomain',
+ 'detachStorageDomain',
+ 'forcedDetachStorageDomain',
+ 'extendStorageDomain',
+ 'formatStorageDomain',
+ 'getFileList',
+ 'getImagesList',
+ 'getStorageDomainInfo',
+ 'getStorageDomainStats',
+ 'getVolumesList',
+ 'setStorageDomainDescription',
+ 'uploadVolume',
+ 'validateStorageDomain',
+ 'deleteImage',
+ 'deleteVolume',
+ 'mergeSnapshots',
+ 'moveImage',
+ 'connectStoragePool',
+ 'connectStorageServer',
+ 'createStoragePool',
+ 'destroyStoragePool',
+ 'disconnectStoragePool',
+ 'disconnectStorageServer',
+ 'fenceSpmStorage',
+ 'getVmsInfo',
+ 'getVmsList',
+ 'getFloppyList',
+ 'getImageDomainsList',
+ 'getIsoList',
+ 'getSpmStatus',
+ 'getStoragePoolInfo',
+ 'moveMultipleImages',
+ 'reconstructMaster',
+ 'refreshStoragePool',
+ 'setStoragePoolDescription',
+ 'spmStart',
+ 'spmStop',
+ 'upgradeStoragePool',
+ 'validateStorageServerConnection',
+ 'updateVM',
+ 'removeVM',
+ 'clearTask',
+ 'getTaskInfo',
+ 'getTaskStatus',
+ 'revertTask',
+ 'stopTask',
+ 'copyImage',
+ 'createVolume',
+ 'extendVolume',
+ 'getVolumeInfo',
+ 'getVolumePath',
+ 'getVolumeSize',
+ 'prepareVolume',
+ 'refreshVolume',
+ 'setVolumeDescription',
+ 'setVolumeLegality',
+ 'teardownVolume',
+ 'getAllTasksInfo',
+ 'getAllTasksStatuses',
+ 'discoverSendTargets',
+ 'createVG',
+ 'getVGInfo',
+ 'removeVG',
+ 'getStorageDomainsList',
+ 'getConnectedStoragePoolsList',
+ 'repoStats',
+ 'getVGList',
+ 'getDeviceList',
+ 'getDevicesVisibility',
+ 'getDeviceInfo',
+ 'storageServer_ConnectionRefs_acquire',
+ 'storageServer_ConnectionRefs_release',
+ 'storageServer_ConnectionRefs_statuses',)
+ return zip(map(partial(getattr, self.cif.irs), passThroughMethods),
+ passThroughMethods)
def wrapApiMethod(f):
--
To view, visit http://gerrit.ovirt.org/7227
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Iaf7dc90462e47b9f067959df7325b57cbaa82241
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Saggi Mizrahi <smizrahi(a)redhat.com>
9 years, 1 month
Change in vdsm[master]: [WIP] Add the base commands to vdsm-tool
by Federico Simoncelli
Federico Simoncelli has uploaded a new change for review.
Change subject: [WIP] Add the base commands to vdsm-tool
......................................................................
[WIP] Add the base commands to vdsm-tool
Change-Id: Id3f49dc3cbb4dfba86a85ab9348d19684445f40e
---
M vdsm-tool/Makefile.am
A vdsm-tool/base.py
M vdsm.spec.in
3 files changed, 52 insertions(+), 1 deletion(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/88/388/1
--
To view, visit http://gerrit.ovirt.org/388
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Id3f49dc3cbb4dfba86a85ab9348d19684445f40e
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Federico Simoncelli <fsimonce(a)redhat.com>
9 years, 1 month
Change in vdsm[master]: [WIP] Add the daemon commands to vdsm-tool
by Federico Simoncelli
Federico Simoncelli has uploaded a new change for review.
Change subject: [WIP] Add the daemon commands to vdsm-tool
......................................................................
[WIP] Add the daemon commands to vdsm-tool
Change-Id: Ieafb9886f3ffb2433478203186dd94005b2a51e8
---
M vdsm-tool/Makefile.am
A vdsm-tool/daemon.py
M vdsm.spec.in
3 files changed, 52 insertions(+), 1 deletion(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/89/389/1
--
To view, visit http://gerrit.ovirt.org/389
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ieafb9886f3ffb2433478203186dd94005b2a51e8
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Federico Simoncelli <fsimonce(a)redhat.com>
9 years, 1 month
Change in vdsm[master]: [WIP] Enable deleteVolume for the merged internal volumes
by Federico Simoncelli
Federico Simoncelli has uploaded a new change for review.
Change subject: [WIP] Enable deleteVolume for the merged internal volumes
......................................................................
[WIP] Enable deleteVolume for the merged internal volumes
Change-Id: I99044c9de79ee3c74ed1c010f6e573bcd3695da2
---
M vdsm/storage/volume.py
1 file changed, 20 insertions(+), 6 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/72/2672/1
--
To view, visit http://gerrit.ovirt.org/2672
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I99044c9de79ee3c74ed1c010f6e573bcd3695da2
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Federico Simoncelli <fsimonce(a)redhat.com>
9 years, 1 month
Change in vdsm[master]: [WIP] Adding Image.release() to remove the merged volumes
by Federico Simoncelli
Federico Simoncelli has uploaded a new change for review.
Change subject: [WIP] Adding Image.release() to remove the merged volumes
......................................................................
[WIP] Adding Image.release() to remove the merged volumes
The new Image.release() method can be used to remove the internal
volumes that were live merged by a VM.
Change-Id: I50aaea4e52ea2c6a10cdc68e134ae606dcd81e24
---
M vdsm/storage/image.py
1 file changed, 43 insertions(+), 1 deletion(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/83/2883/1
--
To view, visit http://gerrit.ovirt.org/2883
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I50aaea4e52ea2c6a10cdc68e134ae606dcd81e24
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Federico Simoncelli <fsimonce(a)redhat.com>
9 years, 1 month
Change in vdsm[master]: [WIP] Add releaseVolumes command to the SPM
by Federico Simoncelli
Federico Simoncelli has uploaded a new change for review.
Change subject: [WIP] Add releaseVolumes command to the SPM
......................................................................
[WIP] Add releaseVolumes command to the SPM
We don't actually need this. I'm using it for testing until we decide
where to plug the release method.
Change-Id: I7784f319d0beb5f5d88b83a99c48d4843b3c9953
---
M vdsm/API.py
M vdsm/BindingXMLRPC.py
M vdsm/storage/hsm.py
M vdsm/storage/sp.py
4 files changed, 42 insertions(+), 0 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/84/2884/1
--
To view, visit http://gerrit.ovirt.org/2884
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I7784f319d0beb5f5d88b83a99c48d4843b3c9953
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Federico Simoncelli <fsimonce(a)redhat.com>
9 years, 1 month
Change in vdsm[master]: Rename validateImage to validateMoveImage
by Federico Simoncelli
Federico Simoncelli has uploaded a new change for review.
Change subject: Rename validateImage to validateMoveImage
......................................................................
Rename validateImage to validateMoveImage
Signed-off-by: Federico Simoncelli <fsimonce(a)redhat.com>
Change-Id: I62746c28e7c5a7902de19090ec6a851ffe10a7fd
---
M vdsm/storage/hsm.py
M vdsm/storage/sp.py
2 files changed, 4 insertions(+), 3 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/90/3490/1
--
To view, visit http://gerrit.ovirt.org/3490
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I62746c28e7c5a7902de19090ec6a851ffe10a7fd
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Federico Simoncelli <fsimonce(a)redhat.com>
9 years, 1 month
Change in vdsm[master]: Add the hostId parameter to reconstructMaster
by Federico Simoncelli
Federico Simoncelli has uploaded a new change for review.
Change subject: Add the hostId parameter to reconstructMaster
......................................................................
Add the hostId parameter to reconstructMaster
Signed-off-by: Federico Simoncelli <fsimonce(a)redhat.com>
Change-Id: If665af4ed8be9b5b53dffc7e1fc258b818bf7f98
---
M vdsm/API.py
M vdsm/BindingXMLRPC.py
M vdsm/storage/hsm.py
M vdsm/storage/sp.py
4 files changed, 37 insertions(+), 39 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/68/5068/1
--
To view, visit http://gerrit.ovirt.org/5068
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: If665af4ed8be9b5b53dffc7e1fc258b818bf7f98
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Federico Simoncelli <fsimonce(a)redhat.com>
9 years, 1 month
Change in vdsm[master]: Support sanlock killpath for the SPM
by Federico Simoncelli
Federico Simoncelli has uploaded a new change for review.
Change subject: Support sanlock killpath for the SPM
......................................................................
Support sanlock killpath for the SPM
Signed-off-by: Federico Simoncelli <fsimonce(a)redhat.com>
Change-Id: I68fecd8dd9753087c4840cb098ba28b10d76d8b8
---
M vdsm.spec.in
M vdsm/Makefile.am
M vdsm/constants.py.in
A vdsm/sanlock-stop-spm
M vdsm/storage/safelease.py
5 files changed, 15 insertions(+), 2 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/85/6385/1
--
To view, visit http://gerrit.ovirt.org/6385
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I68fecd8dd9753087c4840cb098ba28b10d76d8b8
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Federico Simoncelli <fsimonce(a)redhat.com>
9 years, 1 month
Change in vdsm[master]: BZ#752470 Related: Don't use SIGTERM in spmprotect.sh
by Federico Simoncelli
Federico Simoncelli has uploaded a new change for review.
Change subject: BZ#752470 Related: Don't use SIGTERM in spmprotect.sh
......................................................................
BZ#752470 Related: Don't use SIGTERM in spmprotect.sh
Attempting to stop the SPM (SIGUSR1) and using SIGKILL if that fails is
already enough. In any case giving vdsm only 2 seconds between SIGTERM
and SIGKILL was a too short timeout to hope in a restart.
Change-Id: I83e07f966b69e2f8ba803f0d2a5020d90e6029d8
---
M vdsm/storage/protect/spmprotect.sh
1 file changed, 1 insertion(+), 3 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/65/265/1
--
To view, visit http://gerrit.ovirt.org/265
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I83e07f966b69e2f8ba803f0d2a5020d90e6029d8
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Federico Simoncelli <fsimonce(a)redhat.com>
9 years, 1 month