Mercurial > public > mercurial-scm > hg
annotate tests/test-lfs-serve-access.t @ 40788:41f0529b5112 stable
commandserver: get around ETIMEDOUT raised by selectors2
selector.select() should exits with an empty event list on timed out, but
selectors2 raises OSError if timeout expires while recovering from EINTR.
Spotted while debugging new chg feature.
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Mon, 03 Dec 2018 21:45:15 +0900 |
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) |