Mercurial > hg-stable
annotate tests/test-lfs-serve-access.t @ 40701:9f78d10742af
lfs: improve the hints for common errors in the Batch API
The previous message was too debug-ish and less action oriented than a hint
should be. The remaining errors that aren't handled are more along the lines of
programming errors (not using POST, bad accept type, etc), so I'm not bothering
with that.
The friendly errors purposely use `self.baseurl` instead of the full Batch API
endpoint because I'd expect some copy/paste/modify on the part of the user here,
and it would be more confusing if '/objects/batch' magically appeared, but
shouldn't be used in the config setting. It still seems like the right thing
for debugging in the catchall case.
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Thu, 15 Nov 2018 17:58:59 -0500 |
parents | 8863f08c1630 |
children | 380f5131ee7b |
rev | line source |
---|---|
38063
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 |
37250
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 |
40700
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! |
40701
9f78d10742af
lfs: improve the hints for common errors in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
40700
diff
changeset
|
33 (check that lfs serving is enabled on http://localhost:$HGPORT/.git/info/lfs and "upload" is supported) |
37250
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 |
37250
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:
40035
diff
changeset
|
46 (remote is using large file support (lfs); lfs will be enabled for this repository) |
37250
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 |
40700
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! |
40701
9f78d10742af
lfs: improve the hints for common errors in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
40700
diff
changeset
|
55 (check that lfs serving is enabled on http://localhost:$HGPORT/.git/info/lfs and "download" is supported) |
37250
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 |
39723
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
39474
diff
changeset
|
58 $ "$PYTHON" $RUNTESTDIR/killdaemons.py $DAEMON_PIDS |
37250
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) |
37250
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) |
37250
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 |
40701
9f78d10742af
lfs: improve the hints for common errors in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
40700
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:
40700
diff
changeset
|
78 |
9f78d10742af
lfs: improve the hints for common errors in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
40700
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:
40700
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:
40700
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:
40700
diff
changeset
|
82 [255] |
9f78d10742af
lfs: improve the hints for common errors in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
40700
diff
changeset
|
83 |
9f78d10742af
lfs: improve the hints for common errors in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
40700
diff
changeset
|
84 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:
40700
diff
changeset
|
85 |
37691
d241e6632669
lfs: fix the inferred remote store path when using a --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37690
diff
changeset
|
86 $ 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
|
87 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
|
88 sending capabilities command |
40324
6637b079ae45
lfs: autoload the extension when cloning from repo with lfs enabled
Matt Harbison <matt_harbison@yahoo.com>
parents:
40035
diff
changeset
|
89 (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
|
90 query 1; heads |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
91 sending batch command |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
92 requesting all changes |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
93 sending getbundle command |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
94 bundle2-input-bundle: with-transaction |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
95 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
|
96 adding changesets |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
97 add changeset 525251863cad |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
98 adding manifests |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
99 adding file changes |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
100 adding lfs.bin revisions |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
101 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
|
102 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
|
103 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
|
104 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
|
105 bundle2-input-part: total payload size 24 |
37837
326b174c6a47
bundle2: mark the bundle2 part as advisory (issue5872)
Boris Feld <boris.feld@octobus.net>
parents:
37766
diff
changeset
|
106 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
|
107 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
|
108 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
|
109 checking for updated bookmarks |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
110 updating the branch cache |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
111 new changesets 525251863cad |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
112 updating to branch default |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
113 resolving manifests |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
114 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
|
115 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
|
116 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
|
117 Status: 200 |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
118 Content-Length: 371 |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
119 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
|
120 Date: $HTTP_DATE$ |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
121 Server: testing stub value |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
122 { |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
123 "objects": [ |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
124 { |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
125 "actions": { |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
126 "download": { |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
127 "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
|
128 "header": { |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
129 "Accept": "application/vnd.git-lfs" |
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 "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
|
132 } |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
133 } |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
134 "oid": "f03217a32529a28a42d03b1244fe09b6e0f9fd06d7b966d4d50567be2abe6c0e" |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
135 "size": 20 |
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 ] |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
138 "transfer": "basic" |
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 lfs: downloading f03217a32529a28a42d03b1244fe09b6e0f9fd06d7b966d4d50567be2abe6c0e (20 bytes) |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
141 Status: 200 |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
142 Content-Length: 20 |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
143 Content-Type: application/octet-stream |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
144 Date: $HTTP_DATE$ |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
145 Server: testing stub value |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
146 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
|
147 lfs: processed: f03217a32529a28a42d03b1244fe09b6e0f9fd06d7b966d4d50567be2abe6c0e |
37765
ab04972a33ef
lfs: enable the final download count status message
Matt Harbison <matt_harbison@yahoo.com>
parents:
37692
diff
changeset
|
148 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
|
149 lfs.bin: remote created -> g |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
150 getting lfs.bin |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
151 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
|
152 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
40035
393e44324037
httppeer: report http statistics
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39723
diff
changeset
|
153 (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
|
154 |
39723
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
39474
diff
changeset
|
155 $ "$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
|
156 |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
157 $ cat $TESTTMP/access.log $TESTTMP/errors.log |
40701
9f78d10742af
lfs: improve the hints for common errors in the Batch API
Matt Harbison <matt_harbison@yahoo.com>
parents:
40700
diff
changeset
|
158 $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
|
159 $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
|
160 $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
|
161 $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
|
162 $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
|
163 $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
|
164 |
39474
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38251
diff
changeset
|
165 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:
38251
diff
changeset
|
166 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:
38251
diff
changeset
|
167 |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38251
diff
changeset
|
168 $ hg init server2 |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38251
diff
changeset
|
169 $ 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:
38251
diff
changeset
|
170 > -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:
38251
diff
changeset
|
171 > -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:
38251
diff
changeset
|
172 $ 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:
38251
diff
changeset
|
173 |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38251
diff
changeset
|
174 $ 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:
38251
diff
changeset
|
175 > 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:
38251
diff
changeset
|
176 { |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38251
diff
changeset
|
177 "objects": [ |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38251
diff
changeset
|
178 { |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38251
diff
changeset
|
179 "oid": "f03217a32529a28a42d03b1244fe09b6e0f9fd06d7b966d4d50567be2abe6c0e" |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38251
diff
changeset
|
180 "size": 20 |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38251
diff
changeset
|
181 } |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38251
diff
changeset
|
182 ] |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38251
diff
changeset
|
183 "transfer": "basic" |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38251
diff
changeset
|
184 } |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38251
diff
changeset
|
185 $ 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:
38251
diff
changeset
|
186 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:
38251
diff
changeset
|
187 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:
38251
diff
changeset
|
188 server2/.hg/store/lfs/objects/f0/3217a32529a28a42d03b1244fe09b6e0f9fd06d7b966d4d50567be2abe6c0e |
39723
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
39474
diff
changeset
|
189 $ "$PYTHON" $RUNTESTDIR/killdaemons.py $DAEMON_PIDS |
39474
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38251
diff
changeset
|
190 $ 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:
38251
diff
changeset
|
191 |
37689
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
192 $ 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
|
193 > import errno |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
194 > 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
|
195 > |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
196 > _numverifies = 0 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
197 > _readerr = True |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
198 > |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
199 > 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
|
200 > # 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
|
201 > 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
|
202 > return |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
203 > |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
204 > 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
|
205 > 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
|
206 > 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
|
207 > '''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
|
208 > PUT request.''' |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
209 > origread = src.read |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
210 > def _badread(nbytes): |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
211 > # 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
|
212 > 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
|
213 > src.read = _badread |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
214 > 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
|
215 > |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
216 > 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
|
217 > '''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
|
218 > 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
|
219 > global _readerr |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
220 > # 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
|
221 > if _readerr: |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
222 > _readerr = False |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
223 > 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
|
224 > # 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
|
225 > 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
|
226 > |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
227 > 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
|
228 > '''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
|
229 > 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
|
230 > # 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
|
231 > # 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
|
232 > # 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
|
233 > global _numverifies |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
234 > _numverifies += 1 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
235 > if _numverifies <= 2: |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
236 > 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
|
237 > 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
|
238 > |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
239 > store.__class__ = badstore |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
240 > EOF |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
241 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
242 $ 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
|
243 $ 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
|
244 $ 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
|
245 > --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
|
246 > -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
|
247 > -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
|
248 $ 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
|
249 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
250 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
|
251 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
252 $ 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:
40035
diff
changeset
|
253 (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
|
254 requesting all changes |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
255 adding changesets |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
256 adding manifests |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
257 adding file changes |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
258 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
|
259 new changesets 525251863cad |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
260 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
|
261 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
|
262 [255] |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
263 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
264 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
|
265 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
266 $ 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
|
267 $ 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
|
268 $ 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
|
269 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
|
270 searching for changes |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
271 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
|
272 [255] |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
273 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
|
274 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
275 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
|
276 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
277 $ 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
|
278 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
|
279 searching for changes |
37692
10e5bb9678f4
lfs: gracefully handle aborts on the server when corrupt blobs are detected
Matt Harbison <matt_harbison@yahoo.com>
parents:
37691
diff
changeset
|
280 abort: 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
|
281 [255] |
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 $ 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
|
284 $ 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
|
285 > -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
|
286 $ 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
|
287 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
288 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
|
289 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
290 $ 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
|
291 > -R client update -r tip |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
292 abort: HTTP error: HTTP Error 500: Internal Server Error (oid=276f73cfd75f9fb519810df5f5d96d6594ca2521abd86cbcd92122f7d51a1f3d, action=download)! |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
293 [255] |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
294 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
295 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
|
296 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
297 $ 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
|
298 > -R client update -r tip |
37692
10e5bb9678f4
lfs: gracefully handle aborts on the server when corrupt blobs are detected
Matt Harbison <matt_harbison@yahoo.com>
parents:
37691
diff
changeset
|
299 abort: 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
|
300 [255] |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
301 |
39723
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
39474
diff
changeset
|
302 $ "$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
|
303 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
304 $ 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
|
305 $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
|
306 $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
|
307 $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
|
308 $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
|
309 $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
|
310 $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
|
311 $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
|
312 $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
|
313 $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
|
314 $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
|
315 $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
|
316 $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
|
317 $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
|
318 $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
|
319 $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
|
320 $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
|
321 $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
|
322 $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
|
323 $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
|
324 $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
|
325 $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
|
326 $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
|
327 $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
|
328 $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
|
329 $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
|
330 $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
|
331 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
332 $ 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
|
333 $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
|
334 $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
|
335 $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
|
336 $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
|
337 $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
|
338 $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
|
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] 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
|
344 $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
|
345 $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
|
346 $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
|
347 $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
|
348 $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
|
349 $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
|
350 $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
|
351 $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
|
352 $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
|
353 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
|
354 self.do_write() |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
355 self.do_hgweb() |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
356 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
|
357 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
|
358 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
|
359 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
|
360 lambda perm: |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
361 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
|
362 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
|
363 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
|
364 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
|
365 |
37692
10e5bb9678f4
lfs: gracefully handle aborts on the server when corrupt blobs are detected
Matt Harbison <matt_harbison@yahoo.com>
parents:
37691
diff
changeset
|
366 $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
|
367 $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
|
368 $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
|
369 $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
|
370 $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
|
371 $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
|
372 $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
|
373 $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
|
374 |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
375 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
|
376 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
|
377 |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
378 $ 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
|
379 |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
380 $ 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
|
381 > [experimental] |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
382 > 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
|
383 > [auth] |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
384 > 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
|
385 > 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
|
386 > 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
|
387 > 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
|
388 > EOF |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
389 |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
390 $ 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
|
391 > 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
|
392 > 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
|
393 > 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
|
394 > 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
|
395 > 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
|
396 > 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
|
397 > [(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
|
398 > 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
|
399 > 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
|
400 > raise common.ErrorResponse(common.HTTP_FORBIDDEN, b'no') |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
401 > def extsetup(): |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
402 > 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
|
403 > EOF |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
404 |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
405 $ 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
|
406 > -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
|
407 > -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
|
408 $ 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
|
409 |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
410 $ 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
|
411 { |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
412 "objects": [ |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
413 { |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
414 "actions": { |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
415 "download": { |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
416 "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
|
417 "header": { |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
418 "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
|
419 "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
|
420 } |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
421 "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
|
422 } |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
423 } |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
424 "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
|
425 "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
|
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 ] |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
428 "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
|
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 |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
431 $ 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
|
432 $ 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
|
433 $ 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
|
434 { |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
435 "objects": [ |
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 "actions": { |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
438 "upload": { |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
439 "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
|
440 "header": { |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
441 "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
|
442 "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
|
443 } |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
444 "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
|
445 } |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
446 } |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
447 "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
|
448 "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
|
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 ] |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
451 "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
|
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 |
39723
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
39474
diff
changeset
|
454 $ "$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
|
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 $ 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
|
457 $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
|
458 $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
|
459 $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
|
460 $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
|
461 $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
|
462 $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
|
463 $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
|
464 $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
|
465 $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
|
466 $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
|
467 $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
|
468 $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
|
469 $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
|
470 $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
|
471 $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
|
472 $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
|
473 $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
|
474 $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
|
475 $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) |