Mercurial > hg
annotate tests/test-lfs-serve-access.t @ 41459:5a4d2ab7b55c stable
Added tag 4.9 for changeset 83377b4b4ae0
author | Augie Fackler <raf@durin42.com> |
---|---|
date | Fri, 01 Feb 2019 13:44:07 -0500 |
parents | 28a4fb793ba1 |
children | 2a1bb442593b f2f538725d07 |
rev | line source |
---|---|
38021
538e850ae737
tests: mark tests that fail when using chg as #require no-chg
Kyle Lippincott <spectral@google.com>
parents:
37766
diff
changeset
|
1 #require serve no-reposimplestore no-chg |
37248
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
2 |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
3 $ cat >> $HGRCPATH <<EOF |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
4 > [extensions] |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
5 > lfs= |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
6 > [lfs] |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
7 > track=all() |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
8 > [web] |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
9 > push_ssl = False |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
10 > allow-push = * |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
11 > EOF |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
12 |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
13 Serving LFS files can experimentally be turned off. The long term solution is |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
14 to support the 'verify' action in both client and server, so that the server can |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
15 tell the client to store files elsewhere. |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
16 |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
17 $ hg init server |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
18 $ hg --config "lfs.usercache=$TESTTMP/servercache" \ |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
19 > --config experimental.lfs.serve=False -R server serve -d \ |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
20 > -p $HGPORT --pid-file=hg.pid -A $TESTTMP/access.log -E $TESTTMP/errors.log |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
21 $ cat hg.pid >> $DAEMON_PIDS |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
22 |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
23 Uploads fail... |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
24 |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
25 $ hg init client |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
26 $ echo 'this-is-an-lfs-file' > client/lfs.bin |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
27 $ hg -R client ci -Am 'initial commit' |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
28 adding lfs.bin |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
29 $ hg -R client push http://localhost:$HGPORT |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
30 pushing to http://localhost:$HGPORT/ |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
31 searching for changes |
40659
8863f08c1630
lfs: provide more Batch API error info via a hint in the raised exception
Matt Harbison <matt_harbison@yahoo.com>
parents:
40324
diff
changeset
|
32 abort: LFS HTTP error: HTTP Error 400: no such method: .git! |
40660
9f78d10742af
lfs: improve the hints for common errors in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
40659
diff
changeset
|
33 (check that lfs serving is enabled on http://localhost:$HGPORT/.git/info/lfs and "upload" is supported) |
37248
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
34 [255] |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
35 |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
36 ... so do a local push to make the data available. Remove the blob from the |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
37 default cache, so it attempts to download. |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
38 $ hg --config "lfs.usercache=$TESTTMP/servercache" \ |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
39 > --config "lfs.url=null://" \ |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
40 > -R client push -q server |
37617
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
41 $ mv `hg config lfs.usercache` $TESTTMP/servercache |
37248
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
42 |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
43 Downloads fail... |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
44 |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
45 $ hg clone http://localhost:$HGPORT httpclone |
40324
6637b079ae45
lfs: autoload the extension when cloning from repo with lfs enabled
Matt Harbison <matt_harbison@yahoo.com>
parents:
40034
diff
changeset
|
46 (remote is using large file support (lfs); lfs will be enabled for this repository) |
37248
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
47 requesting all changes |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
48 adding changesets |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
49 adding manifests |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
50 adding file changes |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
51 added 1 changesets with 1 changes to 1 files |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
52 new changesets 525251863cad |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
53 updating to branch default |
40659
8863f08c1630
lfs: provide more Batch API error info via a hint in the raised exception
Matt Harbison <matt_harbison@yahoo.com>
parents:
40324
diff
changeset
|
54 abort: LFS HTTP error: HTTP Error 400: no such method: .git! |
40660
9f78d10742af
lfs: improve the hints for common errors in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
40659
diff
changeset
|
55 (check that lfs serving is enabled on http://localhost:$HGPORT/.git/info/lfs and "download" is supported) |
37248
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
56 [255] |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
57 |
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
39457
diff
changeset
|
58 $ "$PYTHON" $RUNTESTDIR/killdaemons.py $DAEMON_PIDS |
37248
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
59 |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
60 $ cat $TESTTMP/access.log $TESTTMP/errors.log |
37556
b77aa48ba690
httppeer: only advertise partial-pull if capabilities are known
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37498
diff
changeset
|
61 $LOCALIP - - [$LOGDATE$] "GET /?cmd=capabilities HTTP/1.1" 200 - (glob) |
37498
aacfca6f9767
wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents:
37348
diff
changeset
|
62 $LOCALIP - - [$LOGDATE$] "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D525251863cad618e55d483555f3d00a2ca99597e x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
aacfca6f9767
wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents:
37348
diff
changeset
|
63 $LOCALIP - - [$LOGDATE$] "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=phases x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
aacfca6f9767
wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents:
37348
diff
changeset
|
64 $LOCALIP - - [$LOGDATE$] "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
37248
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
65 $LOCALIP - - [$LOGDATE$] "POST /.git/info/lfs/objects/batch HTTP/1.1" 400 - (glob) |
37556
b77aa48ba690
httppeer: only advertise partial-pull if capabilities are known
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37498
diff
changeset
|
66 $LOCALIP - - [$LOGDATE$] "GET /?cmd=capabilities HTTP/1.1" 200 - (glob) |
37498
aacfca6f9767
wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents:
37348
diff
changeset
|
67 $LOCALIP - - [$LOGDATE$] "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
aacfca6f9767
wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents:
37348
diff
changeset
|
68 $LOCALIP - - [$LOGDATE$] "GET /?cmd=getbundle HTTP/1.1" 200 - x-hgarg-1:bookmarks=1&bundlecaps=HG20%2Cbundle2%3DHG20%250Abookmarks%250Achangegroup%253D01%252C02%252C03%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Aphases%253Dheads%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps%250Arev-branch-cache%250Astream%253Dv2&cg=1&common=0000000000000000000000000000000000000000&heads=525251863cad618e55d483555f3d00a2ca99597e&listkeys=bookmarks&phases=1 x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
37248
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
69 $LOCALIP - - [$LOGDATE$] "POST /.git/info/lfs/objects/batch HTTP/1.1" 400 - (glob) |
37617
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
70 |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
71 $ rm -f $TESTTMP/access.log $TESTTMP/errors.log |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
72 $ hg --config "lfs.usercache=$TESTTMP/servercache" -R server serve -d \ |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
73 > -p $HGPORT --pid-file=hg.pid --prefix=subdir/mount/point \ |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
74 > -A $TESTTMP/access.log -E $TESTTMP/errors.log |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
75 $ cat hg.pid >> $DAEMON_PIDS |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
76 |
40660
9f78d10742af
lfs: improve the hints for common errors in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
40659
diff
changeset
|
77 Reasonable hint for a misconfigured blob server |
9f78d10742af
lfs: improve the hints for common errors in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
40659
diff
changeset
|
78 |
9f78d10742af
lfs: improve the hints for common errors in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
40659
diff
changeset
|
79 $ hg -R httpclone update default --config lfs.url=http://localhost:$HGPORT/missing |
9f78d10742af
lfs: improve the hints for common errors in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
40659
diff
changeset
|
80 abort: LFS HTTP error: HTTP Error 404: Not Found! |
9f78d10742af
lfs: improve the hints for common errors in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
40659
diff
changeset
|
81 (the "lfs.url" config may be used to override http://localhost:$HGPORT/missing) |
9f78d10742af
lfs: improve the hints for common errors in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
40659
diff
changeset
|
82 [255] |
9f78d10742af
lfs: improve the hints for common errors in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
40659
diff
changeset
|
83 |
40661
380f5131ee7b
lfs: handle URLErrors to add additional information
Matt Harbison <matt_harbison@yahoo.com>
parents:
40660
diff
changeset
|
84 $ hg -R httpclone update default --config lfs.url=http://localhost:$HGPORT2/missing |
40881
8695fbe17f7c
tests: update network related errors for Debian 9
Boris Feld <boris.feld@octobus.net>
parents:
40662
diff
changeset
|
85 abort: LFS error: *onnection *refused*! (glob) (?) |
8695fbe17f7c
tests: update network related errors for Debian 9
Boris Feld <boris.feld@octobus.net>
parents:
40662
diff
changeset
|
86 abort: LFS error: $EADDRNOTAVAIL$! (glob) (?) |
40661
380f5131ee7b
lfs: handle URLErrors to add additional information
Matt Harbison <matt_harbison@yahoo.com>
parents:
40660
diff
changeset
|
87 (the "lfs.url" config may be used to override http://localhost:$HGPORT2/missing) |
380f5131ee7b
lfs: handle URLErrors to add additional information
Matt Harbison <matt_harbison@yahoo.com>
parents:
40660
diff
changeset
|
88 [255] |
380f5131ee7b
lfs: handle URLErrors to add additional information
Matt Harbison <matt_harbison@yahoo.com>
parents:
40660
diff
changeset
|
89 |
40660
9f78d10742af
lfs: improve the hints for common errors in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
40659
diff
changeset
|
90 Blob URIs are correct when --prefix is used |
9f78d10742af
lfs: improve the hints for common errors in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
40659
diff
changeset
|
91 |
37691
d241e6632669
lfs: fix the inferred remote store path when using a --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37690
diff
changeset
|
92 $ hg clone --debug http://localhost:$HGPORT/subdir/mount/point cloned2 |
37617
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
93 using http://localhost:$HGPORT/subdir/mount/point |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
94 sending capabilities command |
40324
6637b079ae45
lfs: autoload the extension when cloning from repo with lfs enabled
Matt Harbison <matt_harbison@yahoo.com>
parents:
40034
diff
changeset
|
95 (remote is using large file support (lfs); lfs will be enabled for this repository) |
37617
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
96 query 1; heads |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
97 sending batch command |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
98 requesting all changes |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
99 sending getbundle command |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
100 bundle2-input-bundle: with-transaction |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
101 bundle2-input-part: "changegroup" (params: 1 mandatory 1 advisory) supported |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
102 adding changesets |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
103 add changeset 525251863cad |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
104 adding manifests |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
105 adding file changes |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
106 adding lfs.bin revisions |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
107 added 1 changesets with 1 changes to 1 files |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
108 bundle2-input-part: total payload size 648 |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
109 bundle2-input-part: "listkeys" (params: 1 mandatory) supported |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
110 bundle2-input-part: "phase-heads" supported |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
111 bundle2-input-part: total payload size 24 |
37842
326b174c6a47
bundle2: mark the bundle2 part as advisory (issue5872)
Boris Feld <boris.feld@octobus.net>
parents:
37766
diff
changeset
|
112 bundle2-input-part: "cache:rev-branch-cache" (advisory) supported |
37617
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
113 bundle2-input-part: total payload size 39 |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
114 bundle2-input-bundle: 3 parts total |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
115 checking for updated bookmarks |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
116 updating the branch cache |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
117 new changesets 525251863cad |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
118 updating to branch default |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
119 resolving manifests |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
120 branchmerge: False, force: False, partial: False |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
121 ancestor: 000000000000, local: 000000000000+, remote: 525251863cad |
37691
d241e6632669
lfs: fix the inferred remote store path when using a --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37690
diff
changeset
|
122 lfs: assuming remote store: http://localhost:$HGPORT/subdir/mount/point/.git/info/lfs |
37617
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
123 Status: 200 |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
124 Content-Length: 371 |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
125 Content-Type: application/vnd.git-lfs+json |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
126 Date: $HTTP_DATE$ |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
127 Server: testing stub value |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
128 { |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
129 "objects": [ |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
130 { |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
131 "actions": { |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
132 "download": { |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
133 "expires_at": "$ISO_8601_DATE_TIME$" |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
134 "header": { |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
135 "Accept": "application/vnd.git-lfs" |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
136 } |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
137 "href": "http://localhost:$HGPORT/subdir/mount/point/.hg/lfs/objects/f03217a32529a28a42d03b1244fe09b6e0f9fd06d7b966d4d50567be2abe6c0e" |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
138 } |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
139 } |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
140 "oid": "f03217a32529a28a42d03b1244fe09b6e0f9fd06d7b966d4d50567be2abe6c0e" |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
141 "size": 20 |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
142 } |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
143 ] |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
144 "transfer": "basic" |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
145 } |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
146 lfs: downloading f03217a32529a28a42d03b1244fe09b6e0f9fd06d7b966d4d50567be2abe6c0e (20 bytes) |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
147 Status: 200 |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
148 Content-Length: 20 |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
149 Content-Type: application/octet-stream |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
150 Date: $HTTP_DATE$ |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
151 Server: testing stub value |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
152 lfs: adding f03217a32529a28a42d03b1244fe09b6e0f9fd06d7b966d4d50567be2abe6c0e to the usercache |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
153 lfs: processed: f03217a32529a28a42d03b1244fe09b6e0f9fd06d7b966d4d50567be2abe6c0e |
37765
ab04972a33ef
lfs: enable the final download count status message
Matt Harbison <matt_harbison@yahoo.com>
parents:
37692
diff
changeset
|
154 lfs: downloaded 1 files (20 bytes) |
37617
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
155 lfs.bin: remote created -> g |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
156 getting lfs.bin |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
157 lfs: found f03217a32529a28a42d03b1244fe09b6e0f9fd06d7b966d4d50567be2abe6c0e in the local lfs store |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
158 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
40034
393e44324037
httppeer: report http statistics
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39707
diff
changeset
|
159 (sent 3 HTTP requests and * bytes; received * bytes in responses) (glob) |
37617
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
160 |
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
39457
diff
changeset
|
161 $ "$PYTHON" $RUNTESTDIR/killdaemons.py $DAEMON_PIDS |
37617
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
162 |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
163 $ cat $TESTTMP/access.log $TESTTMP/errors.log |
40660
9f78d10742af
lfs: improve the hints for common errors in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
40659
diff
changeset
|
164 $LOCALIP - - [$LOGDATE$] "POST /missing/objects/batch HTTP/1.1" 404 - (glob) |
37617
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
165 $LOCALIP - - [$LOGDATE$] "GET /subdir/mount/point?cmd=capabilities HTTP/1.1" 200 - (glob) |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
166 $LOCALIP - - [$LOGDATE$] "GET /subdir/mount/point?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
167 $LOCALIP - - [$LOGDATE$] "GET /subdir/mount/point?cmd=getbundle HTTP/1.1" 200 - x-hgarg-1:bookmarks=1&bundlecaps=HG20%2Cbundle2%3DHG20%250Abookmarks%250Achangegroup%253D01%252C02%252C03%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Aphases%253Dheads%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps%250Arev-branch-cache%250Astream%253Dv2&cg=1&common=0000000000000000000000000000000000000000&heads=525251863cad618e55d483555f3d00a2ca99597e&listkeys=bookmarks&phases=1 x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
168 $LOCALIP - - [$LOGDATE$] "POST /subdir/mount/point/.git/info/lfs/objects/batch HTTP/1.1" 200 - (glob) |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
169 $LOCALIP - - [$LOGDATE$] "GET /subdir/mount/point/.hg/lfs/objects/f03217a32529a28a42d03b1244fe09b6e0f9fd06d7b966d4d50567be2abe6c0e HTTP/1.1" 200 - (glob) |
37689
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
170 |
39457
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
171 Blobs that already exist in the usercache are linked into the repo store, even |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
172 though the client doesn't send the blob. |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
173 |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
174 $ hg init server2 |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
175 $ hg --config "lfs.usercache=$TESTTMP/servercache" -R server2 serve -d \ |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
176 > -p $HGPORT --pid-file=hg.pid \ |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
177 > -A $TESTTMP/access.log -E $TESTTMP/errors.log |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
178 $ cat hg.pid >> $DAEMON_PIDS |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
179 |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
180 $ hg --config "lfs.usercache=$TESTTMP/servercache" -R cloned2 --debug \ |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
181 > push http://localhost:$HGPORT | grep '^[{} ]' |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
182 { |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
183 "objects": [ |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
184 { |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
185 "oid": "f03217a32529a28a42d03b1244fe09b6e0f9fd06d7b966d4d50567be2abe6c0e" |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
186 "size": 20 |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
187 } |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
188 ] |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
189 "transfer": "basic" |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
190 } |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
191 $ find server2/.hg/store/lfs/objects | sort |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
192 server2/.hg/store/lfs/objects |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
193 server2/.hg/store/lfs/objects/f0 |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
194 server2/.hg/store/lfs/objects/f0/3217a32529a28a42d03b1244fe09b6e0f9fd06d7b966d4d50567be2abe6c0e |
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
39457
diff
changeset
|
195 $ "$PYTHON" $RUNTESTDIR/killdaemons.py $DAEMON_PIDS |
39457
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
196 $ cat $TESTTMP/errors.log |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
197 |
37689
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
198 $ cat >> $TESTTMP/lfsstoreerror.py <<EOF |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
199 > import errno |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
200 > from hgext.lfs import blobstore |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
201 > |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
202 > _numverifies = 0 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
203 > _readerr = True |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
204 > |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
205 > def reposetup(ui, repo): |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
206 > # Nothing to do with a remote repo |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
207 > if not repo.local(): |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
208 > return |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
209 > |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
210 > store = repo.svfs.lfslocalblobstore |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
211 > class badstore(store.__class__): |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
212 > def download(self, oid, src): |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
213 > '''Called in the server to handle reading from the client in a |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
214 > PUT request.''' |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
215 > origread = src.read |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
216 > def _badread(nbytes): |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
217 > # Simulate bad data/checksum failure from the client |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
218 > return b'0' * len(origread(nbytes)) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
219 > src.read = _badread |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
220 > super(badstore, self).download(oid, src) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
221 > |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
222 > def _read(self, vfs, oid, verify): |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
223 > '''Called in the server to read data for a GET request, and then |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
224 > calls self._verify() on it before returning.''' |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
225 > global _readerr |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
226 > # One time simulation of a read error |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
227 > if _readerr: |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
228 > _readerr = False |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
229 > raise IOError(errno.EIO, '%s: I/O error' % oid) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
230 > # Simulate corrupt content on client download |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
231 > blobstore._verify(oid, 'dummy content') |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
232 > |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
233 > def verify(self, oid): |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
234 > '''Called in the server to populate the Batch API response, |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
235 > letting the client re-upload if the file is corrupt.''' |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
236 > # Fail verify in Batch API for one clone command and one push |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
237 > # command with an IOError. Then let it through to access other |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
238 > # functions. Checksum failure is tested elsewhere. |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
239 > global _numverifies |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
240 > _numverifies += 1 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
241 > if _numverifies <= 2: |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
242 > raise IOError(errno.EIO, '%s: I/O error' % oid) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
243 > return super(badstore, self).verify(oid) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
244 > |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
245 > store.__class__ = badstore |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
246 > EOF |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
247 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
248 $ rm -rf `hg config lfs.usercache` |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
249 $ rm -f $TESTTMP/access.log $TESTTMP/errors.log |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
250 $ hg --config "lfs.usercache=$TESTTMP/servercache" \ |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
251 > --config extensions.lfsstoreerror=$TESTTMP/lfsstoreerror.py \ |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
252 > -R server serve -d \ |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
253 > -p $HGPORT1 --pid-file=hg.pid -A $TESTTMP/access.log -E $TESTTMP/errors.log |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
254 $ cat hg.pid >> $DAEMON_PIDS |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
255 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
256 Test an I/O error in localstore.verify() (Batch API) with GET |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
257 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
258 $ hg clone http://localhost:$HGPORT1 httpclone2 |
40324
6637b079ae45
lfs: autoload the extension when cloning from repo with lfs enabled
Matt Harbison <matt_harbison@yahoo.com>
parents:
40034
diff
changeset
|
259 (remote is using large file support (lfs); lfs will be enabled for this repository) |
37689
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
260 requesting all changes |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
261 adding changesets |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
262 adding manifests |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
263 adding file changes |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
264 added 1 changesets with 1 changes to 1 files |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
265 new changesets 525251863cad |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
266 updating to branch default |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
267 abort: LFS server error for "lfs.bin": Internal server error! |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
268 [255] |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
269 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
270 Test an I/O error in localstore.verify() (Batch API) with PUT |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
271 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
272 $ echo foo > client/lfs.bin |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
273 $ hg -R client ci -m 'mod lfs' |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
274 $ hg -R client push http://localhost:$HGPORT1 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
275 pushing to http://localhost:$HGPORT1/ |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
276 searching for changes |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
277 abort: LFS server error for "unknown": Internal server error! |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
278 [255] |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
279 TODO: figure out how to associate the file name in the error above |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
280 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
281 Test a bad checksum sent by the client in the transfer API |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
282 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
283 $ hg -R client push http://localhost:$HGPORT1 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
284 pushing to http://localhost:$HGPORT1/ |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
285 searching for changes |
40662
93e5d18251d6
lfs: make the exception messages consistent
Matt Harbison <matt_harbison@yahoo.com>
parents:
40661
diff
changeset
|
286 abort: LFS HTTP error: HTTP Error 422: corrupt blob (oid=b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c, action=upload)! |
37689
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
287 [255] |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
288 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
289 $ echo 'test lfs file' > server/lfs3.bin |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
290 $ hg --config experimental.lfs.disableusercache=True \ |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
291 > -R server ci -Aqm 'another lfs file' |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
292 $ hg -R client pull -q http://localhost:$HGPORT1 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
293 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
294 Test an I/O error during the processing of the GET request |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
295 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
296 $ hg --config lfs.url=http://localhost:$HGPORT1/.git/info/lfs \ |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
297 > -R client update -r tip |
40662
93e5d18251d6
lfs: make the exception messages consistent
Matt Harbison <matt_harbison@yahoo.com>
parents:
40661
diff
changeset
|
298 abort: LFS HTTP error: HTTP Error 500: Internal Server Error (oid=276f73cfd75f9fb519810df5f5d96d6594ca2521abd86cbcd92122f7d51a1f3d, action=download)! |
37689
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
299 [255] |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
300 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
301 Test a checksum failure during the processing of the GET request |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
302 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
303 $ hg --config lfs.url=http://localhost:$HGPORT1/.git/info/lfs \ |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
304 > -R client update -r tip |
40662
93e5d18251d6
lfs: make the exception messages consistent
Matt Harbison <matt_harbison@yahoo.com>
parents:
40661
diff
changeset
|
305 abort: LFS HTTP error: HTTP Error 422: corrupt blob (oid=276f73cfd75f9fb519810df5f5d96d6594ca2521abd86cbcd92122f7d51a1f3d, action=download)! |
37689
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
306 [255] |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
307 |
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
39457
diff
changeset
|
308 $ "$PYTHON" $RUNTESTDIR/killdaemons.py $DAEMON_PIDS |
37689
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
309 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
310 $ cat $TESTTMP/access.log |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
311 $LOCALIP - - [$LOGDATE$] "GET /?cmd=capabilities HTTP/1.1" 200 - (glob) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
312 $LOCALIP - - [$LOGDATE$] "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
313 $LOCALIP - - [$LOGDATE$] "GET /?cmd=getbundle HTTP/1.1" 200 - x-hgarg-1:bookmarks=1&bundlecaps=HG20%2Cbundle2%3DHG20%250Abookmarks%250Achangegroup%253D01%252C02%252C03%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Aphases%253Dheads%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps%250Arev-branch-cache%250Astream%253Dv2&cg=1&common=0000000000000000000000000000000000000000&heads=525251863cad618e55d483555f3d00a2ca99597e&listkeys=bookmarks&phases=1 x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
314 $LOCALIP - - [$LOGDATE$] "POST /.git/info/lfs/objects/batch HTTP/1.1" 200 - (glob) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
315 $LOCALIP - - [$LOGDATE$] "GET /?cmd=capabilities HTTP/1.1" 200 - (glob) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
316 $LOCALIP - - [$LOGDATE$] "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D392c05922088bacf8e68a6939b480017afbf245d x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
317 $LOCALIP - - [$LOGDATE$] "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=phases x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
318 $LOCALIP - - [$LOGDATE$] "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
319 $LOCALIP - - [$LOGDATE$] "GET /?cmd=branchmap HTTP/1.1" 200 - x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
320 $LOCALIP - - [$LOGDATE$] "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
321 $LOCALIP - - [$LOGDATE$] "POST /.git/info/lfs/objects/batch HTTP/1.1" 200 - (glob) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
322 $LOCALIP - - [$LOGDATE$] "GET /?cmd=capabilities HTTP/1.1" 200 - (glob) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
323 $LOCALIP - - [$LOGDATE$] "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D392c05922088bacf8e68a6939b480017afbf245d x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
324 $LOCALIP - - [$LOGDATE$] "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=phases x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
325 $LOCALIP - - [$LOGDATE$] "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
326 $LOCALIP - - [$LOGDATE$] "GET /?cmd=branchmap HTTP/1.1" 200 - x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
327 $LOCALIP - - [$LOGDATE$] "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
328 $LOCALIP - - [$LOGDATE$] "POST /.git/info/lfs/objects/batch HTTP/1.1" 200 - (glob) |
37692
10e5bb9678f4
lfs: gracefully handle aborts on the server when corrupt blobs are detected
Matt Harbison <matt_harbison@yahoo.com>
parents:
37691
diff
changeset
|
329 $LOCALIP - - [$LOGDATE$] "PUT /.hg/lfs/objects/b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c HTTP/1.1" 422 - (glob) |
37689
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
330 $LOCALIP - - [$LOGDATE$] "GET /?cmd=capabilities HTTP/1.1" 200 - (glob) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
331 $LOCALIP - - [$LOGDATE$] "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D392c05922088bacf8e68a6939b480017afbf245d x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
332 $LOCALIP - - [$LOGDATE$] "GET /?cmd=getbundle HTTP/1.1" 200 - x-hgarg-1:bookmarks=1&bundlecaps=HG20%2Cbundle2%3DHG20%250Abookmarks%250Achangegroup%253D01%252C02%252C03%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Aphases%253Dheads%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps%250Arev-branch-cache%250Astream%253Dv2&cg=1&common=525251863cad618e55d483555f3d00a2ca99597e&heads=506bf3d83f78c54b89e81c6411adee19fdf02156+525251863cad618e55d483555f3d00a2ca99597e&listkeys=bookmarks&phases=1 x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
333 $LOCALIP - - [$LOGDATE$] "POST /.git/info/lfs/objects/batch HTTP/1.1" 200 - (glob) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
334 $LOCALIP - - [$LOGDATE$] "GET /.hg/lfs/objects/276f73cfd75f9fb519810df5f5d96d6594ca2521abd86cbcd92122f7d51a1f3d HTTP/1.1" 500 - (glob) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
335 $LOCALIP - - [$LOGDATE$] "POST /.git/info/lfs/objects/batch HTTP/1.1" 200 - (glob) |
37692
10e5bb9678f4
lfs: gracefully handle aborts on the server when corrupt blobs are detected
Matt Harbison <matt_harbison@yahoo.com>
parents:
37691
diff
changeset
|
336 $LOCALIP - - [$LOGDATE$] "GET /.hg/lfs/objects/276f73cfd75f9fb519810df5f5d96d6594ca2521abd86cbcd92122f7d51a1f3d HTTP/1.1" 422 - (glob) |
37689
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
337 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
338 $ grep -v ' File "' $TESTTMP/errors.log |
37690
726c4102db9e
lfs: log information about Internal Server Errors reported in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
37689
diff
changeset
|
339 $LOCALIP - - [$ERRDATE$] HG error: Exception happened while processing request '/.git/info/lfs/objects/batch': (glob) |
726c4102db9e
lfs: log information about Internal Server Errors reported in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
37689
diff
changeset
|
340 $LOCALIP - - [$ERRDATE$] HG error: Traceback (most recent call last): (glob) |
726c4102db9e
lfs: log information about Internal Server Errors reported in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
37689
diff
changeset
|
341 $LOCALIP - - [$ERRDATE$] HG error: verifies = store.verify(oid) (glob) |
726c4102db9e
lfs: log information about Internal Server Errors reported in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
37689
diff
changeset
|
342 $LOCALIP - - [$ERRDATE$] HG error: raise IOError(errno.EIO, '%s: I/O error' % oid) (glob) |
726c4102db9e
lfs: log information about Internal Server Errors reported in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
37689
diff
changeset
|
343 $LOCALIP - - [$ERRDATE$] HG error: IOError: [Errno 5] f03217a32529a28a42d03b1244fe09b6e0f9fd06d7b966d4d50567be2abe6c0e: I/O error (glob) |
726c4102db9e
lfs: log information about Internal Server Errors reported in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
37689
diff
changeset
|
344 $LOCALIP - - [$ERRDATE$] HG error: (glob) |
726c4102db9e
lfs: log information about Internal Server Errors reported in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
37689
diff
changeset
|
345 $LOCALIP - - [$ERRDATE$] HG error: Exception happened while processing request '/.git/info/lfs/objects/batch': (glob) |
726c4102db9e
lfs: log information about Internal Server Errors reported in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
37689
diff
changeset
|
346 $LOCALIP - - [$ERRDATE$] HG error: Traceback (most recent call last): (glob) |
726c4102db9e
lfs: log information about Internal Server Errors reported in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
37689
diff
changeset
|
347 $LOCALIP - - [$ERRDATE$] HG error: verifies = store.verify(oid) (glob) |
726c4102db9e
lfs: log information about Internal Server Errors reported in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
37689
diff
changeset
|
348 $LOCALIP - - [$ERRDATE$] HG error: raise IOError(errno.EIO, '%s: I/O error' % oid) (glob) |
726c4102db9e
lfs: log information about Internal Server Errors reported in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
37689
diff
changeset
|
349 $LOCALIP - - [$ERRDATE$] HG error: IOError: [Errno 5] b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c: I/O error (glob) |
726c4102db9e
lfs: log information about Internal Server Errors reported in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
37689
diff
changeset
|
350 $LOCALIP - - [$ERRDATE$] HG error: (glob) |
37692
10e5bb9678f4
lfs: gracefully handle aborts on the server when corrupt blobs are detected
Matt Harbison <matt_harbison@yahoo.com>
parents:
37691
diff
changeset
|
351 $LOCALIP - - [$ERRDATE$] HG error: Exception happened while processing request '/.hg/lfs/objects/b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c': (glob) |
10e5bb9678f4
lfs: gracefully handle aborts on the server when corrupt blobs are detected
Matt Harbison <matt_harbison@yahoo.com>
parents:
37691
diff
changeset
|
352 $LOCALIP - - [$ERRDATE$] HG error: Traceback (most recent call last): (glob) |
10e5bb9678f4
lfs: gracefully handle aborts on the server when corrupt blobs are detected
Matt Harbison <matt_harbison@yahoo.com>
parents:
37691
diff
changeset
|
353 $LOCALIP - - [$ERRDATE$] HG error: localstore.download(oid, req.bodyfh) (glob) |
10e5bb9678f4
lfs: gracefully handle aborts on the server when corrupt blobs are detected
Matt Harbison <matt_harbison@yahoo.com>
parents:
37691
diff
changeset
|
354 $LOCALIP - - [$ERRDATE$] HG error: super(badstore, self).download(oid, src) (glob) |
10e5bb9678f4
lfs: gracefully handle aborts on the server when corrupt blobs are detected
Matt Harbison <matt_harbison@yahoo.com>
parents:
37691
diff
changeset
|
355 $LOCALIP - - [$ERRDATE$] HG error: % oid) (glob) |
10e5bb9678f4
lfs: gracefully handle aborts on the server when corrupt blobs are detected
Matt Harbison <matt_harbison@yahoo.com>
parents:
37691
diff
changeset
|
356 $LOCALIP - - [$ERRDATE$] HG error: LfsCorruptionError: corrupt remote lfs object: b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c (glob) |
10e5bb9678f4
lfs: gracefully handle aborts on the server when corrupt blobs are detected
Matt Harbison <matt_harbison@yahoo.com>
parents:
37691
diff
changeset
|
357 $LOCALIP - - [$ERRDATE$] HG error: (glob) |
37689
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
358 $LOCALIP - - [$ERRDATE$] Exception happened during processing request '/.hg/lfs/objects/276f73cfd75f9fb519810df5f5d96d6594ca2521abd86cbcd92122f7d51a1f3d': (glob) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
359 Traceback (most recent call last): |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
360 self.do_write() |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
361 self.do_hgweb() |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
362 for chunk in self.server.application(env, self._start_response): |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
363 for r in self._runwsgi(req, res, repo): |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
364 rctx, req, res, self.check_perm) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
365 return func(*(args + a), **kw) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
366 lambda perm: |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
367 res.setbodybytes(localstore.read(oid)) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
368 blob = self._read(self.vfs, oid, verify) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
369 raise IOError(errno.EIO, '%s: I/O error' % oid) |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
370 IOError: [Errno 5] 276f73cfd75f9fb519810df5f5d96d6594ca2521abd86cbcd92122f7d51a1f3d: I/O error |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
371 |
37692
10e5bb9678f4
lfs: gracefully handle aborts on the server when corrupt blobs are detected
Matt Harbison <matt_harbison@yahoo.com>
parents:
37691
diff
changeset
|
372 $LOCALIP - - [$ERRDATE$] HG error: Exception happened while processing request '/.hg/lfs/objects/276f73cfd75f9fb519810df5f5d96d6594ca2521abd86cbcd92122f7d51a1f3d': (glob) |
10e5bb9678f4
lfs: gracefully handle aborts on the server when corrupt blobs are detected
Matt Harbison <matt_harbison@yahoo.com>
parents:
37691
diff
changeset
|
373 $LOCALIP - - [$ERRDATE$] HG error: Traceback (most recent call last): (glob) |
10e5bb9678f4
lfs: gracefully handle aborts on the server when corrupt blobs are detected
Matt Harbison <matt_harbison@yahoo.com>
parents:
37691
diff
changeset
|
374 $LOCALIP - - [$ERRDATE$] HG error: res.setbodybytes(localstore.read(oid)) (glob) |
10e5bb9678f4
lfs: gracefully handle aborts on the server when corrupt blobs are detected
Matt Harbison <matt_harbison@yahoo.com>
parents:
37691
diff
changeset
|
375 $LOCALIP - - [$ERRDATE$] HG error: blob = self._read(self.vfs, oid, verify) (glob) |
10e5bb9678f4
lfs: gracefully handle aborts on the server when corrupt blobs are detected
Matt Harbison <matt_harbison@yahoo.com>
parents:
37691
diff
changeset
|
376 $LOCALIP - - [$ERRDATE$] HG error: blobstore._verify(oid, 'dummy content') (glob) |
10e5bb9678f4
lfs: gracefully handle aborts on the server when corrupt blobs are detected
Matt Harbison <matt_harbison@yahoo.com>
parents:
37691
diff
changeset
|
377 $LOCALIP - - [$ERRDATE$] HG error: hint=_('run hg verify')) (glob) |
10e5bb9678f4
lfs: gracefully handle aborts on the server when corrupt blobs are detected
Matt Harbison <matt_harbison@yahoo.com>
parents:
37691
diff
changeset
|
378 $LOCALIP - - [$ERRDATE$] HG error: LfsCorruptionError: detected corrupt lfs object: 276f73cfd75f9fb519810df5f5d96d6594ca2521abd86cbcd92122f7d51a1f3d (glob) |
10e5bb9678f4
lfs: gracefully handle aborts on the server when corrupt blobs are detected
Matt Harbison <matt_harbison@yahoo.com>
parents:
37691
diff
changeset
|
379 $LOCALIP - - [$ERRDATE$] HG error: (glob) |
37766
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
380 |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
381 Basic Authorization headers are returned by the Batch API, and sent back with |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
382 the GET/PUT request. |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
383 |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
384 $ rm -f $TESTTMP/access.log $TESTTMP/errors.log |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
385 |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
386 $ cat >> $HGRCPATH << EOF |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
387 > [experimental] |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
388 > lfs.disableusercache = True |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
389 > [auth] |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
390 > l.schemes=http |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
391 > l.prefix=lo |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
392 > l.username=user |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
393 > l.password=pass |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
394 > EOF |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
395 |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
396 $ cat << EOF > userpass.py |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
397 > import base64 |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
398 > from mercurial.hgweb import common |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
399 > def perform_authentication(hgweb, req, op): |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
400 > auth = req.headers.get(b'Authorization') |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
401 > if not auth: |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
402 > raise common.ErrorResponse(common.HTTP_UNAUTHORIZED, b'who', |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
403 > [(b'WWW-Authenticate', b'Basic Realm="mercurial"')]) |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
404 > if base64.b64decode(auth.split()[1]).split(b':', 1) != [b'user', |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
405 > b'pass']: |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
406 > raise common.ErrorResponse(common.HTTP_FORBIDDEN, b'no') |
41068
28a4fb793ba1
extensions: deprecate extsetup without a `ui` argument (API)
Matt Harbison <matt_harbison@yahoo.com>
parents:
40881
diff
changeset
|
407 > def extsetup(ui): |
37766
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
408 > common.permhooks.insert(0, perform_authentication) |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
409 > EOF |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
410 |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
411 $ hg --config extensions.x=$TESTTMP/userpass.py \ |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
412 > -R server serve -d -p $HGPORT1 --pid-file=hg.pid \ |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
413 > -A $TESTTMP/access.log -E $TESTTMP/errors.log |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
414 $ mv hg.pid $DAEMON_PIDS |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
415 |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
416 $ hg clone --debug http://localhost:$HGPORT1 auth_clone | egrep '^[{}]| ' |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
417 { |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
418 "objects": [ |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
419 { |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
420 "actions": { |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
421 "download": { |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
422 "expires_at": "$ISO_8601_DATE_TIME$" |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
423 "header": { |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
424 "Accept": "application/vnd.git-lfs" |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
425 "Authorization": "Basic dXNlcjpwYXNz" |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
426 } |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
427 "href": "http://localhost:$HGPORT1/.hg/lfs/objects/276f73cfd75f9fb519810df5f5d96d6594ca2521abd86cbcd92122f7d51a1f3d" |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
428 } |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
429 } |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
430 "oid": "276f73cfd75f9fb519810df5f5d96d6594ca2521abd86cbcd92122f7d51a1f3d" |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
431 "size": 14 |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
432 } |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
433 ] |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
434 "transfer": "basic" |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
435 } |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
436 |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
437 $ echo 'another blob' > auth_clone/lfs.blob |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
438 $ hg -R auth_clone ci -Aqm 'add blob' |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
439 $ hg -R auth_clone --debug push | egrep '^[{}]| ' |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
440 { |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
441 "objects": [ |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
442 { |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
443 "actions": { |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
444 "upload": { |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
445 "expires_at": "$ISO_8601_DATE_TIME$" |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
446 "header": { |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
447 "Accept": "application/vnd.git-lfs" |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
448 "Authorization": "Basic dXNlcjpwYXNz" |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
449 } |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
450 "href": "http://localhost:$HGPORT1/.hg/lfs/objects/df14287d8d75f076a6459e7a3703ca583ca9fb3f4918caed10c77ac8622d49b3" |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
451 } |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
452 } |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
453 "oid": "df14287d8d75f076a6459e7a3703ca583ca9fb3f4918caed10c77ac8622d49b3" |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
454 "size": 13 |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
455 } |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
456 ] |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
457 "transfer": "basic" |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
458 } |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
459 |
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
39457
diff
changeset
|
460 $ "$PYTHON" $RUNTESTDIR/killdaemons.py $DAEMON_PIDS |
37766
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
461 |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
462 $ cat $TESTTMP/access.log $TESTTMP/errors.log |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
463 $LOCALIP - - [$LOGDATE$] "GET /?cmd=capabilities HTTP/1.1" 401 - (glob) |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
464 $LOCALIP - - [$LOGDATE$] "GET /?cmd=capabilities HTTP/1.1" 200 - (glob) |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
465 $LOCALIP - - [$LOGDATE$] "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
466 $LOCALIP - - [$LOGDATE$] "GET /?cmd=getbundle HTTP/1.1" 200 - x-hgarg-1:bookmarks=1&bundlecaps=HG20%2Cbundle2%3DHG20%250Abookmarks%250Achangegroup%253D01%252C02%252C03%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Aphases%253Dheads%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps%250Arev-branch-cache%250Astream%253Dv2&cg=1&common=0000000000000000000000000000000000000000&heads=506bf3d83f78c54b89e81c6411adee19fdf02156+525251863cad618e55d483555f3d00a2ca99597e&listkeys=bookmarks&phases=1 x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
467 $LOCALIP - - [$LOGDATE$] "POST /.git/info/lfs/objects/batch HTTP/1.1" 401 - (glob) |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
468 $LOCALIP - - [$LOGDATE$] "POST /.git/info/lfs/objects/batch HTTP/1.1" 200 - (glob) |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
469 $LOCALIP - - [$LOGDATE$] "GET /.hg/lfs/objects/276f73cfd75f9fb519810df5f5d96d6594ca2521abd86cbcd92122f7d51a1f3d HTTP/1.1" 200 - (glob) |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
470 $LOCALIP - - [$LOGDATE$] "GET /?cmd=capabilities HTTP/1.1" 401 - (glob) |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
471 $LOCALIP - - [$LOGDATE$] "GET /?cmd=capabilities HTTP/1.1" 200 - (glob) |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
472 $LOCALIP - - [$LOGDATE$] "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D525251863cad618e55d483555f3d00a2ca99597e+4d9397055dc0c205f3132f331f36353ab1a525a3 x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
473 $LOCALIP - - [$LOGDATE$] "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=phases x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
474 $LOCALIP - - [$LOGDATE$] "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
475 $LOCALIP - - [$LOGDATE$] "GET /?cmd=branchmap HTTP/1.1" 200 - x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
476 $LOCALIP - - [$LOGDATE$] "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
477 $LOCALIP - - [$LOGDATE$] "POST /.git/info/lfs/objects/batch HTTP/1.1" 401 - (glob) |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
478 $LOCALIP - - [$LOGDATE$] "POST /.git/info/lfs/objects/batch HTTP/1.1" 200 - (glob) |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
479 $LOCALIP - - [$LOGDATE$] "PUT /.hg/lfs/objects/df14287d8d75f076a6459e7a3703ca583ca9fb3f4918caed10c77ac8622d49b3 HTTP/1.1" 201 - (glob) |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
480 $LOCALIP - - [$LOGDATE$] "POST /?cmd=unbundle HTTP/1.1" 200 - x-hgarg-1:heads=666f726365 x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
481 $LOCALIP - - [$LOGDATE$] "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=phases x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |