Commit acba357e authored by Jim Fulton's avatar Jim Fulton

Disable product instalation into the database when running as a ZEO

client. It makes no sense for ZEO Clients to install database info for
products.
parent 850e7cc9
...@@ -396,6 +396,8 @@ class Distribution: ...@@ -396,6 +396,8 @@ class Distribution:
def initializeProduct(productp, name, home, app): def initializeProduct(productp, name, home, app):
# Initialize a levered product # Initialize a levered product
products=app.Control_Panel.Products products=app.Control_Panel.Products
if hasattr(productp, '__import_error__'): ie=productp.__import_error__ if hasattr(productp, '__import_error__'): ie=productp.__import_error__
...@@ -407,6 +409,7 @@ def initializeProduct(productp, name, home, app): ...@@ -407,6 +409,7 @@ def initializeProduct(productp, name, home, app):
try: try:
if ihasattr(products,name): if ihasattr(products,name):
old=getattr(products, name) old=getattr(products, name)
if os.environ.get('ZEO_CLIENT',''): return old
if (ihasattr(old,'version') and old.version==fver and if (ihasattr(old,'version') and old.version==fver and
hasattr(old, 'import_error_') and hasattr(old, 'import_error_') and
old.import_error_==ie): old.import_error_==ie):
......
...@@ -85,8 +85,8 @@ ...@@ -85,8 +85,8 @@
__doc__='''Application support __doc__='''Application support
$Id: Application.py,v 1.128 2000/06/09 23:52:45 evan Exp $''' $Id: Application.py,v 1.129 2000/07/06 19:42:23 jim Exp $'''
__version__='$Revision: 1.128 $'[11:-2] __version__='$Revision: 1.129 $'[11:-2]
import Globals,Folder,os,sys,App.Product, App.ProductRegistry, misc_ import Globals,Folder,os,sys,App.Product, App.ProductRegistry, misc_
import time, traceback, os, string, Products import time, traceback, os, string, Products
...@@ -504,8 +504,13 @@ def install_products(app): ...@@ -504,8 +504,13 @@ def install_products(app):
Folder.__dict__['__ac_permissions__']=tuple( Folder.__dict__['__ac_permissions__']=tuple(
list(Folder.__ac_permissions__)+new_permissions) list(Folder.__ac_permissions__)+new_permissions)
if os.environ.get('ZEO_CLIENT',''):
# we don't want to install products from clients!
get_transaction().abort()
else:
get_transaction().note('Installed product '+product_name) get_transaction().note('Installed product '+product_name)
get_transaction().commit() get_transaction().commit()
except: except:
LOG('Zope',ERROR,'Couldn\'t install %s' % product_name, LOG('Zope',ERROR,'Couldn\'t install %s' % product_name,
error=sys.exc_info()) error=sys.exc_info())
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment