#!@@LOCALBASE@@/bin/python2.1 # # $OpenBSD: zope-instance,v 1.3 2001/11/02 03:35:11 matt Exp $ # # Build a Zope INSTANCE_HOME in the specified directory. # # Run this script as the user who will be owning this Zope installation. # The instance directory must already exist, and be empty. # # Matt Behrens # zopehome="@@PREFIX@@/lib/zope" import os, shutil, sys if len(sys.argv) != 2: print "usage: %s instance-directory" % sys.argv[0] sys.exit(0) instancehome=os.path.abspath(sys.argv[1]) for directory in ("import", "var", "Extensions", "Products"): os.mkdir(os.path.join(instancehome, directory)) # Copy the initial Data.fs datafs = "%s/var/Data.fs" % instancehome shutil.copyfile("%s/var/Data.fs.in" % zopehome, datafs) os.chmod(datafs, 0600) # Import installation modules sys.path.insert(0, zopehome) sys.path.insert(0, "%s/inst" % zopehome) import make_start, zpasswd python=sys.executable # Create Zope.cgi open("%s/Zope.cgi" % instancehome, "w").write( """#!%(zopehome)s/pcgi/pcgi-wrapper PCGI_NAME=Zope PCGI_MODULE_PATH=%(zopehome)s/lib/python/Zope PCGI_PUBLISHER=%(zopehome)s/pcgi/pcgi_publisher.py PCGI_EXE=%(python)s PCGI_SOCKET_FILE=%(instancehome)s/var/pcgi.soc PCGI_PID_FILE=%(instancehome)s/var/pcgi.pid PCGI_ERROR_LOG=%(instancehome)s/var/pcgi.log PCGI_DISPLAY_ERRORS=1 BOBO_REALM=%(instancehome)s/Zope.cgi BOBO_DEBUG_MODE=1 INSTANCE_HOME=%(instancehome)s """ % vars()) os.chmod("%s/Zope.cgi" % instancehome, 04750) # Create start and stop scripts make_start.sh(instancehome, '', '') open("%s/start" % instancehome, "w").write( """#!/bin/sh export INSTANCE_HOME=%(instancehome)s export PYTHONHOME=%(zopehome)s exec %(python)s -O $PYTHONHOME/z2.py -D "$@" -p %(instancehome)s/Zope.cgi """ % vars()) # Create the admin user zpasswd.write_inituser(instancehome, '', '')