From mboxrd@z Thu Jan 1 00:00:00 1970 From: rmccabe@sourceware.org Date: 23 Apr 2008 17:27:56 -0000 Subject: [Cluster-devel] conga ./conga.spec.in.in luci/cluster/fence-ma ... Message-ID: <20080423172756.826.qmail@sourceware.org> List-Id: To: cluster-devel.redhat.com MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit CVSROOT: /cvs/cluster Module name: conga Branch: RHEL5 Changes by: rmccabe at sourceware.org 2008-04-23 17:27:53 Modified files: . : conga.spec.in.in luci/cluster : fence-macros form-macros resource-form-macros validate_fence.js luci/site/luci/Extensions: FenceHandler.py LuciClusterInfo.py homebase_adapters.py luci/site/luci/var: Data.fs Log message: foward port fixes from RHEL4 Patches: http://sourceware.org/cgi-bin/cvsweb.cgi/conga/conga.spec.in.in.diff?cvsroot=cluster&only_with_tag=RHEL5&r1=1.45.2.82&r2=1.45.2.83 http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/cluster/fence-macros.diff?cvsroot=cluster&only_with_tag=RHEL5&r1=1.2.2.4&r2=1.2.2.5 http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/cluster/form-macros.diff?cvsroot=cluster&only_with_tag=RHEL5&r1=1.90.2.34&r2=1.90.2.35 http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/cluster/resource-form-macros.diff?cvsroot=cluster&only_with_tag=RHEL5&r1=1.21.2.11&r2=1.21.2.12 http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/cluster/validate_fence.js.diff?cvsroot=cluster&only_with_tag=RHEL5&r1=1.1.2.8&r2=1.1.2.9 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.12&r2=1.4.2.13 http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/site/luci/Extensions/LuciClusterInfo.py.diff?cvsroot=cluster&only_with_tag=RHEL5&r1=1.1.4.9&r2=1.1.4.10 http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/site/luci/Extensions/homebase_adapters.py.diff?cvsroot=cluster&only_with_tag=RHEL5&r1=1.34.2.16&r2=1.34.2.17 http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/site/luci/var/Data.fs.diff?cvsroot=cluster&only_with_tag=RHEL5&r1=1.15.2.32&r2=1.15.2.33 --- conga/conga.spec.in.in 2008/04/18 20:34:50 1.45.2.82 +++ conga/conga.spec.in.in 2008/04/23 17:27:10 1.45.2.83 @@ -291,13 +291,15 @@ ### changelog ### %changelog -* Thu Apr 10 2008 Ryan McCabe 0.12.0-8 -- Fix bz443152 (Exception generated when adding or updating failover domains) +-* Fri Apr 18 2008 Ryan McCabe 0.12.0-8 - Fix bz441580 (conga should install 'sg3_utils' and start service 'scsi_reserve' when scsi fencing is used) - Fix bz441573 ("nodename" field for fence_scsi disabled when adding a new fence device/instance) - Fix bz442997 (Luci inserts "hostname" instead of "ipaddr" for rsa II fencing device) - Fix bz442806 (luci shows wrong state for 'Monitor link' checkbox in IP resource) +* Fri Apr 18 2008 Ryan McCabe 0.12.0-7 +- Fix a bug introduced while implementing bz337041 (Add option to not fail-back service) + * Wed Feb 27 2008 Ryan McCabe 0.12.0-6 - Fix bz434586 (Resource tree does not display multiple children of a parent correctly) - Fix bz304931 (Rich Sybase resource agent configuration support) --- conga/luci/cluster/fence-macros 2008/04/16 20:46:09 1.2.2.4 +++ conga/luci/cluster/fence-macros 2008/04/23 17:27:10 1.2.2.5 @@ -77,6 +77,9 @@

Add a Sharable Fence Device

+ + @@ -136,6 +139,9 @@

Configure a Fence Device

+ + @@ -615,6 +621,19 @@ value cur_fencedev/passwd_script | nothing" /> + + + Use SSH + + + + + + @@ -675,6 +694,19 @@ value cur_fencedev/passwd_script | nothing" /> + + + Use SSH (DRAC5 only) + + + + + + @@ -1386,10 +1418,9 @@ Use Lanplus - + + tal:attributes="checked python: (cur_fencedev and cur_fencedev.has_key('lanplus') and (cur_fencedev['lanplus'] == '1' or cur_fencedev['lanplus'].lower() == 'true')) and 'checked' or ''" /> @@ -1532,6 +1563,19 @@ tal:attributes="value cur_instance/switch | nothing" /> + + + Use SSH + + + + + +
@@ -1615,6 +1659,19 @@ tal:attributes="value cur_instance/port | nothing" /> + + + Use SSH + + + + + +
@@ -1843,6 +1900,19 @@ tal:attributes="value cur_instance/blade | nothing" /> + + + Use SSH + + + + + +
--- conga/luci/cluster/form-macros 2008/02/08 21:56:33 1.90.2.34 +++ conga/luci/cluster/form-macros 2008/04/23 17:27:10 1.90.2.35 @@ -512,6 +512,9 @@ global cluster_node_status_str python: (nodeinfo['nodestate'] == '0' and 'Cluster member' or (nodeinfo['nodestate'] == '1' and 'Currently not a cluster participant' or 'This node is not responding'))" /> + +
--- conga/luci/cluster/resource-form-macros 2008/04/18 04:15:52 1.21.2.11 +++ conga/luci/cluster/resource-form-macros 2008/04/23 17:27:10 1.21.2.12 @@ -146,7 +146,10 @@ - + + + + @@ -199,7 +202,11 @@ - + + + + + --- conga/luci/cluster/validate_fence.js 2008/04/16 20:46:09 1.1.2.8 +++ conga/luci/cluster/validate_fence.js 2008/04/23 17:27:10 1.1.2.9 @@ -8,17 +8,17 @@ */ var fence_inst_validator = []; -fence_inst_validator['apc'] = [ 'port', 'switch' ]; -fence_inst_validator['bladecenter'] = [ 'blade' ]; +fence_inst_validator['apc'] = [ 'port', 'switch', 'secure' ]; +fence_inst_validator['bladecenter'] = [ 'blade', 'secure' ]; fence_inst_validator['brocade'] = [ 'port' ]; fence_inst_validator['bullpap'] = [ 'domain' ]; fence_inst_validator['egenera'] = [ 'lpan', 'pserver' ]; -fence_inst_validator['gndb'] = [ 'ipaddress' ]; +fence_inst_validator['gnbd'] = [ 'ipaddress' ]; fence_inst_validator['mcdata'] = [ 'port' ]; fence_inst_validator['sanbox2'] = [ 'port' ]; fence_inst_validator['scsi'] = [ 'nodename' ]; fence_inst_validator['vixel'] = [ 'port' ]; -fence_inst_validator['wti'] = [ 'port' ]; +fence_inst_validator['wti'] = [ 'port', 'secure' ]; fence_inst_validator['xvm'] = [ 'domain' ]; var fence_validator = []; @@ -26,10 +26,10 @@ fence_validator['bladecenter'] = [ 'ipaddr', 'login', 'passwd', 'passwd_script' ]; fence_validator['brocade'] = [ 'ipaddr', 'login', 'passwd', 'passwd_script' ]; fence_validator['bullpap'] = [ 'ipaddr', 'login', 'passwd', 'passwd_script' ]; -fence_validator['drac'] = [ 'ipaddr', 'login', 'passwd', 'passwd_script' ]; +fence_validator['drac'] = [ 'ipaddr', 'login', 'passwd', 'passwd_script', 'secure' ]; fence_validator['egenera'] = [ 'cserver' ]; fence_validator['gnbd'] = [ 'servers' ]; -fence_validator['ilo'] = [ 'hostname', 'login', 'passwd', 'passwd_script' ]; +fence_validator['ilo'] = [ 'hostname', 'login', 'passwd', 'passwd_script', 'secure' ]; fence_validator['ipmilan'] = [ 'ipaddr', 'login', 'passwd', 'passwd_script', 'lanplus', 'auth' ]; fence_validator['manual'] = []; fence_validator['mcdata'] = [ 'ipaddr', 'login', 'passwd', 'passwd_script' ]; @@ -77,7 +77,8 @@ return (errors); } - if (errors && errors.length > 0 && form.passwd_script && !str_is_blank(form.passwd_script.value)) + if (errors && errors.length > 0 && + form.passwd_script && !str_is_blank(form.passwd_script.value)) { clr_form_err(form_elem); return (null); @@ -126,6 +127,9 @@ field_validator['port'] = validate_field_str; field_validator['passwd_script'] = validate_field_noop; +/* iLO, DRAC5, WTI, APC, Bladecenter */ +field_validator['secure'] = validate_field_noop; + /* IPMI fence device */ field_validator['lanplus'] = validate_field_noop; field_validator['auth'] = validate_field_ipmilan_auth; --- conga/luci/site/luci/Extensions/FenceHandler.py 2008/04/16 20:46:09 1.4.2.12 +++ conga/luci/site/luci/Extensions/FenceHandler.py 2008/04/23 17:27:10 1.4.2.13 @@ -654,6 +654,12 @@ except: pass + use_ssh = form.has_key('secure') and (form['secure'] == '1' or form['secure'].lower() == 'true') + if use_ssh: + fencedev.addAttribute('secure', '1') + else: + fencedev.removeAttribute('secure') + return errors def val_rps10_fd(form, fencedev): @@ -803,6 +809,12 @@ if not has_passwd: errors.append(FD_PROVIDE_PASSWD) + use_ssh = form.has_key('secure') and (form['secure'] == '1' or form['secure'].lower() == 'true') + if use_ssh: + fencedev.addAttribute('secure', '1') + else: + fencedev.removeAttribute('secure') + return errors FD_VALIDATE = { @@ -903,6 +915,12 @@ except Exception, e: errors.append(FI_PROVIDE_SWITCH) + use_ssh = form.has_key('secure') and (form['secure'] == '1' or form['secure'].lower() == 'true') + if use_ssh: + fenceinst.addAttribute('secure', '1') + else: + fenceinst.removeAttribute('secure') + return errors def val_wti_fi(form, fenceinst): @@ -916,6 +934,12 @@ except Exception, e: errors.append(FI_PROVIDE_PORT) + use_ssh = form.has_key('secure') and (form['secure'] == '1' or form['secure'].lower() == 'true') + if use_ssh: + fenceinst.addAttribute('secure', '1') + else: + fenceinst.removeAttribute('secure') + return errors def val_brocade_fi(form, fenceinst): @@ -981,6 +1005,12 @@ except Exception, e: errors.append(FI_PROVIDE_BLADE) + use_ssh = form.has_key('secure') and (form['secure'] == '1' or form['secure'].lower() == 'true') + if use_ssh: + fenceinst.addAttribute('secure', '1') + else: + fenceinst.removeAttribute('secure') + return errors def val_mcdata_fi(form, fenceinst): --- conga/luci/site/luci/Extensions/LuciClusterInfo.py 2008/01/23 04:44:32 1.1.4.9 +++ conga/luci/site/luci/Extensions/LuciClusterInfo.py 2008/04/23 17:27:10 1.1.4.10 @@ -575,14 +575,24 @@ return {} clumap = {} + try: cluster_os = model.getClusterOS() - if cluster_os.find('Tikanga'): + if cluster_os.find('Tikanga') != -1: + clumap['os_major'] = 5 os_minor = int(cluster_os[cluster_os.find('5.') + 2]) + clumap['os_minor'] = os_minor if os_minor > 1: clumap['vm_migration_choice'] = True - except: - pass + elif cluster_os.find('Nahant') != -1: + clumap['os_major'] = 4 + os_minor = int(cluster_os[cluster_os.find('Update ') + 7]) + clumap['os_minor'] = os_minor + if os_minor > 6: + clumap['has_fence_ssh'] = True + except Exception, e: + if LUCI_DEBUG_MODE is True: + luci_log.debug_verbose('GCI0a: %r %s' % (e, str(e))) if not model: try: @@ -1626,7 +1636,9 @@ clu_map = {} try: - os_str = resolveOSType(rc.os()) + os_str = rc.os() + clu_map['os_full'] = os_str + os_str = resolveOSType(os_str) clu_map['os'] = os_str clu_map['isVirtualized'] = rc.dom0() except: --- conga/luci/site/luci/Extensions/homebase_adapters.py 2008/02/07 06:52:56 1.34.2.16 +++ conga/luci/site/luci/Extensions/homebase_adapters.py 2008/04/23 17:27:10 1.34.2.17 @@ -629,29 +629,29 @@ luci_log.debug_verbose('VAC5: %s' % err_msg) continue - cur_os = resolveOSType(rc.os()) - if cur_os != cluster_os: - if LUCI_DEBUG_MODE is True: - luci_log.debug_verbose('VAC5a: "%s" / "%s" -> "%s"' \ - % (cluster_os, rc.os(), cur_os)) - incomplete = True - cur_system['errors'] = True - - if not prev_auth: - try: - rc.unauth() - except Exception, e: - if LUCI_DEBUG_MODE is True: - luci_log.debug_verbose('VAC6: %s: %r %s' \ - % (cur_host, e, str(e))) - - err_msg = 'Node %s reports its cluster version is %s and we expect %s' \ - % (cur_host, cur_os, cluster_os) - - errors.append(err_msg) - if LUCI_DEBUG_MODE is True: - luci_log.debug_verbose('VAC7: %s' % err_msg) - continue + #cur_os = resolveOSType(rc.os()) + #if cur_os != cluster_os: + # if LUCI_DEBUG_MODE is True: + # luci_log.debug_verbose('VAC5a: "%s" / "%s" -> "%s"' \ + # % (cluster_os, rc.os(), cur_os)) + # incomplete = True + # cur_system['errors'] = True + + # if not prev_auth: + # try: + # rc.unauth() + # except Exception, e: + # if LUCI_DEBUG_MODE is True: + # luci_log.debug_verbose('VAC6: %s: %r %s' \ + # % (cur_host, e, str(e))) + + # err_msg = 'Node %s reports its cluster version is %s and we expect %s' \ + # % (cur_host, cur_os, cluster_os) + + # errors.append(err_msg) + # if LUCI_DEBUG_MODE is True: + # luci_log.debug_verbose('VAC7: %s' % err_msg) + # continue else: incomplete = True Binary files /cvs/cluster/conga/luci/site/luci/var/Data.fs 2008/04/16 20:46:09 1.15.2.32 and /cvs/cluster/conga/luci/site/luci/var/Data.fs 2008/04/23 17:27:10 1.15.2.33 differ rcsdiff: /cvs/cluster/conga/luci/site/luci/var/Data.fs: diff failed