示例#1
0
import ZODB, ZEO
import pwd
import socket
from scgi.quixote_handler import QuixoteHandler, scgi_server, debug
from dulcinea import local
from dulcinea import site_util
from dulcinea.ui.publisher import DulcineaPublisher

from qon import local

site = os.environ['SITE'] = sys.argv[1]

site_util.ensure_uid_gid_not_root()
config = site_util.get_config()
pid_file_name = site_util.get_pid_file_name('scgi', site)
ip, port = site_util.parse_address(config.get(site, 'scgi-address'))
site_log_dir = os.path.join(config.get(site, 'log-directory'), site)
error_log = os.path.join(site_log_dir, 'error.log')
assert site_util.is_local(config.get(site, 'scgi-address'))

def get_publisher():
    """Get publisher from config file. -- pmo"""
    s_pub = config.get(site, 'publisher')
    modulename = s_pub[:s_pub.rfind('.')]
    klassname = s_pub[s_pub.rfind('.')+1:]
    __import__(modulename)
    module = sys.modules[modulename]
    klass = getattr(module, klassname)
    return klass()

def create_site_publisher(site):
示例#2
0
Script invoked by site to start the lucene server
"""

import os
from dulcinea import site_util

site_util.ensure_uid_gid_not_root()

config = site_util.get_config()

for site in site_util.list_sites():
    if not config.has_option(site, 'lucene-address'):
        continue
    
    # get server ip and port
    ip, port = site_util.parse_address(config.get(site, 'lucene-address'))
    
    # db
    db = os.path.join(config.get(site, 'var-directory'),
        '%s_lucene' % site)
    
    # log
    log = os.path.join(config.get(site, 'log-directory'), site, 'lucene')
    
    # build java invokation arguments
    java = config.get(site, 'java')
    args = '-classpath %(classpath)s Server %(port)s %(db)s %(log)s' % \
        dict(classpath=config.get(site, 'lucene-classpath'),
            port=port,
            db=db,
            log=log,