[Cluster-devel] conga ./conga.spec.in.in luci/site/luci/Extens ...
rmccabe at sourceware.org
rmccabe at sourceware.org
Wed May 2 02:39:56 UTC 2007
CVSROOT: /cvs/cluster
Module name: conga
Branch: RHEL4
Changes by: rmccabe at sourceware.org 2007-05-02 02:39:53
Modified files:
. : conga.spec.in.in
luci/site/luci/Extensions: FenceHandler.py cluster_adapters.py
Log message:
Fix 238656: conga does not set the "nodename" attribute for manual fencing
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/conga.spec.in.in.diff?cvsroot=cluster&only_with_tag=RHEL4&r1=1.67.2.10&r2=1.67.2.11
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/site/luci/Extensions/FenceHandler.py.diff?cvsroot=cluster&only_with_tag=RHEL4&r1=1.17.2.1&r2=1.17.2.2
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/site/luci/Extensions/cluster_adapters.py.diff?cvsroot=cluster&only_with_tag=RHEL4&r1=1.227.2.18&r2=1.227.2.19
--- conga/conga.spec.in.in 2007/05/01 15:57:33 1.67.2.10
+++ conga/conga.spec.in.in 2007/05/02 02:39:53 1.67.2.11
@@ -288,6 +288,9 @@
%changelog
+* Tue Apr 30 2007 Ryan McCabe <rmccabe at redhat.com> 0.9.1-9
+- Fix bz238656 (conga does not set the "nodename" attribute for manual fencing)
+
* Tue Apr 30 2007 Ryan McCabe <rmccabe at redhat.com> 0.9.1-8
- Do not build for ppc64
- Resolves: bz236827
--- conga/luci/site/luci/Extensions/FenceHandler.py 2007/02/12 23:28:16 1.17.2.1
+++ conga/luci/site/luci/Extensions/FenceHandler.py 2007/05/02 02:39:53 1.17.2.2
@@ -29,7 +29,7 @@
FI_PROVIDE_IPADDRESS = 'An IP address must be provided for this Fence'
FI_PROVIDE_ELPAN = 'A LPAN value must be provided for this Egenera Fence'
FI_PROVIDE_EPSERVER = 'A PServer value must be provided for this Egenera Fence'
-FI_PROVIDE_NODENAME = 'A Node Name value must be provided for this SCSI Fence'
+FI_PROVIDE_NODENAME = 'A Node Name value must be provided for this Fence'
ILLEGAL_CHARS_REPLACED = 'Illegal characters were replaced by underscores. Feel free to set a new value.'
@@ -120,7 +120,7 @@
'fence_drac': [],
'fence_rsa': [],
'fence_rps10': [],
- 'fence_manual': []
+ 'fence_manual': ['nodename']
}
FENCE_FD_ATTRS = {
@@ -1094,6 +1094,19 @@
fenceinst.addAttribute('nodename', nodename)
return errors
+def val_manual_fi(form, fenceinst):
+ errors = list()
+
+ try:
+ nodename = form['nodename'].strip()
+ if not nodename:
+ raise Exception, 'blank'
+ except Exception, e:
+ errors.append(FI_PROVIDE_NODENAME)
+
+ fenceinst.addAttribute('nodename', nodename)
+ return errors
+
def val_noop_fi(dummy, _dummy):
return []
@@ -1110,12 +1123,12 @@
'fence_bullpap': val_bullpap_fi,
'fence_xvm': val_xvm_fi,
'fence_scsi': val_scsi_fi,
+ 'fence_manual': val_manual_fi,
'fence_ilo': val_noop_fi,
'fence_ipmilan': val_noop_fi,
'fence_drac': val_noop_fi,
'fence_rsa': val_noop_fi,
- 'fence_rps10': val_noop_fi,
- 'fence_manual': val_noop_fi
+ 'fence_rps10': val_noop_fi
}
def validate_fenceinstance(form, parent_name, fence_agent):
--- conga/luci/site/luci/Extensions/cluster_adapters.py 2007/03/16 03:19:00 1.227.2.18
+++ conga/luci/site/luci/Extensions/cluster_adapters.py 2007/05/02 02:39:53 1.227.2.19
@@ -1877,7 +1877,10 @@
# Add back the tags under the method block
# for the fence instance
- instance_list.append({'name': fencedev_name })
+ if fence_type == 'fence_manual':
+ instance_list.append({'name': fencedev_name, 'nodename': nodename })
+ else:
+ instance_list.append({'name': fencedev_name })
else:
# The user created a new fence device.
retcode, retmsg = validateNewFenceDevice(fence_form, model)
@@ -1891,7 +1894,10 @@
# so the appropriate XML goes into the <method> block inside
# <node><fence>. All we need for that is the device name.
if not 'sharable' in fence_form:
- instance_list.append({'name': fencedev_name })
+ if fence_type == 'fence_manual':
+ instance_list.append({'name': fencedev_name, 'nodename': nodename })
+ else:
+ instance_list.append({'name': fencedev_name })
if fencedev_unknown is True:
# Save any instances for this fence device.
More information about the Cluster-devel
mailing list