From: rmccabe@sourceware.org <rmccabe@sourceware.org>
To: cluster-devel.redhat.com
Subject: [Cluster-devel] conga luci/cluster/fence-macros luci/cluster/f ...
Date: 23 Apr 2008 17:33:43 -0000 [thread overview]
Message-ID: <20080423173343.6842.qmail@sourceware.org> (raw)
CVSROOT: /cvs/cluster
Module name: conga
Changes by: rmccabe at sourceware.org 2008-04-23 17:33:40
Modified files:
luci/cluster : fence-macros form-macros resource-form-macros
validate_fence.js
luci/init.d : luci
luci/site/luci/Extensions: FenceHandler.py LuciClusterInfo.py
StorageReport.py cluster_adapters.py
homebase_adapters.py
luci/site/luci/var: Data.fs
luci/site/luci/var/certs: cacert.config
luci/utils : luci_admin
ricci/modules/cluster/clumon/src/common: Makefile
ricci/modules/cluster/clumon/src/snmp-agent: Makefile
Log message:
Fixes from RHEL 4 and 5
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/cluster/fence-macros.diff?cvsroot=cluster&r1=1.2&r2=1.3
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/cluster/form-macros.diff?cvsroot=cluster&r1=1.222&r2=1.223
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/cluster/resource-form-macros.diff?cvsroot=cluster&r1=1.49&r2=1.50
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/cluster/validate_fence.js.diff?cvsroot=cluster&r1=1.13&r2=1.14
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/init.d/luci.diff?cvsroot=cluster&r1=1.21&r2=1.22
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/site/luci/Extensions/FenceHandler.py.diff?cvsroot=cluster&r1=1.30&r2=1.31
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/site/luci/Extensions/LuciClusterInfo.py.diff?cvsroot=cluster&r1=1.19&r2=1.20
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/site/luci/Extensions/StorageReport.py.diff?cvsroot=cluster&r1=1.29&r2=1.30
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/site/luci/Extensions/cluster_adapters.py.diff?cvsroot=cluster&r1=1.282&r2=1.283
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/site/luci/Extensions/homebase_adapters.py.diff?cvsroot=cluster&r1=1.58&r2=1.59
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/site/luci/var/Data.fs.diff?cvsroot=cluster&r1=1.32&r2=1.33
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/site/luci/var/certs/cacert.config.diff?cvsroot=cluster&r1=1.1&r2=1.2
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/utils/luci_admin.diff?cvsroot=cluster&r1=1.58&r2=1.59
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/ricci/modules/cluster/clumon/src/common/Makefile.diff?cvsroot=cluster&r1=1.6&r2=1.7
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/ricci/modules/cluster/clumon/src/snmp-agent/Makefile.diff?cvsroot=cluster&r1=1.8&r2=1.9
--- conga/luci/cluster/fence-macros 2008/01/02 20:52:22 1.2
+++ conga/luci/cluster/fence-macros 2008/04/23 17:33:37 1.3
@@ -77,6 +77,9 @@
<h2>Add a Sharable Fence Device</h2>
+ <tal:block tal:define="
+ global clusterinfo python: here.getClusterInfo(modelb, request)" />
+
<div id="invisible" class="invisible">
<tal:block metal:use-macro="here/fence-macros/macros/shared-fence-form-list" />
</div>
@@ -136,6 +139,9 @@
<h3>Configure a Fence Device</h3>
+ <tal:block tal:define="
+ global clusterinfo python: here.getClusterInfo(modelb, request)" />
+
<tal:block tal:define="fencedevs python: here.getFenceInfo(modelb, None)">
<tal:block tal:condition="exists: fencedevs/fencedevs">
@@ -188,6 +194,10 @@
<tal:block metal:use-macro="here/fence-macros/macros/fence-form-rsa" />
</tal:block>
+ <tal:block tal:condition="python: cur_fence_type == 'fence_rsb'">
+ <tal:block metal:use-macro="here/fence-macros/macros/fence-form-rsb" />
+ </tal:block>
+
<tal:block tal:condition="python: cur_fence_type == 'fence_brocade'">
<tal:block metal:use-macro="here/fence-macros/macros/fence-form-brocade" />
</tal:block>
@@ -329,6 +339,7 @@
<option name="fence_egenera" value="fence_egenera">Egenera SAN Controller</option>
<option name="fence_ilo" value="fence_ilo">HP iLO</option>
<option name="fence_rsa" value="fence_rsa">IBM RSA II</option>
+ <option name="fence_rsb" value="fence_rsb">Fujitsu Siemens RSB</option>
<option name="fence_bladecenter" value="fence_bladecenter">IBM Blade Center</option>
<option name="fence_bullpap" value="fence_bullpap">Bull PAP</option>
<option name="fence_rps10" value="fence_rps10">RPS10 Serial Switch</option>
@@ -610,6 +621,19 @@
value cur_fencedev/passwd_script | nothing" />
</td>
</tr>
+ <tr tal:condition="exists:clusterinfo/has_fence_ssh">
+ <td>
+ <span title="Enable SSH operation">Use SSH</span>
+ </td>
+ <td>
+ <input tal:condition="exists:cur_fencedev"
+ type="checkbox" name="secure"
+ tal:attributes="
+ checked python:(cur_fencedev and cur_fencedev.has_key('secure') and (cur_fencedev['secure'] == '1' or cur_fencedev['secure'].lower() == 'true')) and 'checked' or ''" />
+ <input tal:condition="not:exists:cur_fencedev"
+ type="checkbox" name="secure" />
+ </td>
+ </tr>
</table>
<tal:block tal:condition="exists: cur_fencedev">
@@ -670,6 +694,19 @@
value cur_fencedev/passwd_script | nothing" />
</td>
</tr>
+ <tr tal:condition="exists:clusterinfo/has_fence_ssh">
+ <td>
+ <span title="Enable SSH operation">Use SSH (DRAC5 only)</span>
+ </td>
+ <td>
+ <input tal:condition="exists:cur_fencedev"
+ type="checkbox" name="secure"
+ tal:attributes="
+ checked python:(cur_fencedev and cur_fencedev.has_key('secure') and (cur_fencedev['secure'] == '1' or cur_fencedev['secure'].lower() == 'true')) and 'checked' or ''" />
+ <input tal:condition="not:exists:cur_fencedev"
+ type="checkbox" name="secure" />
+ </td>
+ </tr>
</table>
<tal:block tal:condition="exists: cur_fencedev">
@@ -701,8 +738,8 @@
<tr>
<td>Hostname</td>
<td>
- <input name="hostname" type="text"
- tal:attributes="value cur_fencedev/hostname | nothing" />
+ <input name="ipaddr" type="text"
+ tal:attributes="value cur_fencedev/ipaddr | nothing" />
</td>
</tr>
<tr>
@@ -742,6 +779,66 @@
</div>
</div>
+<div metal:define-macro="fence-form-rsb"
+ tal:attributes="id cur_fencedev/name | nothing">
+
+ <div id="fence_rsb" class="fencedev">
+ <table>
+ <tr>
+ <td><strong class="cluster">Fence Type</strong></td>
+ <td>Fujitsu Siemens RemoteView Service Board (RSB)</td>
+ </tr>
+ <tr>
+ <td>Name</td>
+ <td>
+ <input name="name" type="text"
+ tal:attributes="value cur_fencedev/name | nothing" />
+ </td>
+ </tr>
+ <tr>
+ <td>Hostname</td>
+ <td>
+ <input name="ipaddr" type="text"
+ tal:attributes="value cur_fencedev/ipaddr | nothing" />
+ </td>
+ </tr>
+ <tr>
+ <td>Login</td>
+ <td>
+ <input name="login" type="text"
+ tal:attributes="value cur_fencedev/login | nothing" />
+ </td>
+ </tr>
+ <tr>
+ <td>Password</td>
+ <td>
+ <input name="passwd" type="password" autocomplete="off"
+ tal:attributes="value nothing" />
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <span title="Full path to a script to generate fence password">Password Script (optional)</span>
+ </td>
+ <td>
+ <input type="text" name="passwd_script"
+ tal:attributes="
+ disabled cur_fencedev/isShared | nothing;
+ value cur_fencedev/passwd_script | nothing" />
+ </td>
+ </tr>
+ </table>
+
+ <tal:block tal:condition="exists: cur_fencedev">
+ <input type="hidden" name="existing_device" value="1" />
+ <input type="hidden" name="orig_name"
+ tal:attributes="value cur_fencedev/name | nothing" />
+ </tal:block>
+
+ <input type="hidden" name="fence_type" value="fence_rsb" />
+ </div>
+</div>
+
<div metal:define-macro="fence-form-brocade"
tal:attributes="id cur_fencedev/name | nothing">
@@ -1321,10 +1418,9 @@
<tr>
<td>Use Lanplus</td>
<td>
- <tal:block tal:condition="exists: cur_fencedev">
+ <tal:block tal:condition="exists:cur_fencedev">
<input name="lanplus" type="checkbox"
- tal:attributes="checked python: ('lanplus' in cur_fencedev and cur_fencedev['lanplus'] == '1') and 'checked' or ''"
- />
+ 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 ''" />
</tal:block>
<tal:block tal:condition="not:exists:cur_fencedev">
<input name="lanplus" type="checkbox" />
@@ -1376,6 +1472,7 @@
<tal:block metal:use-macro="here/fence-macros/macros/fence-form-ilo" />
<tal:block metal:use-macro="here/fence-macros/macros/fence-form-drac" />
<tal:block metal:use-macro="here/fence-macros/macros/fence-form-rsa" />
+ <tal:block metal:use-macro="here/fence-macros/macros/fence-form-rsb" />
<tal:block metal:use-macro="here/fence-macros/macros/fence-form-brocade" />
<tal:block metal:use-macro="here/fence-macros/macros/fence-form-sanbox2" />
<tal:block metal:use-macro="here/fence-macros/macros/fence-form-vixel" />
@@ -1466,6 +1563,19 @@
tal:attributes="value cur_instance/switch | nothing" />
</td>
</tr>
+ <tr tal:condition="exists:clusterinfo/has_fence_ssh">
+ <td>
+ <span title="Enable SSH operation">Use SSH</span>
+ </td>
+ <td>
+ <input tal:condition="exists:cur_instance"
+ type="checkbox" name="secure"
+ tal:attributes="
+ checked python:(cur_instance and cur_instance.has_key('secure') and (cur_instance['secure'] == '1' or cur_instance['secure'].lower() == 'true')) and 'checked' or ''" />
+ <input tal:condition="not:exists:cur_instance"
+ type="checkbox" name="secure" />
+ </td>
+ </tr>
<tr><td colspan="2">
<div class="hbSubmit">
<tal:block tal:condition="exists:cur_fence_instance_id">
@@ -1549,6 +1659,19 @@
tal:attributes="value cur_instance/port | nothing" />
</td>
</tr>
+ <tr tal:condition="exists:clusterinfo/has_fence_ssh">
+ <td>
+ <span title="Enable SSH operation">Use SSH</span>
+ </td>
+ <td>
+ <input tal:condition="exists:cur_instance"
+ type="checkbox" name="secure"
+ tal:attributes="
+ checked python:(cur_instance and cur_instance.has_key('secure') and (cur_instance['secure'] == '1' or cur_instance['secure'].lower() == 'true')) and 'checked' or ''" />
+ <input tal:condition="not:exists:cur_instance"
+ type="checkbox" name="secure" />
+ </td>
+ </tr>
<tr><td colspan="2">
<div class="hbSubmit">
<tal:block tal:condition="exists:cur_fence_instance_id">
@@ -1777,6 +1900,19 @@
tal:attributes="value cur_instance/blade | nothing" />
</td>
</tr>
+ <tr tal:condition="exists:clusterinfo/has_fence_ssh">
+ <td>
+ <span title="Enable SSH operation">Use SSH</span>
+ </td>
+ <td>
+ <input tal:condition="exists:cur_instance"
+ type="checkbox" name="secure"
+ tal:attributes="
+ checked python:(cur_instance and cur_instance.has_key('secure') and (cur_instance['secure'] == '1' or cur_instance['secure'].lower() == 'true')) and 'checked' or ''" />
+ <input tal:condition="not:exists:cur_instance"
+ type="checkbox" name="secure" />
+ </td>
+ </tr>
<tr><td colspan="2">
<div class="hbSubmit">
<tal:block tal:condition="exists:cur_fence_instance_id">
@@ -1849,8 +1985,8 @@
<tr>
<td>Node name</td>
<td>
- <input type="text" name="node" disabled="disabled"
- tal:attributes="value request/node | nothing" />
+ <input type="text" name="node"
+ tal:attributes="value cur_instance/node | nothing" />
</td>
</tr>
</table>
--- conga/luci/cluster/form-macros 2008/02/08 21:47:55 1.222
+++ conga/luci/cluster/form-macros 2008/04/23 17:33:37 1.223
@@ -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'))"
/>
+ <tal:block tal:define="
+ global clusterinfo python: here.getClusterInfo(modelb, request)" />
+
<table class="cluster node" width="100%">
<tr class="cluster node info_top">
<td class="cluster node node_name">
--- conga/luci/cluster/resource-form-macros 2008/03/06 21:27:16 1.49
+++ conga/luci/cluster/resource-form-macros 2008/04/23 17:33:37 1.50
@@ -146,7 +146,10 @@
<option name="TOMCAT-5" value="TOMCAT-5">Tomcat 5</option>
<option name="SAPDatabase" value="SAPDatabase">SAP Database</option>
<option name="SAPInstance" value="SAPInstance">SAP Instance</option>
- <option name="ASEHAagent" value="ASEHAagent">Sybase ASE Failover Instance</option>
+
+ <tal:block tal:condition="python:clusterinfo and clusterinfo['os_major'] == 5 and clusterinfo['os_minor'] > 1">
+ <option name="ASEHAagent" value="ASEHAagent">Sybase ASE Failover Instance</option>
+ </tal:block>
<option name="oracledb" value="oracledb">Oracle 10g Failover Instance</option>
</select>
</form>
@@ -199,7 +202,11 @@
<option name="TOMCAT-5" value="TOMCAT-5">Tomcat 5</option>
<option name="SAPDatabase" value="SAPDatabase">SAP Database</option>
<option name="SAPInstance" value="SAPInstance">SAP Instance</option>
- <option name="ASEHAagent" value="ASEHAagent">Sybase ASE Failover Instance</option>
+
+ <tal:block tal:condition="python:clusterinfo and clusterinfo['os_major'] == 5 and clusterinfo['os_minor'] > 1">
+ <option name="ASEHAagent" value="ASEHAagent">Sybase ASE Failover Instance</option>
+ </tal:block>
+
<option name="oracledb" value="oracledb">Oracle 10g Failover Instance</option>
</select>
</form>
@@ -387,11 +394,12 @@
</tr>
<tr class="systemsTable">
<td class="systemsTable">Monitor link</td>
- <td class="systemsTable">
+ <td class="systemsTable"
+ tal:define="monitor_link res/attrs/monitor_link | nothing">
<input type="checkbox" name="monitorLink"
tal:attributes="
disabled python: editDisabled;
- checked res/attrs/monitor_link | string: checked" />
+ checked python:(monitor_link and monitor_link.lower() == 'true' or monitor_link== '1') and 'checked' or ''" />
</td>
</tr>
</table>
--- conga/luci/cluster/validate_fence.js 2008/01/02 20:52:22 1.13
+++ conga/luci/cluster/validate_fence.js 2008/04/23 17:33:37 1.14
@@ -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,15 +26,16 @@
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' ];
fence_validator['rps10'] = [ 'device', 'port'];
-fence_validator['rsa'] = [ 'hostname', 'login', 'passwd', 'passwd_script' ];
+fence_validator['rsa'] = [ 'ipaddr', 'login', 'passwd', 'passwd_script' ];
+fence_validator['rsb'] = [ 'ipaddr', 'login', 'passwd', 'passwd_script' ];
fence_validator['sanbox2'] = [ 'ipaddr', 'login', 'passwd', 'passwd_script' ];
fence_validator['scsi'] = [];
fence_validator['unknown'] = [];
@@ -76,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);
@@ -125,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/init.d/luci 2008/02/05 18:41:46 1.21
+++ conga/luci/init.d/luci 2008/04/23 17:33:37 1.22
@@ -75,7 +75,7 @@
rm -f -- "$HTTPS_PRIVKEY" "$HTTPS_PUBKEY"
/usr/bin/openssl genrsa -out "$HTTPS_PRIVKEY" "$KEY_BITS" >&/dev/null
- /usr/bin/openssl req -new -x509 -key "$HTTPS_PRIVKEY" -out "$HTTPS_PUBKEY" -days "$KEY_LIFE_DAYS" -config /var/lib/luci/var/certs/cacert.config
+ /usr/bin/openssl req -new -x509 -key "$HTTPS_PRIVKEY" -out "$HTTPS_PUBKEY" -days "$KEY_LIFE_DAYS" -set_serial "$(/bin/date +%s)" -config /var/lib/luci/var/certs/cacert.config
/bin/chmod -- 600 "$HTTPS_PRIVKEY"
/bin/chmod -- 644 "$HTTPS_PUBKEY"
/bin/chown -- $LUCI_USER:$LUCI_GROUP "$HTTPS_PRIVKEY" "$HTTPS_PUBKEY"
--- conga/luci/site/luci/Extensions/FenceHandler.py 2008/01/17 16:36:30 1.30
+++ conga/luci/site/luci/Extensions/FenceHandler.py 2008/04/23 17:33:37 1.31
@@ -543,10 +543,10 @@
errors = list()
try:
- hostname = form['hostname'].strip()
+ hostname = form['ipaddr'].strip()
if not hostname:
raise Exception, 'blank'
- fencedev.addAttribute('hostname', hostname)
+ fencedev.addAttribute('ipaddr', hostname)
except Exception, e:
errors.append(FD_PROVIDE_HOSTNAME)
@@ -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 = {
@@ -822,6 +834,7 @@
'fence_ipmilan': val_ipmilan_fd,
'fence_drac': val_drac_fd,
'fence_rsa': val_rsa_fd,
+ 'fence_rsb': val_rsa_fd, # same params as rsa
'fence_rps10': val_rps10_fd,
'fence_manual': val_noop_fd
}
@@ -902,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):
@@ -915,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):
@@ -980,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):
@@ -1082,6 +1113,7 @@
'fence_ipmilan': val_noop_fi,
'fence_drac': val_noop_fi,
'fence_rsa': val_noop_fi,
+ 'fence_rsb': val_noop_fi,
'fence_rps10': val_noop_fi
}
--- conga/luci/site/luci/Extensions/LuciClusterInfo.py 2008/01/15 04:41:40 1.19
+++ conga/luci/site/luci/Extensions/LuciClusterInfo.py 2008/04/23 17:33:37 1.20
@@ -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/StorageReport.py 2007/11/06 19:29:15 1.29
+++ conga/luci/site/luci/Extensions/StorageReport.py 2008/04/23 17:33:37 1.30
@@ -1,4 +1,4 @@
-# Copyright (C) 2006-2007 Red Hat, Inc.
+# Copyright (C) 2006-2008 Red Hat, Inc.
#
# This program is free software; you can redistribute
# it and/or modify it under the terms of version 2 of the
--- conga/luci/site/luci/Extensions/cluster_adapters.py 2008/03/05 23:08:58 1.282
+++ conga/luci/site/luci/Extensions/cluster_adapters.py 2008/04/23 17:33:37 1.283
@@ -1017,7 +1017,7 @@
luci_log.debug_verbose('validateFdom0: no model')
return (False, { 'errors': [ 'Unable to retrieve the cluster configuration for %s. The configuration XML may contain errors' % clustername ]})
- ret = validate_fdom(self, request)
+ ret = validate_fdom(model, request)
if ret[0] is not True:
return ret
--- conga/luci/site/luci/Extensions/homebase_adapters.py 2008/02/05 20:59:38 1.58
+++ conga/luci/site/luci/Extensions/homebase_adapters.py 2008/04/23 17:33:37 1.59
@@ -206,6 +206,12 @@
except:
cur_host_trusted = not check_certs
+ trust_shown = False
+ try:
+ trust_shown = request.form.has_key('trust_shown')
+ except:
+ trust_shown = False
+
cur_host_fp = None
try:
cur_host_fp = request.form['host_fingerprint'].strip()
@@ -399,6 +405,12 @@
% (e, str(e)))
errors.append('The number of systems entered could not be determined.')
+ trust_shown = False
+ try:
+ trust_shown = request.form.has_key('trust_shown')
+ except:
+ trust_shown = False
+
incomplete = False
i = 0
while i < num_storage:
@@ -617,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/03/24 23:22:09 1.32 and /cvs/cluster/conga/luci/site/luci/var/Data.fs 2008/04/23 17:33:37 1.33 differ
rcsdiff: /cvs/cluster/conga/luci/site/luci/var/Data.fs: diff failed
--- conga/luci/site/luci/var/certs/cacert.config 2006/06/02 00:14:28 1.1
+++ conga/luci/site/luci/var/certs/cacert.config 2008/04/23 17:33:39 1.2
@@ -6,10 +6,10 @@
[ req_distinguished_name ]
C = US
ST = State or Province
-L = Locality
-O = Organization Name
-OU = Organizational Unit Name
-CN = Common Name
-emailAddress = root at localhost
+L = Conga
+O = Conga
+OU = Conga
+CN = luci server
+emailAddress = luci at localhost
[ req_attributes ]
--- conga/luci/utils/luci_admin 2008/01/02 20:52:24 1.58
+++ conga/luci/utils/luci_admin 2008/04/23 17:33:39 1.59
@@ -10,6 +10,7 @@
import sys, os, pwd
from select import select
from stat import S_ISREG
+from time import time
import types
import xml
import xml.dom
@@ -1051,7 +1052,7 @@
# /usr/bin/openssl req -new -x509 -key /var/lib/luci/var/certs/privkey.pem -out /var/lib/luci/var/certs/cacert.pem -days 1825 -config /var/lib/luci/var/certs/cacert.config
command = '/usr/bin/openssl'
- args = [ command, 'req', '-new', '-x509', '-key', SSL_PRIVKEY_PATH, '-out', SSL_PUBKEY_PATH, '-days', '1825', '-config', SSL_KEYCONFIG_PATH ]
+ args = [ command, 'req', '-new', '-x509', '-key', SSL_PRIVKEY_PATH, '-out', SSL_PUBKEY_PATH, '-days', '1825', '-set_serial', str(int(time())), '-config', SSL_KEYCONFIG_PATH ]
exec_cmd(command, args)
# take ownership and restrict access
--- conga/ricci/modules/cluster/clumon/src/common/Makefile 2008/01/02 20:47:36 1.6
+++ conga/ricci/modules/cluster/clumon/src/common/Makefile 2008/04/23 17:33:39 1.7
@@ -18,7 +18,7 @@
OBJECTS = Cluster.o Node.o Service.o ClusterMonitor.o
INCLUDE += -I ../include
-CXXFLAGS += -DPARANOIA=$(PARANOID)
+CXXFLAGS += -DPARANOIA=$(PARANOID) -fPIC
all: ${TARGET}
--- conga/ricci/modules/cluster/clumon/src/snmp-agent/Makefile 2008/01/02 20:47:36 1.8
+++ conga/ricci/modules/cluster/clumon/src/snmp-agent/Makefile 2008/04/23 17:33:39 1.9
@@ -17,15 +17,16 @@
SNMP_LDLAGS = `net-snmp-config --libs`
INCLUDE += -I ../include
-CFLAGS += $(SNMP_CFLAGS) -DPARANOIA=$(PARANOID)
-CXXFLAGS += $(SNMP_CFLAGS) -DPARANOIA=$(PARANOID)
-LDFLAGS += -shared $(SNMP_LDLAGS)
+CFLAGS += -fPIC $(SNMP_CFLAGS) -DPARANOIA=$(PARANOID)
+CXXFLAGS += -fPIC $(SNMP_CFLAGS) -DPARANOIA=$(PARANOID)
+LDFLAGS += -fPIC -shared $(SNMP_LDLAGS)
ifeq ($(PARANOID), 1)
LDFLAGS += ${top_srcdir}/common/paranoid/*.o
else
LDFLAGS += ${top_srcdir}/common/*.o
endif
+LDFLAGS += ../common/*.o
LDFLAGS += -lcman
reply other threads:[~2008-04-23 17:33 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
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=20080423173343.6842.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.