wok-stable diff mercurial/stuff/hgwebdir.cgi @ rev 7300

Add geoip. Non-DNS IP-to-country resolver C library & utils.
author Christopher Rogers <slaxemulator@gmail.com>
date Wed Nov 17 03:07:03 2010 +0000 (2010-11-17)
parents
children
line diff
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/mercurial/stuff/hgwebdir.cgi	Wed Nov 17 03:07:03 2010 +0000
     1.3 @@ -0,0 +1,50 @@
     1.4 +#!/usr/bin/env python
     1.5 +#
     1.6 +# An example CGI script to export multiple hgweb repos, edit as necessary
     1.7 +
     1.8 +# adjust python path if not a system-wide install:
     1.9 +#import sys
    1.10 +#sys.path.insert(0, "/path/to/python/lib")
    1.11 +
    1.12 +# enable importing on demand to reduce startup time
    1.13 +from mercurial import demandimport; demandimport.enable()
    1.14 +
    1.15 +# send python tracebacks to the browser if an error occurs:
    1.16 +import cgitb
    1.17 +cgitb.enable()
    1.18 +
    1.19 +# If you'd like to serve pages with UTF-8 instead of your default
    1.20 +# locale charset, you can do so by uncommenting the following lines.
    1.21 +# Note that this will cause your .hgrc files to be interpreted in
    1.22 +# UTF-8 and all your repo files to be displayed using UTF-8.
    1.23 +#
    1.24 +#import os
    1.25 +#os.environ["HGENCODING"] = "UTF-8"
    1.26 +
    1.27 +from mercurial.hgweb.hgwebdir_mod import hgwebdir
    1.28 +from mercurial.hgweb.request import wsgiapplication
    1.29 +import mercurial.hgweb.wsgicgi as wsgicgi
    1.30 +
    1.31 +# The config file looks like this.  You can have paths to individual
    1.32 +# repos, collections of repos in a directory tree, or both.
    1.33 +#
    1.34 +# [paths]
    1.35 +# virtual/path = /real/path
    1.36 +# virtual/path = /real/path
    1.37 +#
    1.38 +# [collections]
    1.39 +# /prefix/to/strip/off = /root/of/tree/full/of/repos
    1.40 +#
    1.41 +# collections example: say directory tree /foo contains repos /foo/bar,
    1.42 +# /foo/quux/baz.  Give this config section:
    1.43 +#   [collections]
    1.44 +#   /foo = /foo
    1.45 +# Then repos will list as bar and quux/baz.
    1.46 +#
    1.47 +# Alternatively you can pass a list of ('virtual/path', '/real/path') tuples
    1.48 +# or use a dictionary with entries like 'virtual/path': '/real/path'
    1.49 +
    1.50 +def make_web_app():
    1.51 +    return hgwebdir("/etc/mercurial/hgweb.config")
    1.52 +
    1.53 +wsgicgi.launch(wsgiapplication(make_web_app))