Mercurial > hg
annotate contrib/hgweb.fcgi @ 45067:9a062913bab6
tests: stablize test-serve.t on Windows
I forget the reason that the subprocess on Windows doesn't print this, but all
other instances of this are similarly conditionalized, so I didn't think too
hard about it.
Also, the server needs to be killed so it doesn't prevent the next run from
working, especially since the port isn't randomized.
Differential Revision: https://phab.mercurial-scm.org/D8720
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Thu, 09 Jul 2020 23:03:34 -0400 |
parents | 99e231afc29c |
children | d58a205d0672 |
rev | line source |
---|---|
4391
722417b3d7fa
Add hgwebdir.fcgi to contrib
Michael Gebetsroither <michael.geb@gmx.at>
parents:
diff
changeset
|
1 #!/usr/bin/env python |
722417b3d7fa
Add hgwebdir.fcgi to contrib
Michael Gebetsroither <michael.geb@gmx.at>
parents:
diff
changeset
|
2 # |
11002
b1739ebb9f3f
hgweb: synchronize fcgi and wsgi scripts
Matt Mackall <mpm@selenic.com>
parents:
7799
diff
changeset
|
3 # An example FastCGI script for use with flup, edit as necessary |
4391
722417b3d7fa
Add hgwebdir.fcgi to contrib
Michael Gebetsroither <michael.geb@gmx.at>
parents:
diff
changeset
|
4 |
11002
b1739ebb9f3f
hgweb: synchronize fcgi and wsgi scripts
Matt Mackall <mpm@selenic.com>
parents:
7799
diff
changeset
|
5 # Path to repo or hgweb config to serve (see 'hg help hgweb') |
b1739ebb9f3f
hgweb: synchronize fcgi and wsgi scripts
Matt Mackall <mpm@selenic.com>
parents:
7799
diff
changeset
|
6 config = "/path/to/repo/or/config" |
5244
79279b5583c6
cgi: sys.path.insert should be before importing mercurial
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
5197
diff
changeset
|
7 |
15475
85cba926cb59
hgweb: add hint about finding library path with debuginstall
Matt Mackall <mpm@selenic.com>
parents:
11002
diff
changeset
|
8 # Uncomment and adjust if Mercurial is not installed system-wide |
85cba926cb59
hgweb: add hint about finding library path with debuginstall
Matt Mackall <mpm@selenic.com>
parents:
11002
diff
changeset
|
9 # (consult "installed modules" path from 'hg debuginstall'): |
43659
99e231afc29c
black: blacken scripts
Gregory Szorc <gregory.szorc@gmail.com>
parents:
15475
diff
changeset
|
10 # import sys; sys.path.insert(0, "/path/to/python/lib") |
5197
55860a45bbf2
Enable demandimport only in scripts, not in importable modules (issue605)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
4391
diff
changeset
|
11 |
6085
e1f11b8a1e9e
hgweb: disable cgitb by default in hgwebdir.fcgi too
Maxim Dounin <mdounin@mdounin.ru>
parents:
5995
diff
changeset
|
12 # Uncomment to send python tracebacks to the browser if an error occurs: |
43659
99e231afc29c
black: blacken scripts
Gregory Szorc <gregory.szorc@gmail.com>
parents:
15475
diff
changeset
|
13 # import cgitb; cgitb.enable() |
4391
722417b3d7fa
Add hgwebdir.fcgi to contrib
Michael Gebetsroither <michael.geb@gmx.at>
parents:
diff
changeset
|
14 |
43659
99e231afc29c
black: blacken scripts
Gregory Szorc <gregory.szorc@gmail.com>
parents:
15475
diff
changeset
|
15 from mercurial import demandimport |
99e231afc29c
black: blacken scripts
Gregory Szorc <gregory.szorc@gmail.com>
parents:
15475
diff
changeset
|
16 |
99e231afc29c
black: blacken scripts
Gregory Szorc <gregory.szorc@gmail.com>
parents:
15475
diff
changeset
|
17 demandimport.enable() |
11002
b1739ebb9f3f
hgweb: synchronize fcgi and wsgi scripts
Matt Mackall <mpm@selenic.com>
parents:
7799
diff
changeset
|
18 from mercurial.hgweb import hgweb |
b1739ebb9f3f
hgweb: synchronize fcgi and wsgi scripts
Matt Mackall <mpm@selenic.com>
parents:
7799
diff
changeset
|
19 from flup.server.fcgi import WSGIServer |
43659
99e231afc29c
black: blacken scripts
Gregory Szorc <gregory.szorc@gmail.com>
parents:
15475
diff
changeset
|
20 |
11002
b1739ebb9f3f
hgweb: synchronize fcgi and wsgi scripts
Matt Mackall <mpm@selenic.com>
parents:
7799
diff
changeset
|
21 application = hgweb(config) |
b1739ebb9f3f
hgweb: synchronize fcgi and wsgi scripts
Matt Mackall <mpm@selenic.com>
parents:
7799
diff
changeset
|
22 WSGIServer(application).run() |