All of lore.kernel.org
 help / color / mirror / Atom feed
* [Cluster-devel] conga/luci/site/luci/Extensions LuciDB.py Reso ...
@ 2007-05-22  2:45 rmccabe
  0 siblings, 0 replies; only message in thread
From: rmccabe @ 2007-05-22  2:45 UTC (permalink / raw)
  To: cluster-devel.redhat.com

CVSROOT:	/cvs/cluster
Module name:	conga
Branch: 	EXPERIMENTAL
Changes by:	rmccabe at sourceware.org	2007-05-22 02:45:54

Modified files:
	luci/site/luci/Extensions: LuciDB.py ResourceHandler.py 
	                           homebase_adapters.py 

Log message:
	backend support for SAPInstance and SAPDatabase

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/site/luci/Extensions/LuciDB.py.diff?cvsroot=cluster&only_with_tag=EXPERIMENTAL&r1=1.1.2.9&r2=1.1.2.10
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/site/luci/Extensions/ResourceHandler.py.diff?cvsroot=cluster&only_with_tag=EXPERIMENTAL&r1=1.1.2.3&r2=1.1.2.4
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/site/luci/Extensions/homebase_adapters.py.diff?cvsroot=cluster&only_with_tag=EXPERIMENTAL&r1=1.50.2.6&r2=1.50.2.7

--- conga/luci/site/luci/Extensions/Attic/LuciDB.py	2007/05/18 05:23:55	1.1.2.9
+++ conga/luci/site/luci/Extensions/Attic/LuciDB.py	2007/05/22 02:45:54	1.1.2.10
@@ -667,6 +667,8 @@
 			luci_log.debug_verbose('GC0: %r %s' % (e, str(e)))
 		return None
 
+	if isAdmin(self):
+		return clusters
 	return check_clusters(self, clusters)
 
 def getStorage(self):
@@ -682,12 +684,12 @@
 
 def check_clusters(self, clusters):
 	user = getSecurityManager().getUser()
-	return filter(lambda x: user.has_role('View', x[1]), clusters)
+	return filter(lambda x: user.has_permission('View', x[1]), clusters)
 
 def cluster_permission_check(cluster):
 	try:
 		user = getSecurityManager().getUser()
-		if user.has_role('View', cluster[1]):
+		if user.has_permission('View', cluster[1]):
 			return True
 	except:
 		pass
@@ -695,7 +697,7 @@
 
 def allowed_systems(self, systems):
 	user = getSecurityManager().getUser()
-	return filter(lambda x: user.has_role('View', x[1]), systems)
+	return filter(lambda x: user.has_permission('View', x[1]), systems)
 
 def access_to_host_allowed(self, hostname, allowed_systems_list):
 	allowed = dict(map(lambda x: [ x[0], None ], allowed_systems_list))
--- conga/luci/site/luci/Extensions/Attic/ResourceHandler.py	2007/05/15 21:42:21	1.1.2.3
+++ conga/luci/site/luci/Extensions/Attic/ResourceHandler.py	2007/05/22 02:45:54	1.1.2.4
@@ -19,6 +19,8 @@
 from ClusterModel.OpenLDAP import OpenLDAP
 from ClusterModel.LVM import LVM
 from ClusterModel.MySQL import MySQL
+from ClusterModel.SAPDatabase import SAPDatabase
+from ClusterModel.SAPInstance import SAPInstance
 from LuciSyslog import get_logger
 from conga_constants import LUCI_DEBUG_MODE
 
@@ -67,7 +69,7 @@
 			raise KeyError, 'No IP address was given'
 		res.addAttribute('address', addr)
 	except KeyError, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addIp4: %s' % err)
@@ -88,7 +90,7 @@
 			raise Exception, 'No mount point was given for "%s"' % rname
 		res.addAttribute('mountpoint', mountpoint)
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addFs6: %s' % err)
@@ -99,7 +101,7 @@
 			raise Exception, 'No device was given for "%s"' % rname
 		res.addAttribute('device', device)
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addFs7: %s' % err)
@@ -115,7 +117,7 @@
 		except:
 			pass
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addFs8: %s' % err)
@@ -126,7 +128,7 @@
 			raise Exception, 'No filesystem type was given for "%s"' % rname
 		res.addAttribute('fstype', fstype)
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addFs9: %s' % err)
@@ -168,7 +170,7 @@
 			raise Exception, 'No mount point was given for "%s"' % rname
 		res.addAttribute('mountpoint', mountpoint)
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addGfs5: %s' % err)
@@ -179,7 +181,7 @@
 			raise Exception, 'No device was given for "%s"' % rname
 		res.addAttribute('device', device)
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addGfs6: %s' % err)
@@ -195,7 +197,7 @@
 		except:
 			pass
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addGfs7: %s' % err)
@@ -227,7 +229,7 @@
 			raise Exception, 'No mount point was given for "%s"' % rname
 		res.addAttribute('mountpoint', mountpoint)
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addNfsm5: %s' % err)
@@ -238,7 +240,7 @@
 			raise Exception, 'No host server was given for "%s"' % rname
 		res.addAttribute('host', host)
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addNfsm6 error: %s' % err)
@@ -254,7 +256,7 @@
 		except:
 			pass
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addNfsm7: %s' % err)
@@ -265,7 +267,7 @@
 			raise Exception, 'No export path was given for "%s"' % rname
 		res.addAttribute('exportpath', exportpath)
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addNfsm8: %s' % err)
@@ -277,7 +279,7 @@
 								% (nfstype, rname)
 		res.addAttribute('nfstype', nfstype)
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addNfsm9: %s' % err)
@@ -298,7 +300,7 @@
 			raise Exception, 'No target was given for "%s"' % rname
 		res.addAttribute('target', target)
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addNfsc5: %s' % err)
@@ -314,7 +316,7 @@
 		except:
 			pass
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addNfsc6: %s' % err)
@@ -339,7 +341,7 @@
 			raise Exception, 'No path to a script file was given for this "%s"' % rname
 		res.addAttribute('file', path)
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addScr5: %s' % err)
@@ -355,7 +357,7 @@
 			raise Exception, 'No workgroup was given for "%s"' % rname
 		res.addAttribute('workgroup', workgroup)
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addSmb5: %s' % err)
@@ -371,7 +373,7 @@
 			raise KeyError, 'No server root was given for "%s"' % rname
 		res.addAttribute('server_root', server_root)
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addApache5: %s' % err)
@@ -382,7 +384,7 @@
 			raise KeyError, 'No path to the Apache configuration file was given for "%s"' % rname
 		res.addAttribute('config_file', config_file)
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addApache6: %s' % err)
@@ -398,7 +400,7 @@
 		except:
 			pass
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addApache7: %s' % err)
@@ -409,7 +411,7 @@
 	except KeyError, e:
 		res.addAttribute('shutdown_wait', '0')
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addApache7: %s' % err)
@@ -425,7 +427,7 @@
 			raise KeyError, 'No path to the MySQL configuration file was given for "%s"' % rname
 		res.addAttribute('config_file', config_file)
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addMySQL5: %s' % err)
@@ -436,7 +438,7 @@
 			raise KeyError, 'No address was given for "%s"' % rname
 		res.addAttribute('listen_address', listen_addr)
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addMySQL6: %s' % err)
@@ -452,7 +454,7 @@
 		except:
 			pass
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addMySQL7: %s' % err)
@@ -463,7 +465,7 @@
 	except KeyError, e:
 		res.addAttribute('shutdown_wait', '0')
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addMySQL7: %s' % err)
@@ -479,7 +481,7 @@
 			raise KeyError, 'No URL list was given for "%s"' % rname
 		res.addAttribute('url_list', url_list)
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addOpenLDAP5: %s' % err)
@@ -490,7 +492,7 @@
 			raise KeyError, 'No path to the OpenLDAP configuration file was given for "%s"' % rname
 		res.addAttribute('config_file', config_file)
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addOpenLDAP6: %s' % err)
@@ -506,7 +508,7 @@
 		except:
 			pass
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addOpenLDAP7: %s' % err)
@@ -517,7 +519,7 @@
 	except KeyError, e:
 		res.addAttribute('shutdown_wait', '0')
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addOpenLDAP7: %s' % err)
@@ -532,7 +534,7 @@
 			raise KeyError, 'No postmaster user was given for "%s"' % rname
 		res.addAttribute('postmaster_user', user)
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addPostgreSQL85: %s' % err)
@@ -543,7 +545,7 @@
 			raise KeyError, 'No path to the PostgreSQL 8 configuration file was given for "%s"' % rname
 		res.addAttribute('config_file', config_file)
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addPostgreSQL86: %s' % err)
@@ -559,7 +561,7 @@
 		except:
 			pass
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addPostgreSQL87: %s' % err)
@@ -570,7 +572,7 @@
 	except KeyError, e:
 		res.addAttribute('shutdown_wait', '0')
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addPostgreSQL87: %s' % err)
@@ -586,7 +588,7 @@
 			raise KeyError, 'No Tomcat user was given for "%s"' % rname
 		res.addAttribute('tomcat_user', user)
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addTomcat55: %s' % err)
@@ -597,7 +599,7 @@
 			raise KeyError, 'No path to the Tomcat 5 configuration file was given for "%s"' % rname
 		res.addAttribute('config_file', config_file)
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addTomcat56: %s' % err)
@@ -613,7 +615,7 @@
 		except:
 			pass
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addTomcat57: %s' % err)
@@ -624,7 +626,7 @@
 			raise KeyError, 'No cataliny base directory was given for "%s"' % rname
 		res.addAttribute('catalina_base', catalina_base)
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addTomcat58: %s' % err)
@@ -635,7 +637,7 @@
 	except KeyError, e:
 		res.addAttribute('shutdown_wait', '0')
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addTomcat59: %s' % err)
@@ -651,7 +653,7 @@
 			raise KeyError, 'No volume group name was given for "%s"' % rname
 		res.addAttribute('vg_name', vg_name)
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addLVM5: %s' % err)
@@ -662,28 +664,106 @@
 			raise KeyError, 'No logical volume name was given for "%s"' % rname
 		res.addAttribute('lv_name', lv_name)
 	except Exception, e:
-		err = repr(e)
+		err = str(e)
 		errors.append(err)
 		if LUCI_DEBUG_MODE is True:
 			luci_log.debug_verbose('addLVM6: %s' % err)
 
 	return errors
 
+def addSAPDatabase(res, rname, form, model):
+	errors = list()
+
+	try:
+		sid = form['SID'].strip()
+		if not sid:
+			raise KeyError, 'No SAP system identifier was given.'
+		res.addAttribute('SID', sid)
+	except Exception, e:
+		err = str(e)
+		errors.append(err)
+		if LUCI_DEBUG_MODE is True:
+			luci_log.debug_verbose('addSAPD0: %s' % err)
+
+	try:
+		dbtype = form['DBTYPE'].strip()
+		if not dbtype in [ 'ORA', 'DB6', 'ADA' ]:
+			raise Exception, 'You gave an invalid database type: %s' % dbtype
+		res.addAttribute('DBTYPE', dbtype)
+	except Exception, e:
+		err = str(e)
+		errors.append(err)
+		if LUCI_DEBUG_MODE is True:
+			luci_log.debug_verbose('addSAPD1: %s' % err)
+
+	if form.has_key('DBJ2EE_ONLY'):
+		res.addAttribute('DBJ2EE_ONLY', 'TRUE')
+	else:
+		res.removeAttribute('DBJ2EE_ONLY')
+
+	# Optional string parameters
+	for param in [ 'DIR_EXECUTABLE', 'NETSERVICENAME', 'DIR_BOOTSTRAP', 'DIR_SECSTORE' ]:
+		try:
+			pval = form[param].strip()
+			if not pval:
+				raise KeyError, 'blank'
+			res.addAttribute(param, pval)
+		except KeyError, e:
+			res.removeAttribute(param)
+		except Exception, e:
+			err = str(e)
+			errors.append(err)
+			if LUCI_DEBUG_MODE is True:
+				luci_log.debug_verbose('addSAPD2: %s %s' % (param, err))
+	return errors
+
+def addSAPInstance(res, rname, form, model):
+	errors = list()
+
+	try:
+		iname = form['InstanceName'].strip()
+		if not iname:
+			raise KeyError, 'No SAP instance name was given.'
+		res.addAttribute('InstanceName', iname)
+	except Exception, e:
+		err = str(e)
+		errors.append(err)
+		if LUCI_DEBUG_MODE is True:
+			luci_log.debug_verbose('addSAPI0: %s' % err)
+
+	# Optional string parameters
+	for param in [ 'DIR_EXECUTABLE', 'DIR_PROFILE', 'START_PROFILE' ]:
+		try:
+			pval = form[param].strip()
+			if not pval:
+				raise KeyError, 'blank'
+			res.addAttribute(param, pval)
+		except KeyError, e:
+			res.removeAttribute(param)
+		except Exception, e:
+			err = str(e)
+			errors.append(err)
+			if LUCI_DEBUG_MODE is True:
+				luci_log.debug_verbose('addSAPI1: %s %s' % (param, err))
+	return errors
+
 resource_table = {
-	'ip':			[ addIp,		Ip			],
-	'fs':			[ addFs,		Fs			],
-	'gfs':			[ addClusterfs,	Clusterfs	],
-	'nfsm':			[ addNetfs,		Netfs		],
-	'nfsx':			[ addNFSExport, NFSExport	],
-	'nfsc':			[ addNFSClient, NFSClient	],
-	'scr':			[ addScript,	Script		],
-	'smb':			[ addSamba,		Samba		],
-	'tomcat-5':		[ addTomcat5,	Tomcat5		],
-	'postgres-8':	[ addPostgres8,	Postgres8	],
-	'apache':		[ addApache,	Apache		],
-	'openldap':		[ addOpenLDAP,	OpenLDAP	],
-	'lvm':			[ addLVM,		LVM			],
-	'mysql':		[ addMySQL,		MySQL		]
+	'ip':			[ addIp,			Ip			],
+	'fs':			[ addFs,			Fs			],
+	'gfs':			[ addClusterfs,		Clusterfs	],
+	'nfsm':			[ addNetfs,			Netfs		],
+	'nfsx':			[ addNFSExport,		NFSExport	],
+	'nfsc':			[ addNFSClient,		NFSClient	],
+	'scr':			[ addScript,		Script		],
+	'smb':			[ addSamba,			Samba		],
+	'tomcat-5':		[ addTomcat5,		Tomcat5		],
+	'postgres-8':	[ addPostgres8,		Postgres8	],
+	'apache':		[ addApache,		Apache		],
+	'openldap':		[ addOpenLDAP,		OpenLDAP	],
+	'lvm':			[ addLVM,			LVM			],
+	'mysql':		[ addMySQL,			MySQL		],
+	'SAPDatabase':	[ addSAPDatabase,	SAPDatabase	],
+	'SAPInstance':	[ addSAPInstance,	SAPInstance	]
 }
 
 def create_resource(res_type, form, model):
--- conga/luci/site/luci/Extensions/homebase_adapters.py	2007/05/18 05:23:55	1.50.2.6
+++ conga/luci/site/luci/Extensions/homebase_adapters.py	2007/05/22 02:45:54	1.50.2.7
@@ -757,7 +757,7 @@
 	if not request.form.has_key('__CLUSTER'):
 		for i in clusters:
 			try:
-				if user.has_role('View', i[1]):
+				if user.has_permission('View', i[1]):
 					roles = list(i[1].get_local_roles_for_userid(user_id))
 					roles.remove('View')
 
@@ -775,7 +775,7 @@
 		for i in clusters:
 			if i[0] in request.form['__CLUSTER']:
 				try:
-					if not user.has_role('View', i[1]):
+					if not user.has_permission('View', i[1]):
 						roles = list(i[1].get_local_roles_for_userid(user_id))
 						roles.append('View')
 						i[1].manage_setLocalRoles(user_id, roles)
@@ -787,7 +787,7 @@
 					errors.append('Failed to add permission for user "%s" for cluster "%s"' % (user_id, i[0]))
 			else:
 				try:
-					if user.has_role('View', i[1]):
+					if user.has_permission('View', i[1]):
 						roles = list(i[1].get_local_roles_for_userid(user_id))
 						roles.remove('View')
 
@@ -808,7 +808,7 @@
 	if not request.form.has_key('__SYSTEM'):
 		for i in storage:
 			try:
-				if user.has_role('View', i[1]):
+				if user.has_permission('View', i[1]):
 					roles = list(i[1].get_local_roles_for_userid(user_id))
 					roles.remove('View')
 
@@ -823,7 +823,7 @@
 		for i in storage:
 			if i[0] in request.form['__SYSTEM']:
 				try:
-					if not user.has_role('View', i[1]):
+					if not user.has_permission('View', i[1]):
 						roles = list(i[1].get_local_roles_for_userid(user_id))
 						roles.append('View')
 						i[1].manage_setLocalRoles(user_id, roles)
@@ -832,7 +832,7 @@
 					errors.append('Failed to add permission for user "%s" for system "%s"' % (user_id, i[0]))
 			else:
 				try:
-					if user.has_role('View', i[1]):
+					if user.has_permission('View', i[1]):
 						roles = list(i[1].get_local_roles_for_userid(user_id))
 						roles.remove('View')
 
@@ -1279,14 +1279,14 @@
 
 		for c in clusters:
 			try:
-				perms[userName]['cluster'][c[0]] = i.has_role('View', c[1])
+				perms[userName]['cluster'][c[0]] = i.has_permission('View', c[1])
 			except Exception, e:
 				if LUCI_DEBUG_MODE is True:
 					luci_log.debug_verbose('getUserPerms2: user %s, obj %s: %r %s' % (userName, c[0], e, str(e)))
 
 		for s in storage:
 			try:
-				perms[userName]['storage'][s[0]] = i.has_role('View', s[1])
+				perms[userName]['storage'][s[0]] = i.has_permission('View', s[1])
 			except Exception, e:
 				if LUCI_DEBUG_MODE is True:
 					luci_log.debug_verbose('getUserPerms2: user %s, obj %s: %r %s' % (userName, s[0], e, str(e)))



^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2007-05-22  2:45 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-05-22  2:45 [Cluster-devel] conga/luci/site/luci/Extensions LuciDB.py Reso rmccabe

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.