~loggerhead-team/loggerhead/trunk-rich

« back to all changes in this revision

Viewing changes to start-loggerhead

  • Committer: Martin Pool
  • Date: 2009-01-23 20:34:40 UTC
  • mto: This revision was merged to the branch mainline in revision 298.
  • Revision ID: mbp@sourcefrog.net-20090123203440-3attwqd8tje6np09
Merge in 'serve --http' based on code from mwh

Show diffs side-by-side

added added

removed removed

Lines of Context:
13
13
# along with this program; if not, write to the Free Software
14
14
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
15
15
 
16
 
"""
17
 
WARNING! This script has been deprecated and will go away soon!
18
 
A script for starting the loggerhead process.
19
 
"""
 
16
"""A script for starting the loggerhead process."""
20
17
 
21
18
 
22
19
import logging
 
20
import logging.handlers
23
21
from optparse import OptionParser
24
22
import os
25
23
import sys
26
24
import urlparse
27
25
 
28
 
from bzrlib.plugin import load_plugins
29
26
from bzrlib.util.configobj.configobj import ConfigObj
30
27
 
31
28
from paste import httpserver
34
31
 
35
32
from loggerhead import daemon
36
33
from loggerhead.apps.config import Root
37
 
from loggerhead.trace import setup_logging
 
34
from loggerhead.trace import make_handler, setup_logging
38
35
from loggerhead.apps.error import ErrorHandlerApp
39
36
 
40
37
 
41
38
def main():
42
 
    sys.stderr.write('\n\n')
43
 
    sys.stderr.write('WARNING!!! This script has been deprecated by '
44
 
                     'serve-branches, and will be removed in the next '
45
 
                     'release. Please migrate to serve-branches and report '
46
 
                     'any missing features.\n')
47
 
    sys.stderr.write('\n\n')
48
 
 
49
39
    home = os.path.realpath(os.path.dirname(__file__))
50
40
    default_pidfile = os.path.join(home, 'loggerhead.pid')
51
41
    default_configfile = os.path.join(home, 'loggerhead.conf')
102
92
    if not options.foreground:
103
93
        sys.stderr.write('\n')
104
94
        sys.stderr.write('Launching loggerhead into the background.\n')
105
 
        sys.stderr.write('PID file: %s\n' % (options.pidfile,))
 
95
        sys.stderr.write('PID file: %s\n' % options.pidfile)
106
96
        sys.stderr.write('\n')
107
97
 
108
98
        daemon.daemonize(options.pidfile, home)
125
115
        def app(environ, start_response, orig=app):
126
116
            environ['SCRIPT_NAME'] = path
127
117
            environ['HTTP_HOST'] = netloc
128
 
            environ['wsgi.url_scheme'] = scheme
129
118
            return orig(environ, start_response)
130
119
 
131
 
    load_plugins()
132
 
 
133
120
    try:
134
121
        httpserver.serve(
135
122
            app, host=server_host, port=server_port,