/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to contrib/pwk

HTTPServer sets self.host from the socket address.

On a system with IPv6 enabled, it can try to connect to the ipv6 address
first, and then takes 1s to timeout, before trying the ipv4 address.
However, we know at 'bind' time that we are only binding to the ipv4 address.

The effect:
  time bzr selftest -s bt.test_sftp_trans -s bt.test_smart -s bt.test_smtp -s bt.test_http
changed from 500s down to 27s. May not have that effect everywhere,
but places that test against the http server have a rather large effect.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#! /bin/sh -pe
 
2
 
 
3
# take patches from patchwork into bzr
 
4
 
 
5
# authentication must be in ~/.netrc
 
6
 
 
7
# TODO: Scan all pending patches and say which ones apply cleanly.
 
8
 
 
9
# these should be moved into some kind of per-project configuration
 
10
PWK_ROOT='http://patchwork.ozlabs.org/bazaar-ng'
 
11
PWK_AUTH_ROOT='https://patchwork.ozlabs.org/bazaar-ng'
 
12
 
 
13
usage() {
 
14
    cat <<EOF
 
15
usage: 
 
16
   pwk cat PATCH-ID       show the patch text
 
17
   pwk try PATCH-ID        see if the patch applies cleanly
 
18
   pwk apply PATCH-ID      apply patch into current directory
 
19
EOF
 
20
}
 
21
 
 
22
catpatch() {
 
23
    curl --silent --show-error --get -d id=$1 $PWK_ROOT/patchcontent
 
24
}
 
25
 
 
26
if [ $# -lt 1 ]
 
27
then
 
28
    usage
 
29
    exit 1
 
30
fi
 
31
 
 
32
 
 
33
case "$1" in
 
34
help|-h|--help)
 
35
    usage
 
36
    exit 0
 
37
    ;;
 
38
cat)
 
39
    catpatch $2 | ${PAGER:-less}
 
40
    ;;
 
41
try)
 
42
    catpatch $2 | patch -p1 --dry-run
 
43
    ;;
 
44
apply)
 
45
    catpatch $2 | patch -p1
 
46
    ;;
 
47
*)
 
48
    usage
 
49
    exit 1
 
50
esac