##// END OF EJS Templates
lfs: improve the hints for common errors in the Batch API...
Matt Harbison -
r40696:9f78d107 default
parent child Browse files
Show More
@@ -271,9 +271,14 b' class _gitlfsremote(object):'
271 271 rsp = self.urlopener.open(batchreq)
272 272 rawjson = rsp.read()
273 273 except util.urlerr.httperror as ex:
274 raise LfsRemoteError(_('LFS HTTP error: %s') % ex,
275 hint=_('api=%s, action=%s')
276 % (url, action))
274 hints = {
275 400: _('check that lfs serving is enabled on %s and "%s" is '
276 'supported') % (self.baseurl, action),
277 404: _('the "lfs.url" config may be used to override %s')
278 % self.baseurl,
279 }
280 hint = hints.get(ex.code, _('api=%s, action=%s') % (url, action))
281 raise LfsRemoteError(_('LFS HTTP error: %s') % ex, hint=hint)
277 282 try:
278 283 response = json.loads(rawjson)
279 284 except ValueError:
@@ -30,7 +30,7 b' Uploads fail...'
30 30 pushing to http://localhost:$HGPORT/
31 31 searching for changes
32 32 abort: LFS HTTP error: HTTP Error 400: no such method: .git!
33 (api=http://localhost:$HGPORT/.git/info/lfs/objects/batch, action=upload)
33 (check that lfs serving is enabled on http://localhost:$HGPORT/.git/info/lfs and "upload" is supported)
34 34 [255]
35 35
36 36 ... so do a local push to make the data available. Remove the blob from the
@@ -52,7 +52,7 b' Downloads fail...'
52 52 new changesets 525251863cad
53 53 updating to branch default
54 54 abort: LFS HTTP error: HTTP Error 400: no such method: .git!
55 (api=http://localhost:$HGPORT/.git/info/lfs/objects/batch, action=download)
55 (check that lfs serving is enabled on http://localhost:$HGPORT/.git/info/lfs and "download" is supported)
56 56 [255]
57 57
58 58 $ "$PYTHON" $RUNTESTDIR/killdaemons.py $DAEMON_PIDS
@@ -68,14 +68,21 b' Downloads fail...'
68 68 $LOCALIP - - [$LOGDATE$] "GET /?cmd=getbundle HTTP/1.1" 200 - x-hgarg-1:bookmarks=1&bundlecaps=HG20%2Cbundle2%3DHG20%250Abookmarks%250Achangegroup%253D01%252C02%252C03%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Aphases%253Dheads%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps%250Arev-branch-cache%250Astream%253Dv2&cg=1&common=0000000000000000000000000000000000000000&heads=525251863cad618e55d483555f3d00a2ca99597e&listkeys=bookmarks&phases=1 x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob)
69 69 $LOCALIP - - [$LOGDATE$] "POST /.git/info/lfs/objects/batch HTTP/1.1" 400 - (glob)
70 70
71 Blob URIs are correct when --prefix is used
72
73 71 $ rm -f $TESTTMP/access.log $TESTTMP/errors.log
74 72 $ hg --config "lfs.usercache=$TESTTMP/servercache" -R server serve -d \
75 73 > -p $HGPORT --pid-file=hg.pid --prefix=subdir/mount/point \
76 74 > -A $TESTTMP/access.log -E $TESTTMP/errors.log
77 75 $ cat hg.pid >> $DAEMON_PIDS
78 76
77 Reasonable hint for a misconfigured blob server
78
79 $ hg -R httpclone update default --config lfs.url=http://localhost:$HGPORT/missing
80 abort: LFS HTTP error: HTTP Error 404: Not Found!
81 (the "lfs.url" config may be used to override http://localhost:$HGPORT/missing)
82 [255]
83
84 Blob URIs are correct when --prefix is used
85
79 86 $ hg clone --debug http://localhost:$HGPORT/subdir/mount/point cloned2
80 87 using http://localhost:$HGPORT/subdir/mount/point
81 88 sending capabilities command
@@ -148,6 +155,7 b' Blob URIs are correct when --prefix is u'
148 155 $ "$PYTHON" $RUNTESTDIR/killdaemons.py $DAEMON_PIDS
149 156
150 157 $ cat $TESTTMP/access.log $TESTTMP/errors.log
158 $LOCALIP - - [$LOGDATE$] "POST /missing/objects/batch HTTP/1.1" 404 - (glob)
151 159 $LOCALIP - - [$LOGDATE$] "GET /subdir/mount/point?cmd=capabilities HTTP/1.1" 200 - (glob)
152 160 $LOCALIP - - [$LOGDATE$] "GET /subdir/mount/point?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob)
153 161 $LOCALIP - - [$LOGDATE$] "GET /subdir/mount/point?cmd=getbundle HTTP/1.1" 200 - x-hgarg-1:bookmarks=1&bundlecaps=HG20%2Cbundle2%3DHG20%250Abookmarks%250Achangegroup%253D01%252C02%252C03%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Aphases%253Dheads%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps%250Arev-branch-cache%250Astream%253Dv2&cg=1&common=0000000000000000000000000000000000000000&heads=525251863cad618e55d483555f3d00a2ca99597e&listkeys=bookmarks&phases=1 x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob)
General Comments 0
You need to be logged in to leave comments. Login now