Mercurial > hg
annotate tests/test-push-http.t @ 33650:0b3fe3910ef5 stable
util: add utility method to check for bad ssh urls (SEC)
Our use of SSH has an exploit that will parse the first part of an url
blindly as a hostname. Prior to this set of security patches, a url
with '-oProxyCommand' could run arbitrary code on a user's machine. In
addition, at least on Windows, a pipe '|' can be abused to execute
arbitrary commands in a similar fashion.
We defend against this by checking ssh:// URLs and looking for a
hostname that starts with a - or contains a |.
When this happens, let's throw a big abort into the user's face so
that they can inspect what's going on.
author | Sean Farley <sean@farley.io> |
---|---|
date | Fri, 28 Jul 2017 16:32:25 -0700 |
parents | 7937dabb5447 |
children | 970967e0a917 |
rev | line source |
---|---|
22046
7a9cbb315d84
tests: replace exit 80 with #require
Matt Mackall <mpm@selenic.com>
parents:
20966
diff
changeset
|
1 #require killdaemons |
2481
5c65b4e51610
add tests for push over http.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
2 |
12483
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
3 $ hg init test |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
4 $ cd test |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
5 $ echo a > a |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
6 $ hg ci -Ama |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
7 adding a |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
8 $ cd .. |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
9 $ hg clone test test2 |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
10 updating to branch default |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
11 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
12 $ cd test2 |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
13 $ echo a >> a |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
14 $ hg ci -mb |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
15 $ req() { |
12743
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12643
diff
changeset
|
16 > hg serve -p $HGPORT -d --pid-file=hg.pid -E errors.log |
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12643
diff
changeset
|
17 > cat hg.pid >> $DAEMON_PIDS |
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12643
diff
changeset
|
18 > hg --cwd ../test2 push http://localhost:$HGPORT/ |
17455
2212af23c9de
test-push-http: include exit status of hg push
Yuya Nishihara <yuya@tcha.org>
parents:
17018
diff
changeset
|
19 > exitstatus=$? |
25474
8c14f87bd0ae
tests: drop DAEMON_PIDS from killdaemons calls
Matt Mackall <mpm@selenic.com>
parents:
25472
diff
changeset
|
20 > killdaemons.py |
12743
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12643
diff
changeset
|
21 > echo % serve errors |
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12643
diff
changeset
|
22 > cat errors.log |
17455
2212af23c9de
test-push-http: include exit status of hg push
Yuya Nishihara <yuya@tcha.org>
parents:
17018
diff
changeset
|
23 > return $exitstatus |
12483
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
24 > } |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
25 $ cd ../test |
2481
5c65b4e51610
add tests for push over http.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
26 |
12483
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
27 expect ssl error |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
28 |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
29 $ req |
12643
d08bb64888bc
tests: reintroduce ":$HGPORT" in test output
Mads Kiilerich <mads@kiilerich.com>
parents:
12483
diff
changeset
|
30 pushing to http://localhost:$HGPORT/ |
12483
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
31 searching for changes |
17456
59a168019255
hgweb: respond 403 forbidden for ssl required error
Yuya Nishihara <yuya@tcha.org>
parents:
17455
diff
changeset
|
32 abort: HTTP Error 403: ssl required |
12483
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
33 % serve errors |
17456
59a168019255
hgweb: respond 403 forbidden for ssl required error
Yuya Nishihara <yuya@tcha.org>
parents:
17455
diff
changeset
|
34 [255] |
12483
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
35 |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
36 expect authorization error |
6167
f53b9a383476
tests: easier hg serve error diagnosis
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
5386
diff
changeset
|
37 |
12483
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
38 $ echo '[web]' > .hg/hgrc |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
39 $ echo 'push_ssl = false' >> .hg/hgrc |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
40 $ req |
12643
d08bb64888bc
tests: reintroduce ":$HGPORT" in test output
Mads Kiilerich <mads@kiilerich.com>
parents:
12483
diff
changeset
|
41 pushing to http://localhost:$HGPORT/ |
12483
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
42 searching for changes |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
43 abort: authorization failed |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
44 % serve errors |
17455
2212af23c9de
test-push-http: include exit status of hg push
Yuya Nishihara <yuya@tcha.org>
parents:
17018
diff
changeset
|
45 [255] |
12483
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
46 |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
47 expect authorization error: must have authorized user |
2481
5c65b4e51610
add tests for push over http.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
48 |
12483
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
49 $ echo 'allow_push = unperson' >> .hg/hgrc |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
50 $ req |
12643
d08bb64888bc
tests: reintroduce ":$HGPORT" in test output
Mads Kiilerich <mads@kiilerich.com>
parents:
12483
diff
changeset
|
51 pushing to http://localhost:$HGPORT/ |
12483
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
52 searching for changes |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
53 abort: authorization failed |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
54 % serve errors |
17455
2212af23c9de
test-push-http: include exit status of hg push
Yuya Nishihara <yuya@tcha.org>
parents:
17018
diff
changeset
|
55 [255] |
2481
5c65b4e51610
add tests for push over http.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
56 |
12483
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
57 expect success |
2481
5c65b4e51610
add tests for push over http.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
58 |
30234
34a5f6c66bc5
tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
27739
diff
changeset
|
59 $ cat >> .hg/hgrc <<EOF |
34a5f6c66bc5
tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
27739
diff
changeset
|
60 > allow_push = * |
34a5f6c66bc5
tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
27739
diff
changeset
|
61 > [hooks] |
34a5f6c66bc5
tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
27739
diff
changeset
|
62 > changegroup = sh -c "printenv.py changegroup 0" |
34a5f6c66bc5
tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
27739
diff
changeset
|
63 > pushkey = sh -c "printenv.py pushkey 0" |
34a5f6c66bc5
tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
27739
diff
changeset
|
64 > EOF |
12483
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
65 $ req |
12643
d08bb64888bc
tests: reintroduce ":$HGPORT" in test output
Mads Kiilerich <mads@kiilerich.com>
parents:
12483
diff
changeset
|
66 pushing to http://localhost:$HGPORT/ |
12483
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
67 searching for changes |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
68 remote: adding changesets |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
69 remote: adding manifests |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
70 remote: adding file changes |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
71 remote: added 1 changesets with 1 changes to 1 files |
31747
aff7b32b3c05
hook: add hook name information to external hook
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
31746
diff
changeset
|
72 remote: pushkey hook: HG_HOOKNAME=pushkey HG_HOOKTYPE=pushkey HG_KEY=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NAMESPACE=phases HG_NEW=0 HG_OLD=1 HG_RET=1 |
31815
7937dabb5447
tests: fix missing (glob) annotations in test-push-http.t
Augie Fackler <augie@google.com>
parents:
31747
diff
changeset
|
73 remote: changegroup hook: HG_BUNDLE2=1 HG_HOOKNAME=changegroup HG_HOOKTYPE=changegroup HG_NODE=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NODE_LAST=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_SOURCE=serve HG_TXNID=TXN:$ID$ HG_URL=remote:http:$LOCALIP: (glob) |
12483
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
74 % serve errors |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
75 $ hg rollback |
13446
1e497df514e2
rollback: clarifies the message about the reverted state (issue2628)
Gilles Moris <gilles.moris@free.fr>
parents:
13405
diff
changeset
|
76 repository tip rolled back to revision 0 (undo serve) |
12483
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
77 |
14093
ce99d887585f
httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents:
14011
diff
changeset
|
78 expect success, server lacks the httpheader capability |
ce99d887585f
httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents:
14011
diff
changeset
|
79 |
ce99d887585f
httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents:
14011
diff
changeset
|
80 $ CAP=httpheader |
ce99d887585f
httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents:
14011
diff
changeset
|
81 $ . "$TESTDIR/notcapable" |
ce99d887585f
httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents:
14011
diff
changeset
|
82 $ req |
ce99d887585f
httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents:
14011
diff
changeset
|
83 pushing to http://localhost:$HGPORT/ |
ce99d887585f
httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents:
14011
diff
changeset
|
84 searching for changes |
ce99d887585f
httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents:
14011
diff
changeset
|
85 remote: adding changesets |
ce99d887585f
httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents:
14011
diff
changeset
|
86 remote: adding manifests |
ce99d887585f
httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents:
14011
diff
changeset
|
87 remote: adding file changes |
ce99d887585f
httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents:
14011
diff
changeset
|
88 remote: added 1 changesets with 1 changes to 1 files |
31747
aff7b32b3c05
hook: add hook name information to external hook
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
31746
diff
changeset
|
89 remote: pushkey hook: HG_HOOKNAME=pushkey HG_HOOKTYPE=pushkey HG_KEY=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NAMESPACE=phases HG_NEW=0 HG_OLD=1 HG_RET=1 |
31815
7937dabb5447
tests: fix missing (glob) annotations in test-push-http.t
Augie Fackler <augie@google.com>
parents:
31747
diff
changeset
|
90 remote: changegroup hook: HG_BUNDLE2=1 HG_HOOKNAME=changegroup HG_HOOKTYPE=changegroup HG_NODE=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NODE_LAST=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_SOURCE=serve HG_TXNID=TXN:$ID$ HG_URL=remote:http:$LOCALIP: (glob) |
14093
ce99d887585f
httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents:
14011
diff
changeset
|
91 % serve errors |
ce99d887585f
httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents:
14011
diff
changeset
|
92 $ hg rollback |
ce99d887585f
httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents:
14011
diff
changeset
|
93 repository tip rolled back to revision 0 (undo serve) |
ce99d887585f
httprepo: long arguments support (issue2126)
Steven Brown <StevenGBrown@gmail.com>
parents:
14011
diff
changeset
|
94 |
13946
3c2f9f611ef6
tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents:
13449
diff
changeset
|
95 expect success, server lacks the unbundlehash capability |
3c2f9f611ef6
tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents:
13449
diff
changeset
|
96 |
14011
b69471bdb678
tests: add script to disable a selected wire protocol capability
Steven Brown <StevenGBrown@gmail.com>
parents:
13946
diff
changeset
|
97 $ CAP=unbundlehash |
b69471bdb678
tests: add script to disable a selected wire protocol capability
Steven Brown <StevenGBrown@gmail.com>
parents:
13946
diff
changeset
|
98 $ . "$TESTDIR/notcapable" |
13946
3c2f9f611ef6
tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents:
13449
diff
changeset
|
99 $ req |
3c2f9f611ef6
tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents:
13449
diff
changeset
|
100 pushing to http://localhost:$HGPORT/ |
3c2f9f611ef6
tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents:
13449
diff
changeset
|
101 searching for changes |
3c2f9f611ef6
tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents:
13449
diff
changeset
|
102 remote: adding changesets |
3c2f9f611ef6
tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents:
13449
diff
changeset
|
103 remote: adding manifests |
3c2f9f611ef6
tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents:
13449
diff
changeset
|
104 remote: adding file changes |
3c2f9f611ef6
tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents:
13449
diff
changeset
|
105 remote: added 1 changesets with 1 changes to 1 files |
31747
aff7b32b3c05
hook: add hook name information to external hook
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
31746
diff
changeset
|
106 remote: pushkey hook: HG_HOOKNAME=pushkey HG_HOOKTYPE=pushkey HG_KEY=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NAMESPACE=phases HG_NEW=0 HG_OLD=1 HG_RET=1 |
31815
7937dabb5447
tests: fix missing (glob) annotations in test-push-http.t
Augie Fackler <augie@google.com>
parents:
31747
diff
changeset
|
107 remote: changegroup hook: HG_BUNDLE2=1 HG_HOOKNAME=changegroup HG_HOOKTYPE=changegroup HG_NODE=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NODE_LAST=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_SOURCE=serve HG_TXNID=TXN:$ID$ HG_URL=remote:http:$LOCALIP: (glob) |
13946
3c2f9f611ef6
tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents:
13449
diff
changeset
|
108 % serve errors |
3c2f9f611ef6
tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents:
13449
diff
changeset
|
109 $ hg rollback |
3c2f9f611ef6
tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents:
13449
diff
changeset
|
110 repository tip rolled back to revision 0 (undo serve) |
3c2f9f611ef6
tests: new test cases for the unbundlehash capability
Steven Brown <StevenGBrown@gmail.com>
parents:
13449
diff
changeset
|
111 |
17793
8474be4412ca
wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
17565
diff
changeset
|
112 expect push success, phase change failure |
8474be4412ca
wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
17565
diff
changeset
|
113 |
17842
a029dac38942
test-push-http: fix failing test on Windows
Adrian Buehlmann <adrian@cadifra.com>
parents:
17793
diff
changeset
|
114 $ cat > .hg/hgrc <<EOF |
a029dac38942
test-push-http: fix failing test on Windows
Adrian Buehlmann <adrian@cadifra.com>
parents:
17793
diff
changeset
|
115 > [web] |
a029dac38942
test-push-http: fix failing test on Windows
Adrian Buehlmann <adrian@cadifra.com>
parents:
17793
diff
changeset
|
116 > push_ssl = false |
a029dac38942
test-push-http: fix failing test on Windows
Adrian Buehlmann <adrian@cadifra.com>
parents:
17793
diff
changeset
|
117 > allow_push = * |
a029dac38942
test-push-http: fix failing test on Windows
Adrian Buehlmann <adrian@cadifra.com>
parents:
17793
diff
changeset
|
118 > [hooks] |
30234
34a5f6c66bc5
tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
27739
diff
changeset
|
119 > prepushkey = sh -c "printenv.py prepushkey 1" |
17842
a029dac38942
test-push-http: fix failing test on Windows
Adrian Buehlmann <adrian@cadifra.com>
parents:
17793
diff
changeset
|
120 > EOF |
17793
8474be4412ca
wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
17565
diff
changeset
|
121 $ req |
8474be4412ca
wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
17565
diff
changeset
|
122 pushing to http://localhost:$HGPORT/ |
8474be4412ca
wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
17565
diff
changeset
|
123 searching for changes |
8474be4412ca
wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
17565
diff
changeset
|
124 remote: adding changesets |
8474be4412ca
wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
17565
diff
changeset
|
125 remote: adding manifests |
8474be4412ca
wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
17565
diff
changeset
|
126 remote: adding file changes |
8474be4412ca
wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
17565
diff
changeset
|
127 remote: added 1 changesets with 1 changes to 1 files |
31815
7937dabb5447
tests: fix missing (glob) annotations in test-push-http.t
Augie Fackler <augie@google.com>
parents:
31747
diff
changeset
|
128 remote: prepushkey hook: HG_BUNDLE2=1 HG_HOOKNAME=prepushkey HG_HOOKTYPE=prepushkey HG_KEY=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NAMESPACE=phases HG_NEW=0 HG_NODE=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NODE_LAST=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_OLD=1 HG_PENDING=$TESTTMP/test HG_PHASES_MOVED=1 HG_SOURCE=serve HG_TXNID=TXN:$ID$ HG_URL=remote:http:$LOCALIP: (glob) |
25390
14c6b4c6e3f9
test: use bundle2 in test-push-http
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24740
diff
changeset
|
129 remote: pushkey-abort: prepushkey hook exited with status 1 |
25502
bd41c19383db
phases: abort the whole push if phases fail to update (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25478
diff
changeset
|
130 remote: transaction abort! |
bd41c19383db
phases: abort the whole push if phases fail to update (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25478
diff
changeset
|
131 remote: rollback completed |
bd41c19383db
phases: abort the whole push if phases fail to update (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25478
diff
changeset
|
132 abort: updating ba677d0156c1 to public failed |
17793
8474be4412ca
wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
17565
diff
changeset
|
133 % serve errors |
25502
bd41c19383db
phases: abort the whole push if phases fail to update (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25478
diff
changeset
|
134 [255] |
17793
8474be4412ca
wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
17565
diff
changeset
|
135 |
8474be4412ca
wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
17565
diff
changeset
|
136 expect phase change success |
8474be4412ca
wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
17565
diff
changeset
|
137 |
30234
34a5f6c66bc5
tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
27739
diff
changeset
|
138 $ cat >> .hg/hgrc <<EOF |
34a5f6c66bc5
tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
27739
diff
changeset
|
139 > prepushkey = sh -c "printenv.py prepushkey 0" |
34a5f6c66bc5
tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
27739
diff
changeset
|
140 > EOF |
17793
8474be4412ca
wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
17565
diff
changeset
|
141 $ req |
8474be4412ca
wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
17565
diff
changeset
|
142 pushing to http://localhost:$HGPORT/ |
8474be4412ca
wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
17565
diff
changeset
|
143 searching for changes |
25502
bd41c19383db
phases: abort the whole push if phases fail to update (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25478
diff
changeset
|
144 remote: adding changesets |
bd41c19383db
phases: abort the whole push if phases fail to update (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25478
diff
changeset
|
145 remote: adding manifests |
bd41c19383db
phases: abort the whole push if phases fail to update (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25478
diff
changeset
|
146 remote: adding file changes |
bd41c19383db
phases: abort the whole push if phases fail to update (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25478
diff
changeset
|
147 remote: added 1 changesets with 1 changes to 1 files |
31815
7937dabb5447
tests: fix missing (glob) annotations in test-push-http.t
Augie Fackler <augie@google.com>
parents:
31747
diff
changeset
|
148 remote: prepushkey hook: HG_BUNDLE2=1 HG_HOOKNAME=prepushkey HG_HOOKTYPE=prepushkey HG_KEY=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NAMESPACE=phases HG_NEW=0 HG_NODE=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NODE_LAST=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_OLD=1 HG_PENDING=$TESTTMP/test HG_PHASES_MOVED=1 HG_SOURCE=serve HG_TXNID=TXN:$ID$ HG_URL=remote:http:$LOCALIP: (glob) |
17793
8474be4412ca
wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
17565
diff
changeset
|
149 % serve errors |
8474be4412ca
wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
17565
diff
changeset
|
150 $ hg rollback |
8474be4412ca
wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
17565
diff
changeset
|
151 repository tip rolled back to revision 0 (undo serve) |
8474be4412ca
wireproto: fix pushkey hook failure and output on remote http repo
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
17565
diff
changeset
|
152 |
12483
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
153 expect authorization error: all users denied |
2481
5c65b4e51610
add tests for push over http.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
154 |
12483
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
155 $ echo '[web]' > .hg/hgrc |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
156 $ echo 'push_ssl = false' >> .hg/hgrc |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
157 $ echo 'deny_push = *' >> .hg/hgrc |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
158 $ req |
12643
d08bb64888bc
tests: reintroduce ":$HGPORT" in test output
Mads Kiilerich <mads@kiilerich.com>
parents:
12483
diff
changeset
|
159 pushing to http://localhost:$HGPORT/ |
12483
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
160 searching for changes |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
161 abort: authorization failed |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
162 % serve errors |
17455
2212af23c9de
test-push-http: include exit status of hg push
Yuya Nishihara <yuya@tcha.org>
parents:
17018
diff
changeset
|
163 [255] |
2481
5c65b4e51610
add tests for push over http.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
164 |
12483
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
165 expect authorization error: some users denied, users must be authenticated |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
166 |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
167 $ echo 'deny_push = unperson' >> .hg/hgrc |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
168 $ req |
12643
d08bb64888bc
tests: reintroduce ":$HGPORT" in test output
Mads Kiilerich <mads@kiilerich.com>
parents:
12483
diff
changeset
|
169 pushing to http://localhost:$HGPORT/ |
12483
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
170 searching for changes |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
171 abort: authorization failed |
fecd4966f8d4
tests: unify test-push-http
Matt Mackall <mpm@selenic.com>
parents:
11469
diff
changeset
|
172 % serve errors |
17455
2212af23c9de
test-push-http: include exit status of hg push
Yuya Nishihara <yuya@tcha.org>
parents:
17018
diff
changeset
|
173 [255] |
16913
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
15933
diff
changeset
|
174 |
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
15933
diff
changeset
|
175 $ cd .. |