Mercurial > hg
annotate tests/test-lfs-serve-access.t @ 40606:bfbfd15d65bd
sparse-revlog: fast-path before computing payload size
In this fast-path case, we do not need to compute the full delta chain
payload. Since it comes with a significant cost, we avoid doing so if
possible.
author | Boris Feld <boris.feld@octobus.net> |
---|---|
date | Thu, 08 Nov 2018 15:29:58 +0100 |
parents | 6637b079ae45 |
children | 8863f08c1630 |
rev | line source |
---|---|
38021
538e850ae737
tests: mark tests that fail when using chg as #require no-chg
Kyle Lippincott <spectral@google.com>
parents:
37766
diff
changeset
|
1 #require serve no-reposimplestore no-chg |
37248
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
2 |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
3 $ cat >> $HGRCPATH <<EOF |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
4 > [extensions] |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
5 > lfs= |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
6 > [lfs] |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
7 > track=all() |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
8 > [web] |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
9 > push_ssl = False |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
10 > allow-push = * |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
11 > EOF |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
12 |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
13 Serving LFS files can experimentally be turned off. The long term solution is |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
14 to support the 'verify' action in both client and server, so that the server can |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
15 tell the client to store files elsewhere. |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
16 |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
17 $ hg init server |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
18 $ hg --config "lfs.usercache=$TESTTMP/servercache" \ |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
19 > --config experimental.lfs.serve=False -R server serve -d \ |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
20 > -p $HGPORT --pid-file=hg.pid -A $TESTTMP/access.log -E $TESTTMP/errors.log |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
21 $ cat hg.pid >> $DAEMON_PIDS |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
22 |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
23 Uploads fail... |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
24 |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
25 $ hg init client |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
26 $ echo 'this-is-an-lfs-file' > client/lfs.bin |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
27 $ hg -R client ci -Am 'initial commit' |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
28 adding lfs.bin |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
29 $ hg -R client push http://localhost:$HGPORT |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
30 pushing to http://localhost:$HGPORT/ |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
31 searching for changes |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
32 abort: LFS HTTP error: HTTP Error 400: no such method: .git (action=upload)! |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
33 [255] |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
34 |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
35 ... 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
|
36 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
|
37 $ 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
|
38 > --config "lfs.url=null://" \ |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
39 > -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
|
40 $ mv `hg config lfs.usercache` $TESTTMP/servercache |
37248
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
41 |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
42 Downloads fail... |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
43 |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
44 $ hg clone http://localhost:$HGPORT httpclone |
40324
6637b079ae45
lfs: autoload the extension when cloning from repo with lfs enabled
Matt Harbison <matt_harbison@yahoo.com>
parents:
40034
diff
changeset
|
45 (remote is using large file support (lfs); lfs will be enabled for this repository) |
37248
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
46 requesting all changes |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
47 adding changesets |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
48 adding manifests |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
49 adding file changes |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
50 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
|
51 new changesets 525251863cad |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
52 updating to branch default |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
53 abort: LFS HTTP error: HTTP Error 400: no such method: .git (action=download)! |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
54 [255] |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
55 |
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
39457
diff
changeset
|
56 $ "$PYTHON" $RUNTESTDIR/killdaemons.py $DAEMON_PIDS |
37248
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
57 |
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
58 $ 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
|
59 $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
|
60 $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
|
61 $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
|
62 $LOCALIP - - [$LOGDATE$] "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
37248
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
63 $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
|
64 $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
|
65 $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
|
66 $LOCALIP - - [$LOGDATE$] "GET /?cmd=getbundle HTTP/1.1" 200 - x-hgarg-1:bookmarks=1&bundlecaps=HG20%2Cbundle2%3DHG20%250Abookmarks%250Achangegroup%253D01%252C02%252C03%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Aphases%253Dheads%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps%250Arev-branch-cache%250Astream%253Dv2&cg=1&common=0000000000000000000000000000000000000000&heads=525251863cad618e55d483555f3d00a2ca99597e&listkeys=bookmarks&phases=1 x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob) |
37248
dfb38c4850a9
lfs: add an experimental knob to disable blob serving
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
67 $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
|
68 |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
69 Blob URIs are correct when --prefix is used |
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 |
37691
d241e6632669
lfs: fix the inferred remote store path when using a --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37690
diff
changeset
|
77 $ 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
|
78 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
|
79 sending capabilities command |
40324
6637b079ae45
lfs: autoload the extension when cloning from repo with lfs enabled
Matt Harbison <matt_harbison@yahoo.com>
parents:
40034
diff
changeset
|
80 (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
|
81 query 1; heads |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
82 sending batch command |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
83 requesting all changes |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
84 sending getbundle command |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
85 bundle2-input-bundle: with-transaction |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
86 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
|
87 adding changesets |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
88 add changeset 525251863cad |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
89 adding manifests |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
90 adding file changes |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
91 adding lfs.bin revisions |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
92 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
|
93 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
|
94 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
|
95 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
|
96 bundle2-input-part: total payload size 24 |
37842
326b174c6a47
bundle2: mark the bundle2 part as advisory (issue5872)
Boris Feld <boris.feld@octobus.net>
parents:
37766
diff
changeset
|
97 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
|
98 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
|
99 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
|
100 checking for updated bookmarks |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
101 updating the branch cache |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
102 new changesets 525251863cad |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
103 updating to branch default |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
104 resolving manifests |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
105 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
|
106 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
|
107 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
|
108 Status: 200 |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
109 Content-Length: 371 |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
110 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
|
111 Date: $HTTP_DATE$ |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
112 Server: testing stub value |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
113 { |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
114 "objects": [ |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
115 { |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
116 "actions": { |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
117 "download": { |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
118 "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
|
119 "header": { |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
120 "Accept": "application/vnd.git-lfs" |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
121 } |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
122 "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
|
123 } |
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 "oid": "f03217a32529a28a42d03b1244fe09b6e0f9fd06d7b966d4d50567be2abe6c0e" |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
126 "size": 20 |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
127 } |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
128 ] |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
129 "transfer": "basic" |
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 lfs: downloading f03217a32529a28a42d03b1244fe09b6e0f9fd06d7b966d4d50567be2abe6c0e (20 bytes) |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
132 Status: 200 |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
133 Content-Length: 20 |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
134 Content-Type: application/octet-stream |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
135 Date: $HTTP_DATE$ |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
136 Server: testing stub value |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
137 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
|
138 lfs: processed: f03217a32529a28a42d03b1244fe09b6e0f9fd06d7b966d4d50567be2abe6c0e |
37765
ab04972a33ef
lfs: enable the final download count status message
Matt Harbison <matt_harbison@yahoo.com>
parents:
37692
diff
changeset
|
139 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
|
140 lfs.bin: remote created -> g |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
141 getting lfs.bin |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
142 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
|
143 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
40034
393e44324037
httppeer: report http statistics
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39707
diff
changeset
|
144 (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
|
145 |
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
39457
diff
changeset
|
146 $ "$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
|
147 |
b03f2e0fdb88
lfs: teach the blob server to handle --prefix
Matt Harbison <matt_harbison@yahoo.com>
parents:
37556
diff
changeset
|
148 $ cat $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
|
149 $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
|
150 $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
|
151 $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
|
152 $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
|
153 $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
|
154 |
39457
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
155 Blobs that already exist in the usercache are linked into the repo store, even |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
156 though the client doesn't send the blob. |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
157 |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
158 $ hg init server2 |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
159 $ hg --config "lfs.usercache=$TESTTMP/servercache" -R server2 serve -d \ |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
160 > -p $HGPORT --pid-file=hg.pid \ |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
161 > -A $TESTTMP/access.log -E $TESTTMP/errors.log |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
162 $ cat hg.pid >> $DAEMON_PIDS |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
163 |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
164 $ hg --config "lfs.usercache=$TESTTMP/servercache" -R cloned2 --debug \ |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
165 > push http://localhost:$HGPORT | grep '^[{} ]' |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
166 { |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
167 "objects": [ |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
168 { |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
169 "oid": "f03217a32529a28a42d03b1244fe09b6e0f9fd06d7b966d4d50567be2abe6c0e" |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
170 "size": 20 |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
171 } |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
172 ] |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
173 "transfer": "basic" |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
174 } |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
175 $ find server2/.hg/store/lfs/objects | sort |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
176 server2/.hg/store/lfs/objects |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
177 server2/.hg/store/lfs/objects/f0 |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
178 server2/.hg/store/lfs/objects/f0/3217a32529a28a42d03b1244fe09b6e0f9fd06d7b966d4d50567be2abe6c0e |
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
39457
diff
changeset
|
179 $ "$PYTHON" $RUNTESTDIR/killdaemons.py $DAEMON_PIDS |
39457
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
180 $ cat $TESTTMP/errors.log |
a913d2892e17
lfs: ensure the blob is linked to the remote store on skipped uploads
Matt Harbison <matt_harbison@yahoo.com>
parents:
38239
diff
changeset
|
181 |
37689
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
182 $ 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
|
183 > import errno |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
184 > 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
|
185 > |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
186 > _numverifies = 0 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
187 > _readerr = True |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
188 > |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
189 > 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
|
190 > # 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
|
191 > 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
|
192 > return |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
193 > |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
194 > 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
|
195 > 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
|
196 > 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
|
197 > '''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
|
198 > PUT request.''' |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
199 > origread = src.read |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
200 > def _badread(nbytes): |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
201 > # 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
|
202 > 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
|
203 > src.read = _badread |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
204 > 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
|
205 > |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
206 > 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
|
207 > '''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
|
208 > 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
|
209 > global _readerr |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
210 > # 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
|
211 > if _readerr: |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
212 > _readerr = False |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
213 > 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
|
214 > # 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
|
215 > 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
|
216 > |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
217 > 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
|
218 > '''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
|
219 > 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
|
220 > # 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
|
221 > # 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
|
222 > # 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
|
223 > global _numverifies |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
224 > _numverifies += 1 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
225 > if _numverifies <= 2: |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
226 > 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
|
227 > 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
|
228 > |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
229 > store.__class__ = badstore |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
230 > EOF |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
231 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
232 $ 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
|
233 $ 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
|
234 $ 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
|
235 > --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
|
236 > -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
|
237 > -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
|
238 $ 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
|
239 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
240 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
|
241 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
242 $ hg clone http://localhost:$HGPORT1 httpclone2 |
40324
6637b079ae45
lfs: autoload the extension when cloning from repo with lfs enabled
Matt Harbison <matt_harbison@yahoo.com>
parents:
40034
diff
changeset
|
243 (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
|
244 requesting all changes |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
245 adding changesets |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
246 adding manifests |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
247 adding file changes |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
248 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
|
249 new changesets 525251863cad |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
250 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
|
251 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
|
252 [255] |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
253 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
254 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
|
255 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
256 $ 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
|
257 $ 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
|
258 $ 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
|
259 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
|
260 searching for changes |
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 "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
|
262 [255] |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
263 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
|
264 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
265 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
|
266 |
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 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
|
268 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
|
269 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
|
270 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
|
271 [255] |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
272 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
273 $ 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
|
274 $ 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
|
275 > -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
|
276 $ 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
|
277 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
278 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
|
279 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
280 $ 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
|
281 > -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
|
282 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
|
283 [255] |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
284 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
285 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
|
286 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
287 $ 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
|
288 > -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
|
289 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
|
290 [255] |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
291 |
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
39457
diff
changeset
|
292 $ "$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
|
293 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
294 $ 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
|
295 $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
|
296 $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
|
297 $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
|
298 $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
|
299 $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
|
300 $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
|
301 $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
|
302 $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
|
303 $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
|
304 $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
|
305 $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
|
306 $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
|
307 $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
|
308 $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
|
309 $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
|
310 $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
|
311 $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
|
312 $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
|
313 $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
|
314 $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
|
315 $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
|
316 $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
|
317 $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
|
318 $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
|
319 $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
|
320 $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
|
321 |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
322 $ 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
|
323 $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
|
324 $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
|
325 $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
|
326 $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
|
327 $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
|
328 $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
|
329 $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
|
330 $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
|
331 $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
|
332 $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
|
333 $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
|
334 $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
|
335 $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
|
336 $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
|
337 $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
|
338 $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
|
339 $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
|
340 $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
|
341 $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
|
342 $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
|
343 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
|
344 self.do_write() |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
345 self.do_hgweb() |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
346 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
|
347 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
|
348 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
|
349 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
|
350 lambda perm: |
a7dbda94c86a
test-lfs: add tests to force server error path coverage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37617
diff
changeset
|
351 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
|
352 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
|
353 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
|
354 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
|
355 |
37692
10e5bb9678f4
lfs: gracefully handle aborts on the server when corrupt blobs are detected
Matt Harbison <matt_harbison@yahoo.com>
parents:
37691
diff
changeset
|
356 $LOCALIP - - [$ERRDATE$] HG error: 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
|
357 $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
|
358 $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
|
359 $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
|
360 $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
|
361 $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
|
362 $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
|
363 $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
|
364 |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
365 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
|
366 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
|
367 |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
368 $ 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
|
369 |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
370 $ 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
|
371 > [experimental] |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
372 > 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
|
373 > [auth] |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
374 > 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
|
375 > 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
|
376 > 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
|
377 > 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
|
378 > EOF |
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 << 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
|
381 > 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
|
382 > 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
|
383 > 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
|
384 > 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
|
385 > 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
|
386 > 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
|
387 > [(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
|
388 > 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
|
389 > 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
|
390 > 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
|
391 > 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
|
392 > 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
|
393 > EOF |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
394 |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
395 $ 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
|
396 > -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
|
397 > -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
|
398 $ 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
|
399 |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
400 $ 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
|
401 { |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
402 "objects": [ |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
403 { |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
404 "actions": { |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
405 "download": { |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
406 "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
|
407 "header": { |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
408 "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
|
409 "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
|
410 } |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
411 "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
|
412 } |
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 "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
|
415 "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
|
416 } |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
417 ] |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
418 "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
|
419 } |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
420 |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
421 $ 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
|
422 $ 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
|
423 $ 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
|
424 { |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
425 "objects": [ |
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 "actions": { |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
428 "upload": { |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
429 "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
|
430 "header": { |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
431 "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
|
432 "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
|
433 } |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
434 "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
|
435 } |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
436 } |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
437 "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
|
438 "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
|
439 } |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
440 ] |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
441 "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
|
442 } |
925707ac2855
lfs: add the 'Authorization' property to the Batch API response, if present
Matt Harbison <matt_harbison@yahoo.com>
parents:
37765
diff
changeset
|
443 |
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
39457
diff
changeset
|
444 $ "$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
|
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 $ 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
|
447 $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
|
448 $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
|
449 $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
|
450 $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
|
451 $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
|
452 $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
|
453 $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
|
454 $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
|
455 $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
|
456 $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
|
457 $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
|
458 $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
|
459 $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
|
460 $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
|
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$] "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
|
464 $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
|
465 $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) |