cgi-bin/repos.cgi
changeset 18 9b3a3c7e439b
child 19 21b8241f5fba
equal deleted inserted replaced
17:d0307c9d0a61 18:9b3a3c7e439b
       
     1 #!/usr/bin/env python
       
     2 #
       
     3 # An example CGI script to export multiple hgweb repos, edit as necessary
       
     4 
       
     5 # adjust python path if not a system-wide install:
       
     6 import sys
       
     7 sys.path.insert(0, "/home/isabelle/html-data/isabelle-repos/mercurial-www4/lib64/python2.5/site-packages")
       
     8 
       
     9 # enable importing on demand to reduce startup time
       
    10 from mercurial import demandimport; demandimport.enable()
       
    11 
       
    12 # Uncomment to send python tracebacks to the browser if an error occurs:
       
    13 import cgitb
       
    14 cgitb.enable()
       
    15 
       
    16 # If you'd like to serve pages with UTF-8 instead of your default
       
    17 # locale charset, you can do so by uncommenting the following lines.
       
    18 # Note that this will cause your .hgrc files to be interpreted in
       
    19 # UTF-8 and all your repo files to be displayed using UTF-8.
       
    20 #
       
    21 import os
       
    22 os.environ["HGENCODING"] = "UTF-8"
       
    23 
       
    24 from mercurial.hgweb.hgwebdir_mod import hgwebdir
       
    25 import mercurial.hgweb.wsgicgi as wsgicgi
       
    26 
       
    27 # The config file looks like this.  You can have paths to individual
       
    28 # repos, collections of repos in a directory tree, or both.
       
    29 #
       
    30 # [paths]
       
    31 # virtual/path = /real/path
       
    32 # virtual/path = /real/path
       
    33 #
       
    34 # [collections]
       
    35 # /prefix/to/strip/off = /root/of/tree/full/of/repos
       
    36 #
       
    37 # collections example: say directory tree /foo contains repos /foo/bar,
       
    38 # /foo/quux/baz.  Give this config section:
       
    39 #   [collections]
       
    40 #   /foo = /foo
       
    41 # Then repos will list as bar and quux/baz.
       
    42 #
       
    43 # Alternatively you can pass a list of ('virtual/path', '/real/path') tuples
       
    44 # or use a dictionary with entries like 'virtual/path': '/real/path'
       
    45 
       
    46 application = hgwebdir('/home/urbanc/HG-REPOS/hgweb.config')
       
    47 wsgicgi.launch(application)