[Zope] Same product in multiple instances automatically?

J Cameron Cooper zope-l at jcameroncooper.com
Fri Sep 9 16:59:11 EDT 2005


Kirk Strauser wrote:
> On Friday 09 September 2005 15:37, J Cameron Cooper wrote:
> 
> 
>>Anything in $SOFTWARE_HOME/lib/python/Products is available in any
>>instances that use that SOFTWARE_HOME. You can see this quite easily by
>>looking at the /Control_Panel/Products of an instance with nothing in
>>its $INSTANCE_HOME/Products.
>>
>>I'm not sure what you mean by $ZOPE/Products.
> 
> 
> OH!  I see what you mean.  $ZOPE is defined in $INSTANCE/etc/zope.conf.  In 
> my case, it's set to /usr/local/www/Zope, and there's a Products directory 
> inside it.  FreeBSD installs new products to that directory.  I hadn't 
> noticed that there was also a /usr/local/www/Zope/lib/python/Products 
> directory with different contents.
> 
> Problem solved, although I'm not sure why /usr/local/www/Zope/Products 
> exists in the first place; maybe it was meant to be a symlink 
> to ./lib/python/Products?  Anyway, I think I can figure it out from here.  
> Thanks!

In the beginning, there was only one Products directory; this was in 
lib/python/ along with the rest of the software defining Zope. If you 
wanted to have, say, two or more running distinct instances of Zope you 
would have to copy the whole thing. Plus, with third-party products 
co-mingling with default products, upgrading became difficult.

Thus was created the instance/software distinction. Everything needed to 
run Zope goes into the SOFTWARE_HOME; everything that defines a specific 
distinct instance goes into INSTANCE_HOME (3rd party Products, Data.fs, 
config files, logs, etc). You can thus manage (move, upgrade, etc) 
instances and software separately, and don't have to copy the whole 
thing to run many instances. (On my dev box, I may have 4-5 running at 
one time, and maybe 20 total!)

This should explain why there are two such directories, and how they 
should be used. Short version: do not touch the SOFTWARE_HOME after it 
has been installed. In fact, it might be a good idea to remove all write 
permissions from that directory. You can co-mingle, of course, but be 
aware of what advantages you are losing.

		--jcc
-- 
"Building Websites with Plone"
http://plonebook.packtpub.com


More information about the Zope mailing list