[Cluster-devel] conga/luci cluster/form-macros site/luci/Exten ...
rmccabe at sourceware.org
rmccabe at sourceware.org
Thu Feb 1 20:49:09 UTC 2007
CVSROOT: /cvs/cluster
Module name: conga
Changes by: rmccabe at sourceware.org 2007-02-01 20:49:08
Modified files:
luci/cluster : form-macros
luci/site/luci/Extensions: ModelBuilder.py cluster_adapters.py
conga_constants.py
Log message:
- implement deletion of a virtual machine service
- don't increment the cluster configuration number needlessly
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/cluster/form-macros.diff?cvsroot=cluster&r1=1.170&r2=1.171
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/site/luci/Extensions/ModelBuilder.py.diff?cvsroot=cluster&r1=1.18&r2=1.19
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/site/luci/Extensions/cluster_adapters.py.diff?cvsroot=cluster&r1=1.223&r2=1.224
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/site/luci/Extensions/conga_constants.py.diff?cvsroot=cluster&r1=1.35&r2=1.36
--- conga/luci/cluster/form-macros 2007/02/01 20:27:33 1.170
+++ conga/luci/cluster/form-macros 2007/02/01 20:49:08 1.171
@@ -3748,7 +3748,7 @@
<tfoot class="systemsTable">
<tr class="systemsTable"><td colspan="2">
<div class="hbSubmit">
- <input type="submit" value="Create Virtual Machine" />
+ <input type="submit" value="Create Virtual Machine Service" />
</div>
</td></tr>
</tfoot>
@@ -3784,13 +3784,13 @@
<table class="systemsTable">
<thead class="systemsTable">
<tr class="systemsTable"><td class="systemsTable">
- <p class="reshdr">Properties for <tal:block tal:replace="vminfo/name | string:virtual machine"/></p>
+ <p class="reshdr">Properties for <tal:block tal:replace="vminfo/name | string:virtual machine service"/></p>
</td></tr>
<tfoot class="systemsTable">
<tr class="systemsTable"><td colspan="2">
<div class="hbSubmit">
- <input name="submit" type="submit" value="Update Virtual Machine" />
- <input name="delete" type="submit" value="Delete Virtual Machine" />
+ <input name="submit" type="submit" value="Update Virtual Machine Service" />
+ <input name="delete" type="submit" value="Delete Virtual Machine Service" />
</div>
</td></tr>
</tfoot>
--- conga/luci/site/luci/Extensions/ModelBuilder.py 2007/01/24 19:45:44 1.18
+++ conga/luci/site/luci/Extensions/ModelBuilder.py 2007/02/01 20:49:08 1.19
@@ -585,13 +585,13 @@
raise GeneralError('FATAL',"Couldn't find service name in current list")
- def retrieveXenVMsByName(self, name):
- vms = self.getXENVMs()
+ def retrieveVMsByName(self, name):
+ vms = self.getVMs()
for v in vms:
if v.getName() == name:
return v
- raise GeneralError('FATAL',"Couldn't find xen vm name %s in current node list" % name)
+ raise GeneralError('FATAL',"Couldn't find VM name %s in current list" % name)
def getFenceDevices(self):
if self.fencedevices_ptr == None:
@@ -724,7 +724,7 @@
return None
- def getXENVMs(self):
+ def getVMs(self):
rg_list = list()
if self.resourcemanager_ptr != None:
kids = self.resourcemanager_ptr.getChildren()
--- conga/luci/site/luci/Extensions/cluster_adapters.py 2007/01/31 23:45:09 1.223
+++ conga/luci/site/luci/Extensions/cluster_adapters.py 2007/02/01 20:49:08 1.224
@@ -590,8 +590,6 @@
request.SESSION.set('add_node', add_cluster)
return (False, { 'errors': errors, 'messages': messages })
- cp = model.getClusterPtr()
- cp.incrementConfigVersion()
model.setModified(True)
conf_str = str(model.exportModelAsString())
if not conf_str:
@@ -838,8 +836,6 @@
return (False, {'errors': [ 'Unable to determine cluster name' ]})
try:
- cp = model.getClusterPtr()
- cp.incrementConfigVersion()
model.setModified(True)
conf = model.exportModelAsString()
if not conf:
@@ -1402,7 +1398,7 @@
else:
try:
set_node_flag(self, clustername, rc.hostname(), batch_id,
- CLUSTER_CONFIG, 'Adding new fence device \"%s\"' % retobj)
+ CLUSTER_CONFIG, 'Adding new fence device \"%s\"' % retobj)
except:
pass
@@ -1494,7 +1490,7 @@
else:
try:
set_node_flag(self, clustername, rc.hostname(), batch_id,
- CLUSTER_CONFIG, 'Updating fence device \"%s\"' % retobj)
+ CLUSTER_CONFIG, 'Updating fence device \"%s\"' % retobj)
except:
pass
@@ -1852,8 +1848,6 @@
if error_code == FD_VAL_SUCCESS:
messages.append(error_string)
try:
- cp = model.getClusterPtr()
- cp.incrementConfigVersion()
model.setModified(True)
conf_str = model.exportModelAsString()
if not conf_str:
@@ -1887,7 +1881,7 @@
else:
try:
set_node_flag(self, clustername, rc.hostname(), batch_id,
- CLUSTER_CONFIG, 'Updating cluster configuration')
+ CLUSTER_CONFIG, 'Removing fence device \"%s\"' % fencedev_name)
except:
pass
@@ -2012,21 +2006,33 @@
except KeyError, e:
isNew = True
- if isNew is True:
- xvm = Vm()
- xvm.addAttribute('name', vm_name)
- xvm.addAttribute('path', vm_path)
- rmptr = model.getResourceManagerPtr()
- rmptr.addChild(xvm)
- else:
+ delete_vm = False
+ if request.form.has_key('delete'):
try:
- xvm = model.retrieveXenVMsByName(old_name)
+ xvm = model.retrieveVMsByName(old_name)
if not xvm:
raise Exception, 'not found'
+ rmptr = model.getResourceManagerPtr()
+ rmptr.removeChild(xvm)
+ delete_vm = True
except:
- return (False, {'errors': ['No virtual machine named \"%s\" exists.' % old_name ]})
- xvm.addAttribute('name', vm_name)
- xvm.addAttribute('path', vm_path)
+ return (False, {'errors': ['No virtual machine service named \"%s\" exists.' % old_name ]})
+ else:
+ if isNew is True:
+ xvm = Vm()
+ xvm.addAttribute('name', vm_name)
+ xvm.addAttribute('path', vm_path)
+ rmptr = model.getResourceManagerPtr()
+ rmptr.addChild(xvm)
+ else:
+ try:
+ xvm = model.retrieveVMsByName(old_name)
+ if not xvm:
+ raise Exception, 'not found'
+ except:
+ return (False, {'errors': ['No virtual machine service named \"%s\" exists.' % old_name ]})
+ xvm.addAttribute('name', vm_name)
+ xvm.addAttribute('path', vm_path)
try:
model.setModified(True)
@@ -2059,10 +2065,12 @@
return (False, {'errors': [ 'Error creating virtual machine %s.' % vm_name ]})
try:
- if isNew is True:
- set_node_flag(self, clustername, rc.hostname(), str(batch_number), XENVM_ADD, "Creating virtual machine \'%s\'" % vm_name)
+ if delete_vm is True:
+ set_node_flag(self, clustername, rc.hostname(), str(batch_number), VM_CONFIG, "Deleting virtual machine service \'%s\'" % vm_name)
+ elif isNew is True:
+ set_node_flag(self, clustername, rc.hostname(), str(batch_number), VM_ADD, "Creating virtual machine service \'%s\'" % vm_name)
else:
- set_node_flag(self, clustername, rc.hostname(), str(batch_number), XENVM_CONFIG, "Configuring virtual machine \'%s\'" % vm_name)
+ set_node_flag(self, clustername, rc.hostname(), str(batch_number), VM_CONFIG, "Configuring virtual machine service \'%s\'" % vm_name)
except Exception, e:
luci_log.debug_verbose('validateVM6: failed to set flags: %s' % str(e))
@@ -2337,10 +2345,10 @@
if model.getIsVirtualized() == True:
vmadd = {}
vmadd['Title'] = "Add a Virtual Service"
- vmadd['cfg_type'] = "xenvmadd"
- vmadd['absolute_url'] = url + "?pagetype=" + XENVM_ADD + "&clustername=" + cluname
+ vmadd['cfg_type'] = "vmadd"
+ vmadd['absolute_url'] = url + "?pagetype=" + VM_ADD + "&clustername=" + cluname
vmadd['Description'] = "Add a Virtual Service to this cluster"
- if pagetype == XENVM_ADD:
+ if pagetype == VM_ADD:
vmadd['currentItem'] = True
else:
vmadd['currentItem'] = False
@@ -2360,7 +2368,7 @@
svcfg['currentItem'] = False
services = model.getServices()
- xenvms = model.getXENVMs()
+ vms = model.getVMs()
serviceable = list()
for service in services:
servicename = service.getName()
@@ -2383,19 +2391,19 @@
serviceable.append(svc)
- for xenvm in xenvms:
- xenname = xenvm.getName()
+ for vm in vms:
+ name = vm.getName()
svc = {}
- svc['Title'] = xenname
- svc['cfg_type'] = "xenvm"
- svc['absolute_url'] = url + "?pagetype=" + XENVM_CONFIG + "&servicename=" + xenname + "&clustername=" + cluname
+ svc['Title'] = name
+ svc['cfg_type'] = "vm"
+ svc['absolute_url'] = url + "?pagetype=" + VM_CONFIG + "&servicename=" + name + "&clustername=" + cluname
svc['Description'] = "Configure this Virtual Service"
- if pagetype == XENVM_CONFIG:
+ if pagetype == VM_CONFIG:
try:
xname = request['servicename']
except KeyError, e:
xname = ""
- if xenname == xname:
+ if name == xname:
svc['currentItem'] = True
else:
svc['currentItem'] = False
@@ -3996,8 +4004,6 @@
% (delete_target.getName(), str(e)))
try:
- cp = model.getClusterPtr()
- cp.incrementConfigVersion()
model.setModified(True)
str_buf = model.exportModelAsString()
if not str_buf:
@@ -4823,14 +4829,12 @@
return getNodeLogs(rc)
-def processXenVM(self, req):
- pass
-
-def getXenVMInfo(self, model, request):
+def getVMInfo(self, model, request):
map = {}
baseurl = request['URL']
clustername = request['clustername']
svcname = None
+
try:
svcname = request['servicename']
except KeyError, e:
@@ -4842,22 +4846,22 @@
map['formurl'] = urlstring
try:
- xenvmname = request['servicename']
+ vmname = request['servicename']
except:
try:
- xenvmname = request.form['servicename']
+ vmname = request.form['servicename']
except:
luci_log.debug_verbose('servicename is missing from request')
return map
try:
- xenvm = model.retrieveXenVMsByName(xenvmname)
+ vm = model.retrieveVMsByName(vmname)
except:
luci_log.debug('An error occurred while attempting to get VM %s' \
- % xenvmname)
+ % vmname)
return map
- attrs= xenvm.getAttributes()
+ attrs= vm.getAttributes()
keys = attrs.keys()
for key in keys:
map[key] = attrs[key]
@@ -5305,8 +5309,6 @@
return (False, {'errors': [ '%s: error removing service %s.' % (errstr, name) ]})
try:
- cp = model.getClusterPtr()
- cp.incrementConfigVersion()
model.setModified(True)
conf = model.exportModelAsString()
if not conf:
@@ -5387,8 +5389,6 @@
return errstr + ': the specified resource was not found.'
try:
- cp = model.getClusterPtr()
- cp.incrementConfigVersion()
model.setModified(True)
conf = model.exportModelAsString()
if not conf:
@@ -6702,8 +6702,6 @@
return 'Unable to add the new resource'
try:
- cp = model.getClusterPtr()
- cp.incrementConfigVersion()
model.setModified(True)
conf = model.exportModelAsString()
if not conf:
--- conga/luci/site/luci/Extensions/conga_constants.py 2007/01/23 13:53:36 1.35
+++ conga/luci/site/luci/Extensions/conga_constants.py 2007/02/01 20:49:08 1.36
@@ -13,8 +13,8 @@
NODE_ADD="15"
NODE_PROCESS="16"
NODE_LOGS="17"
-XENVM_ADD="18"
-XENVM_CONFIG="19"
+VM_ADD="18"
+VM_CONFIG="19"
SERVICES="20"
SERVICE_ADD="21"
SERVICE_LIST="22"
@@ -24,7 +24,7 @@
SERVICE_START="26"
SERVICE_STOP="27"
SERVICE_RESTART="28"
-XENVM_PROCESS="29"
+VM_PROCESS="29"
RESOURCES="30"
RESOURCE_ADD="31"
RESOURCE_LIST="32"
More information about the Cluster-devel
mailing list