From: rmccabe@sourceware.org <rmccabe@sourceware.org>
To: cluster-devel.redhat.com
Subject: [Cluster-devel] conga/luci/site/luci/Extensions FenceHandler.p ...
Date: 26 Jul 2007 04:36:34 -0000 [thread overview]
Message-ID: <20070726043634.23973.qmail@sourceware.org> (raw)
CVSROOT: /cvs/cluster
Module name: conga
Branch: RHEL5
Changes by: rmccabe at sourceware.org 2007-07-26 04:36:34
Modified files:
luci/site/luci/Extensions: FenceHandler.py cluster_adapters.py
Log message:
Part of the fix for bz249066
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/site/luci/Extensions/FenceHandler.py.diff?cvsroot=cluster&only_with_tag=RHEL5&r1=1.4.2.7&r2=1.4.2.8
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/site/luci/Extensions/cluster_adapters.py.diff?cvsroot=cluster&only_with_tag=RHEL5&r1=1.120.2.32&r2=1.120.2.33
--- conga/luci/site/luci/Extensions/FenceHandler.py 2007/07/24 15:00:30 1.4.2.7
+++ conga/luci/site/luci/Extensions/FenceHandler.py 2007/07/26 04:36:34 1.4.2.8
@@ -6,6 +6,8 @@
# Free Software Foundation.
from ClusterModel.Device import Device
+from conga_constants import LUCI_DEBUG_MODE
+from LuciSyslog import get_logger
FD_VAL_FAIL = 1
FD_VAL_SUCCESS = 0
@@ -152,6 +154,7 @@
'fence_manual': ['name']
}
+luci_log = get_logger()
def makeNCName(name):
### name must conform to relaxNG ID type ##
@@ -178,6 +181,8 @@
model.setModified(True)
return (FD_VAL_SUCCESS, fencedev.getAttribute('name'))
except Exception, e:
+ if LUCI_DEBUG_MODE is True:
+ luci_log.debug_verbose('VNFD0: %r %s' % (e, str(e)))
ret = [ FD_PROVIDE_AGENT ]
return (FD_VAL_FAIL, ret)
@@ -188,6 +193,8 @@
if not old_fence_name:
raise Exception, 'blank'
except Exception, e:
+ if LUCI_DEBUG_MODE is True:
+ luci_log.debug_verbose('VFD0: %r %s' % (e, str(e)))
return (FD_VAL_FAIL, [ FD_PROVIDE_NAME ])
fencedev = None
@@ -200,6 +207,8 @@
if fencedev is None:
raise Exception, 'fencedev is None'
except Exception, e:
+ if LUCI_DEBUG_MODE is True:
+ luci_log.debug_verbose('VFD1: %r %s' % (e, str(e)))
return (FD_VAL_FAIL, [ FD_PROVIDE_NAME ])
try:
@@ -208,6 +217,8 @@
model.setModified(True)
return (FD_VAL_SUCCESS, fencedev.getAttribute('name'))
except Exception, e:
+ if LUCI_DEBUG_MODE is True:
+ luci_log.debug_verbose('VFD2: %r %s' % (e, str(e)))
ret = [ FD_PROVIDE_NAME ]
return (FD_VAL_FAIL, ret)
@@ -219,6 +230,7 @@
ip = form['ipaddr'].strip()
if not ip:
raise Exception, 'blank'
+ fencedev.addAttribute('ipaddr', ip)
except Exception, e:
errors.append(FD_PROVIDE_IP)
@@ -226,6 +238,7 @@
log = form['login'].strip()
if not log:
raise Exception, 'blank'
+ fencedev.addAttribute('login', log)
except Exception, e:
errors.append(FD_PROVIDE_LOGIN)
@@ -257,8 +270,6 @@
if not has_passwd:
errors.append(FD_PROVIDE_PASSWD)
- fencedev.addAttribute('ipaddr', ip)
- fencedev.addAttribute('login', log)
return errors
def val_wti_fd(form, fencedev):
@@ -268,6 +279,7 @@
ip = form['ipaddr'].strip()
if not ip:
raise Exception, 'blank'
+ fencedev.addAttribute('ipaddr', ip)
except Exception, e:
errors.append(FD_PROVIDE_IP)
@@ -299,7 +311,6 @@
if not has_passwd:
errors.append(FD_PROVIDE_PASSWD)
- fencedev.addAttribute('ipaddr', ip)
return errors
def val_brocade_fd(form, fencedev):
@@ -309,6 +320,7 @@
ip = form['ipaddr'].strip()
if not ip:
raise Exception, 'blank'
+ fencedev.addAttribute('ipaddr', ip)
except Exception, e:
errors.append(FD_PROVIDE_IP)
@@ -316,6 +328,7 @@
log = form['login'].strip()
if not log:
raise Exception, 'blank'
+ fencedev.addAttribute('login', log)
except Exception, e:
errors.append(FD_PROVIDE_LOGIN)
@@ -347,8 +360,6 @@
if not has_passwd:
errors.append(FD_PROVIDE_PASSWD)
- fencedev.addAttribute('ipaddr', ip)
- fencedev.addAttribute('login', log)
return errors
def val_vixel_fd(form, fencedev):
@@ -358,6 +369,7 @@
ip = form['ipaddr'].strip()
if not ip:
raise Exception, 'blank'
+ fencedev.addAttribute('ipaddr', ip)
except Exception, e:
errors.append(FD_PROVIDE_IP)
@@ -389,7 +401,6 @@
if not has_passwd:
errors.append(FD_PROVIDE_PASSWD)
- fencedev.addAttribute('ipaddr', ip)
return errors
def val_mcdata_fd(form, fencedev):
@@ -399,6 +410,7 @@
ip = form['ipaddr'].strip()
if not ip:
raise Exception, 'blank'
+ fencedev.addAttribute('ipaddr', ip)
except Exception, e:
errors.append(FD_PROVIDE_IP)
@@ -406,6 +418,7 @@
log = form['login'].strip()
if not log:
raise Exception, 'blank'
+ fencedev.addAttribute('login', log)
except Exception, e:
errors.append(FD_PROVIDE_LOGIN)
@@ -437,8 +450,6 @@
if not has_passwd:
errors.append(FD_PROVIDE_PASSWD)
- fencedev.addAttribute('ipaddr', ip)
- fencedev.addAttribute('login', log)
return errors
def val_gnbd_fd(form, fencedev):
@@ -448,10 +459,10 @@
server = form['servers'].strip()
if not server:
raise Exception, 'blank'
+ fencedev.addAttribute('servers', server)
except Exception, e:
errors.append(FD_PROVIDE_SERVER)
- fencedev.addAttribute('servers', server)
return errors
def val_egenera_fd(form, fencedev):
@@ -461,10 +472,10 @@
cserver = form['cserver'].strip()
if not cserver:
raise Exception, 'blank'
+ fencedev.addAttribute('cserver', cserver)
except Exception, e:
errors.append(FD_PROVIDE_CSERVER)
- fencedev.addAttribute('cserver', cserver)
return errors
def val_sanbox2_fd(form, fencedev):
@@ -474,6 +485,7 @@
ip = form['ipaddr'].strip()
if not ip:
raise Exception, 'blank'
+ fencedev.addAttribute('ipaddr', ip)
except Exception, e:
errors.append(FD_PROVIDE_IP)
@@ -481,6 +493,7 @@
log = form['login'].strip()
if not log:
raise Exception, 'blank'
+ fencedev.addAttribute('login', log)
except Exception, e:
errors.append(FD_PROVIDE_LOGIN)
@@ -512,8 +525,6 @@
if not has_passwd:
errors.append(FD_PROVIDE_PASSWD)
- fencedev.addAttribute('ipaddr', ip)
- fencedev.addAttribute('login', log)
return errors
def val_bladecenter_fd(form, fencedev):
@@ -523,6 +534,7 @@
ip = form['ipaddr'].strip()
if not ip:
raise Exception, 'blank'
+ fencedev.addAttribute('ipaddr', ip)
except Exception, e:
errors.append(FD_PROVIDE_IP)
@@ -530,6 +542,7 @@
log = form['login'].strip()
if not log:
raise Exception, 'blank'
+ fencedev.addAttribute('login', log)
except Exception, e:
errors.append(FD_PROVIDE_LOGIN)
@@ -561,8 +574,6 @@
if not has_passwd:
errors.append(FD_PROVIDE_PASSWD)
- fencedev.addAttribute('ipaddr', ip)
- fencedev.addAttribute('login', log)
return errors
def val_bullpap_fd(form, fencedev):
@@ -572,6 +583,7 @@
ip = form['ipaddr'].strip()
if not ip:
raise Exception, 'blank'
+ fencedev.addAttribute('ipaddr', ip)
except Exception, e:
errors.append(FD_PROVIDE_IP)
@@ -579,6 +591,7 @@
log = form['login'].strip()
if not log:
raise Exception, 'blank'
+ fencedev.addAttribute('login', log)
except Exception, e:
errors.append(FD_PROVIDE_LOGIN)
@@ -610,8 +623,6 @@
if not has_passwd:
errors.append(FD_PROVIDE_PASSWD)
- fencedev.addAttribute('ipaddr', ip)
- fencedev.addAttribute('login', log)
return errors
def val_noop_fd(dummy, _dummy):
@@ -626,6 +637,7 @@
hostname = form['hostname'].strip()
if not hostname:
raise Exception, 'blank'
+ fencedev.addAttribute('hostname', hostname)
except Exception, e:
errors.append(FD_PROVIDE_HOSTNAME)
@@ -633,6 +645,7 @@
log = form['login'].strip()
if not log:
raise Exception, 'blank'
+ fencedev.addAttribute('login', log)
except Exception, e:
errors.append(FD_PROVIDE_LOGIN)
@@ -664,8 +677,6 @@
if not has_passwd:
errors.append(FD_PROVIDE_PASSWD)
- fencedev.addAttribute('hostname', hostname)
- fencedev.addAttribute('login', log)
return errors
def val_drac_fd(form, fencedev):
@@ -675,6 +686,7 @@
ip = form['ipaddr'].strip()
if not ip:
raise Exception, 'blank'
+ fencedev.addAttribute('ipaddr', ip)
except Exception, e:
errors.append(FD_PROVIDE_IP)
@@ -682,6 +694,7 @@
log = form['login'].strip()
if not log:
raise Exception, 'blank'
+ fencedev.addAttribute('login', log)
except Exception, e:
errors.append(FD_PROVIDE_LOGIN)
@@ -713,8 +726,6 @@
if not has_passwd:
errors.append(FD_PROVIDE_PASSWD)
- fencedev.addAttribute('ipaddr', ip)
- fencedev.addAttribute('login', log)
return errors
def val_rps10_fd(form, fencedev):
@@ -724,6 +735,7 @@
device = form['device'].strip()
if not device:
raise Exception, 'blank'
+ fencedev.addAttribute('device', device)
except Exception, e:
errors.append(FD_PROVIDE_DEVICE)
@@ -731,11 +743,10 @@
port = form['port'].strip()
if not port:
raise Exception, 'blank'
+ fencedev.addAttribute('port', port)
except Exception, e:
errors.append(FD_PROVIDE_PORT)
- fencedev.addAttribute('device', device)
- fencedev.addAttribute('port', port)
return errors
def val_ipmilan_fd(form, fencedev):
@@ -745,6 +756,7 @@
ip = form['ipaddr'].strip()
if not ip:
raise Exception, 'blank'
+ fencedev.addAttribute('ipaddr', ip)
except Exception, e:
errors.append(FD_PROVIDE_IP)
@@ -752,6 +764,7 @@
log = form['login'].strip()
if not log:
raise Exception, 'blank'
+ fencedev.addAttribute('login', log)
except Exception, e:
errors.append(FD_PROVIDE_LOGIN)
@@ -764,6 +777,7 @@
fencedev.addAttribute('passwd', form['passwd'])
else:
raise Exception, 'blank'
+
fencedev.addAttribute('passwd', pwd)
has_passwd = True
except Exception, e:
@@ -809,8 +823,6 @@
except Exception, e:
fencedev.removeAttribute('lanplus')
- fencedev.addAttribute('ipaddr', ip)
- fencedev.addAttribute('login', log)
return errors
def val_ilo_fd(form, fencedev):
@@ -820,6 +832,7 @@
hostname = form['hostname'].strip()
if not hostname:
raise Exception, 'blank'
+ fencedev.addAttribute('hostname', hostname)
except Exception, e:
errors.append(FD_PROVIDE_HOSTNAME)
@@ -827,6 +840,7 @@
log = form['login'].strip()
if not log:
raise Exception, 'blank'
+ fencedev.addAttribute('login', log)
except Exception, e:
errors.append(FD_PROVIDE_LOGIN)
@@ -858,8 +872,6 @@
if not has_passwd:
errors.append(FD_PROVIDE_PASSWD)
- fencedev.addAttribute('hostname', hostname)
- fencedev.addAttribute('login', log)
return errors
FD_VALIDATE = {
@@ -923,10 +935,15 @@
if len(ret) < 1 and name_change is True:
try:
model.rectifyNewFencedevicenameWithFences(old_fence_name, fence_name)
- except:
+ except Exception, e:
+ if LUCI_DEBUG_MODE is True:
+ luci_log.debug_verbose('vfd0: %s %r %s' \
+ % (fence_agent, e, str(e)))
return [ FD_NEW_FAIL % fence_agent ]
return ret
- except:
+ except Exception, e:
+ if LUCI_DEBUG_MODE is True:
+ luci_log.debug_verbose('vfd1: %s %r %s' % (fence_agent, e, str(e)))
return [ FD_NEW_FAIL % fence_agent ]
# Validation Methods for Fence Instances
@@ -938,6 +955,7 @@
port = form['port'].strip()
if not port:
raise Exception, 'blank'
+ fenceinst.addAttribute('port', port)
except Exception, e:
errors.append(FI_PROVIDE_PORT)
@@ -952,7 +970,6 @@
except Exception, e:
errors.append(FI_PROVIDE_SWITCH)
- fenceinst.addAttribute('port', port)
return errors
def val_wti_fi(form, fenceinst):
@@ -962,10 +979,10 @@
port = form['port'].strip()
if not port:
raise Exception, 'blank'
+ fenceinst.addAttribute('port', port)
except Exception, e:
errors.append(FI_PROVIDE_PORT)
- fenceinst.addAttribute('port', port)
return errors
def val_brocade_fi(form, fenceinst):
@@ -975,10 +992,10 @@
port = form['port'].strip()
if not port:
raise Exception, 'blank'
+ fenceinst.addAttribute('port', port)
except Exception, e:
errors.append(FI_PROVIDE_PORT)
- fenceinst.addAttribute('port', port)
return errors
def val_vixel_fi(form, fenceinst):
@@ -988,10 +1005,10 @@
port = form['port'].strip()
if not port:
raise Exception, 'blank'
+ fenceinst.addAttribute('port', port)
except Exception, e:
errors.append(FI_PROVIDE_PORT)
- fenceinst.addAttribute('port', port)
return errors
def val_gnbd_fi(form, fenceinst):
@@ -1001,10 +1018,10 @@
ip = form['ipaddress'].strip()
if not ip:
raise Exception, 'blank'
+ fenceinst.addAttribute('ipaddress', ip)
except Exception, e:
errors.append(FI_PROVIDE_IPADDRESS)
- fenceinst.addAttribute('ipaddress', ip)
return errors
def val_sanbox2_fi(form, fenceinst):
@@ -1014,10 +1031,10 @@
port = form['port'].strip()
if not port:
raise Exception, 'blank'
+ fenceinst.addAttribute('port', port)
except Exception, e:
errors.append(FI_PROVIDE_PORT)
- fenceinst.addAttribute('port', port)
return errors
def val_bladecenter_fi(form, fenceinst):
@@ -1027,10 +1044,10 @@
blade = form['blade'].strip()
if not blade:
raise Exception, 'blank'
+ fenceinst.addAttribute('blade', blade)
except Exception, e:
errors.append(FI_PROVIDE_BLADE)
- fenceinst.addAttribute('blade', blade)
return errors
def val_mcdata_fi(form, fenceinst):
@@ -1040,10 +1057,10 @@
port = form['port'].strip()
if not port:
raise Exception, 'blank'
+ fenceinst.addAttribute('port', port)
except Exception, e:
errors.append(FI_PROVIDE_PORT)
- fenceinst.addAttribute('port', port)
return errors
def val_egenera_fi(form, fenceinst):
@@ -1053,6 +1070,7 @@
lpan = form['lpan'].strip()
if not lpan:
raise Exception, 'blank'
+ fenceinst.addAttribute('lpan', lpan)
except Exception, e:
errors.append(FI_PROVIDE_ELPAN)
@@ -1060,11 +1078,10 @@
pserver = form['pserver'].strip()
if not pserver:
raise Exception, 'blank'
+ fenceinst.addAttribute('pserver', pserver)
except Exception, e:
errors.append(FI_PROVIDE_ELPAN)
- fenceinst.addAttribute('lpan', lpan)
- fenceinst.addAttribute('pserver', pserver)
return errors
def val_bullpap_fi(form, fenceinst):
@@ -1074,10 +1091,10 @@
domain = form['domain'].strip()
if not domain:
raise Exception, 'blank'
+ fenceinst.addAttribute('domain', domain)
except Exception, e:
errors.append(FI_PROVIDE_DOMAIN)
- fenceinst.addAttribute('domain', domain)
return errors
def val_xvm_fi(form, fenceinst):
@@ -1087,10 +1104,10 @@
domain = form['domain'].strip()
if not domain:
raise Exception, 'blank'
+ fenceinst.addAttribute('domain', domain)
except Exception, e:
errors.append(FI_PROVIDE_DOMAIN)
- fenceinst.addAttribute('domain', domain)
return errors
def val_scsi_fi(form, fenceinst):
@@ -1100,10 +1117,10 @@
nodename = form['nodename'].strip()
if not nodename:
raise Exception, 'blank'
+ fenceinst.addAttribute('nodename', nodename)
except Exception, e:
errors.append(FI_PROVIDE_NODENAME)
- fenceinst.addAttribute('nodename', nodename)
return errors
def val_noop_fi(dummy, _dummy):
@@ -1150,6 +1167,8 @@
if len(ret) > 0:
return (FD_VAL_FAIL, ret)
except Exception, e:
+ if LUCI_DEBUG_MODE is True:
+ luci_log.debug_verbose('vfi0: %s: %r %s' % (fence_agent, e, str(e)))
return (FD_VAL_FAIL, [ FI_NEW_FAIL % fence_agent ])
return (FD_VAL_SUCCESS, fenceinst)
--- conga/luci/site/luci/Extensions/cluster_adapters.py 2007/06/27 06:19:22 1.120.2.32
+++ conga/luci/site/luci/Extensions/cluster_adapters.py 2007/07/26 04:36:34 1.120.2.33
@@ -832,7 +832,7 @@
recovery = None
else:
if recovery != 'restart' and recovery != 'relocate' and recovery != 'disable':
- errors.append('You entered an invalid recovery option: "%s" Valid options are "restart" "relocate" and "disable."')
+ errors.append('You entered an invalid recovery option: "%s" Valid options are "restart" "relocate" and "disable"')
except:
recovery = None
@@ -2591,7 +2591,8 @@
54: validateFenceEdit,
55: validateDaemonProperties,
57: deleteFenceDevice,
- 58: validateNodeFenceConfig
+ 58: validateNodeFenceConfig,
+ 80: process_cluster_conf_editor
}
def validatePost(self, request):
next reply other threads:[~2007-07-26 4:36 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-07-26 4:36 rmccabe [this message]
-- strict thread matches above, loose matches on Subject: below --
2010-08-06 20:17 [Cluster-devel] conga/luci/site/luci/Extensions FenceHandler.p rmccabe
2008-01-02 21:00 rmccabe
2007-10-03 19:40 rmccabe
2007-09-21 3:02 rmccabe
2007-05-15 21:42 rmccabe
2007-01-19 21:48 rmccabe
2007-01-19 19:41 rmccabe
2007-01-11 22:49 rmccabe
2006-12-20 22:06 jparsons
2006-12-20 20:24 jparsons
2006-12-18 22:16 jparsons
2006-12-18 15:18 jparsons
2006-12-18 4:44 jparsons
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20070726043634.23973.qmail@sourceware.org \
--to=rmccabe@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.