Mercurial > hg
view tests/test-serve @ 12076:49463314c24f
mail/hgweb: support service names for ports (issue2350)
This adds util.getport(port) which tries to parse port as an int, and
failing that, looks it up using socket.getservbyname(). Thus, the
following will work:
[smtp]
port = submission
[web]
port = http
This does not apply to ports in URLs used in clone, pull, etc.
author | Brodie Rao <brodie@bitheap.org> |
---|---|
date | Sat, 28 Aug 2010 12:31:07 -0400 |
parents | 3318431f2ab4 |
children | b6cc68ef2702 |
line wrap: on
line source
#!/bin/sh hgserve() { hg serve -a localhost -d --pid-file=hg.pid -E errors.log -v $@ \ | sed -e "s/:$HGPORT1\\([^0-9]\\)/:HGPORT1\1/g" \ -e "s/:$HGPORT2\\([^0-9]\\)/:HGPORT2\1/g" \ -e 's/http:\/\/[^/]*\//http:\/\/localhost\//' cat hg.pid >> "$DAEMON_PIDS" echo % errors cat errors.log sleep 1 if [ "$KILLQUIETLY" = "Y" ]; then kill `cat hg.pid` 2>/dev/null else kill `cat hg.pid` fi sleep 1 } hg init test cd test echo '[web]' > .hg/hgrc echo 'accesslog = access.log' >> .hg/hgrc echo "port = $HGPORT1" >> .hg/hgrc echo % Without -v hg serve -a localhost -p $HGPORT -d --pid-file=hg.pid -E errors.log cat hg.pid >> "$DAEMON_PIDS" if [ -f access.log ]; then echo 'access log created - .hg/hgrc respected' fi echo % errors cat errors.log echo % With -v hgserve echo % With -v and -p HGPORT2 hgserve -p "$HGPORT2" echo '% With -v and -p http (should fail)' KILLQUIETLY=Y hgserve -p http echo % With --prefix foo hgserve --prefix foo echo % With --prefix /foo hgserve --prefix /foo echo % With --prefix foo/ hgserve --prefix foo/ echo % With --prefix /foo/ hgserve --prefix /foo/