Mercurial > hg
annotate tests/test-largefiles-wireproto.t @ 31975:76169296e52f
obsolescence: add test for the "branch replacement" logic during push, case A2
Mercurial checks for the introduction of new heads on push. Evolution comes
into play to detect if existing branches on the server are being replaced by
some of the new one we push.
The current code for this logic is very basic (eg: issue4354) and was poorly
tested. We have a better implementation coming in the evolve extension fixing
these issues and with more serious tests coverage. In the process of upstreaming
this improved logic, we start with adding the test case that are already passing
with the current implementation. Once they are all in, we'll upstream the better
implementation and the extra test case.
See inline documentation for details about the test case added in this
changeset.
author | Pierre-Yves David <pierre-yves.david@ens-lyon.org> |
---|---|
date | Thu, 13 Apr 2017 16:23:01 +0200 |
parents | 3ed26ba54685 |
children | 2428e8ec0793 |
rev | line source |
---|---|
23139
e53f6b72a0e4
spelling: fixes from proofreading of spell checker issues
Mads Kiilerich <madski@unity3d.com>
parents:
21424
diff
changeset
|
1 This file contains testcases that tend to be related to the wire protocol part |
e53f6b72a0e4
spelling: fixes from proofreading of spell checker issues
Mads Kiilerich <madski@unity3d.com>
parents:
21424
diff
changeset
|
2 of largefiles. |
21424
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
3 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
4 $ USERCACHE="$TESTTMP/cache"; export USERCACHE |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
5 $ mkdir "${USERCACHE}" |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
6 $ cat >> $HGRCPATH <<EOF |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
7 > [extensions] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
8 > largefiles= |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
9 > purge= |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
10 > rebase= |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
11 > transplant= |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
12 > [phases] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
13 > publish=False |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
14 > [largefiles] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
15 > minsize=2 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
16 > patterns=glob:**.dat |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
17 > usercache=${USERCACHE} |
26417
9a466b9f9792
largefiles: restore archiving largefiles with hgweb (issue4859)
Matt Harbison <matt_harbison@yahoo.com>
parents:
25495
diff
changeset
|
18 > [web] |
9a466b9f9792
largefiles: restore archiving largefiles with hgweb (issue4859)
Matt Harbison <matt_harbison@yahoo.com>
parents:
25495
diff
changeset
|
19 > allow_archive = zip |
21424
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
20 > [hooks] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
21 > precommit=sh -c "echo \\"Invoking status precommit hook\\"; hg status" |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
22 > EOF |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
23 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
24 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
25 #if serve |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
26 vanilla clients not locked out from largefiles servers on vanilla repos |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
27 $ mkdir r1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
28 $ cd r1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
29 $ hg init |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
30 $ echo c1 > f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
31 $ hg add f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
32 $ hg commit -m "m1" |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
33 Invoking status precommit hook |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
34 A f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
35 $ cd .. |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
36 $ hg serve -R r1 -d -p $HGPORT --pid-file hg.pid |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
37 $ cat hg.pid >> $DAEMON_PIDS |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
38 $ hg --config extensions.largefiles=! clone http://localhost:$HGPORT r2 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
39 requesting all changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
40 adding changesets |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
41 adding manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
42 adding file changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
43 added 1 changesets with 1 changes to 1 files |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
44 updating to branch default |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
45 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
46 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
47 largefiles clients still work with vanilla servers |
28549 | 48 $ hg serve --config extensions.largefiles=! -R r1 -d -p $HGPORT1 --pid-file hg.pid |
21424
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
49 $ cat hg.pid >> $DAEMON_PIDS |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
50 $ hg clone http://localhost:$HGPORT1 r3 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
51 requesting all changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
52 adding changesets |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
53 adding manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
54 adding file changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
55 added 1 changesets with 1 changes to 1 files |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
56 updating to branch default |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
57 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
58 #endif |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
59 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
60 vanilla clients locked out from largefiles http repos |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
61 $ mkdir r4 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
62 $ cd r4 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
63 $ hg init |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
64 $ echo c1 > f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
65 $ hg add --large f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
66 $ hg commit -m "m1" |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
67 Invoking status precommit hook |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
68 A f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
69 $ cd .. |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
70 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
71 largefiles can be pushed locally (issue3583) |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
72 $ hg init dest |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
73 $ cd r4 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
74 $ hg outgoing ../dest |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
75 comparing with ../dest |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
76 searching for changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
77 changeset: 0:639881c12b4c |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
78 tag: tip |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
79 user: test |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
80 date: Thu Jan 01 00:00:00 1970 +0000 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
81 summary: m1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
82 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
83 $ hg push ../dest |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
84 pushing to ../dest |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
85 searching for changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
86 adding changesets |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
87 adding manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
88 adding file changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
89 added 1 changesets with 1 changes to 1 files |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
90 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
91 exit code with nothing outgoing (issue3611) |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
92 $ hg outgoing ../dest |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
93 comparing with ../dest |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
94 searching for changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
95 no changes found |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
96 [1] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
97 $ cd .. |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
98 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
99 #if serve |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
100 $ hg serve -R r4 -d -p $HGPORT2 --pid-file hg.pid |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
101 $ cat hg.pid >> $DAEMON_PIDS |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
102 $ hg --config extensions.largefiles=! clone http://localhost:$HGPORT2 r5 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
103 abort: remote error: |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
104 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
105 This repository uses the largefiles extension. |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
106 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
107 Please enable it in your Mercurial config file. |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
108 [255] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
109 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
110 used all HGPORTs, kill all daemons |
25474
8c14f87bd0ae
tests: drop DAEMON_PIDS from killdaemons calls
Matt Mackall <mpm@selenic.com>
parents:
25472
diff
changeset
|
111 $ killdaemons.py |
21424
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
112 #endif |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
113 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
114 vanilla clients locked out from largefiles ssh repos |
25495
c63bf97cf7c7
tests: restore 'python' and '$TESTDIR/' for dummyssh invocation
Matt Harbison <matt_harbison@yahoo.com>
parents:
25476
diff
changeset
|
115 $ hg --config extensions.largefiles=! clone -e "python \"$TESTDIR/dummyssh\"" ssh://user@dummy/r4 r5 |
25243
d65243d28749
sshpeer: break "OutOfBandError" feature for ssh (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25125
diff
changeset
|
116 remote: |
d65243d28749
sshpeer: break "OutOfBandError" feature for ssh (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25125
diff
changeset
|
117 remote: This repository uses the largefiles extension. |
d65243d28749
sshpeer: break "OutOfBandError" feature for ssh (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25125
diff
changeset
|
118 remote: |
d65243d28749
sshpeer: break "OutOfBandError" feature for ssh (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25125
diff
changeset
|
119 remote: Please enable it in your Mercurial config file. |
d65243d28749
sshpeer: break "OutOfBandError" feature for ssh (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25125
diff
changeset
|
120 remote: |
d65243d28749
sshpeer: break "OutOfBandError" feature for ssh (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25125
diff
changeset
|
121 remote: - |
d65243d28749
sshpeer: break "OutOfBandError" feature for ssh (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25125
diff
changeset
|
122 abort: remote error |
d65243d28749
sshpeer: break "OutOfBandError" feature for ssh (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25125
diff
changeset
|
123 (check previous remote output) |
21424
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
124 [255] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
125 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
126 #if serve |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
127 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
128 largefiles clients refuse to push largefiles repos to vanilla servers |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
129 $ mkdir r6 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
130 $ cd r6 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
131 $ hg init |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
132 $ echo c1 > f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
133 $ hg add f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
134 $ hg commit -m "m1" |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
135 Invoking status precommit hook |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
136 A f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
137 $ cat >> .hg/hgrc <<! |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
138 > [web] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
139 > push_ssl = false |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
140 > allow_push = * |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
141 > ! |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
142 $ cd .. |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
143 $ hg clone r6 r7 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
144 updating to branch default |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
145 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
146 $ cd r7 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
147 $ echo c2 > f2 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
148 $ hg add --large f2 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
149 $ hg commit -m "m2" |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
150 Invoking status precommit hook |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
151 A f2 |
29421
ecbbf4d56ee8
largefiles: check file in the repo store before checking remotely (issue5257)
liscju <piotr.listkiewicz@gmail.com>
parents:
29379
diff
changeset
|
152 $ hg verify --large |
ecbbf4d56ee8
largefiles: check file in the repo store before checking remotely (issue5257)
liscju <piotr.listkiewicz@gmail.com>
parents:
29379
diff
changeset
|
153 checking changesets |
ecbbf4d56ee8
largefiles: check file in the repo store before checking remotely (issue5257)
liscju <piotr.listkiewicz@gmail.com>
parents:
29379
diff
changeset
|
154 checking manifests |
ecbbf4d56ee8
largefiles: check file in the repo store before checking remotely (issue5257)
liscju <piotr.listkiewicz@gmail.com>
parents:
29379
diff
changeset
|
155 crosschecking files in changesets and manifests |
ecbbf4d56ee8
largefiles: check file in the repo store before checking remotely (issue5257)
liscju <piotr.listkiewicz@gmail.com>
parents:
29379
diff
changeset
|
156 checking files |
ecbbf4d56ee8
largefiles: check file in the repo store before checking remotely (issue5257)
liscju <piotr.listkiewicz@gmail.com>
parents:
29379
diff
changeset
|
157 2 files, 2 changesets, 2 total revisions |
ecbbf4d56ee8
largefiles: check file in the repo store before checking remotely (issue5257)
liscju <piotr.listkiewicz@gmail.com>
parents:
29379
diff
changeset
|
158 searching 1 changesets for largefiles |
ecbbf4d56ee8
largefiles: check file in the repo store before checking remotely (issue5257)
liscju <piotr.listkiewicz@gmail.com>
parents:
29379
diff
changeset
|
159 verified existence of 1 revisions of 1 largefiles |
28549 | 160 $ hg serve --config extensions.largefiles=! -R ../r6 -d -p $HGPORT --pid-file ../hg.pid |
21424
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
161 $ cat ../hg.pid >> $DAEMON_PIDS |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
162 $ hg push http://localhost:$HGPORT |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
163 pushing to http://localhost:$HGPORT/ |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
164 searching for changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
165 abort: http://localhost:$HGPORT/ does not appear to be a largefile store |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
166 [255] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
167 $ cd .. |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
168 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
169 putlfile errors are shown (issue3123) |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
170 Corrupt the cached largefile in r7 and move it out of the servers usercache |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
171 $ mv r7/.hg/largefiles/4cdac4d8b084d0b599525cf732437fb337d422a8 . |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
172 $ echo 'client side corruption' > r7/.hg/largefiles/4cdac4d8b084d0b599525cf732437fb337d422a8 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
173 $ rm "$USERCACHE/4cdac4d8b084d0b599525cf732437fb337d422a8" |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
174 $ hg init empty |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
175 $ hg serve -R empty -d -p $HGPORT1 --pid-file hg.pid \ |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
176 > --config 'web.allow_push=*' --config web.push_ssl=False |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
177 $ cat hg.pid >> $DAEMON_PIDS |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
178 $ hg push -R r7 http://localhost:$HGPORT1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
179 pushing to http://localhost:$HGPORT1/ |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
180 searching for changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
181 remote: largefiles: failed to put 4cdac4d8b084d0b599525cf732437fb337d422a8 into store: largefile contents do not match hash |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
182 abort: remotestore: could not put $TESTTMP/r7/.hg/largefiles/4cdac4d8b084d0b599525cf732437fb337d422a8 to remote store http://localhost:$HGPORT1/ (glob) |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
183 [255] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
184 $ mv 4cdac4d8b084d0b599525cf732437fb337d422a8 r7/.hg/largefiles/4cdac4d8b084d0b599525cf732437fb337d422a8 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
185 Push of file that exists on server but is corrupted - magic healing would be nice ... but too magic |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
186 $ echo "server side corruption" > empty/.hg/largefiles/4cdac4d8b084d0b599525cf732437fb337d422a8 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
187 $ hg push -R r7 http://localhost:$HGPORT1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
188 pushing to http://localhost:$HGPORT1/ |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
189 searching for changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
190 remote: adding changesets |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
191 remote: adding manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
192 remote: adding file changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
193 remote: added 2 changesets with 2 changes to 2 files |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
194 $ cat empty/.hg/largefiles/4cdac4d8b084d0b599525cf732437fb337d422a8 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
195 server side corruption |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
196 $ rm -rf empty |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
197 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
198 Push a largefiles repository to a served empty repository |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
199 $ hg init r8 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
200 $ echo c3 > r8/f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
201 $ hg add --large r8/f1 -R r8 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
202 $ hg commit -m "m1" -R r8 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
203 Invoking status precommit hook |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
204 A f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
205 $ hg init empty |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
206 $ hg serve -R empty -d -p $HGPORT2 --pid-file hg.pid \ |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
207 > --config 'web.allow_push=*' --config web.push_ssl=False |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
208 $ cat hg.pid >> $DAEMON_PIDS |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
209 $ rm "${USERCACHE}"/* |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
210 $ hg push -R r8 http://localhost:$HGPORT2/#default |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
211 pushing to http://localhost:$HGPORT2/ |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
212 searching for changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
213 remote: adding changesets |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
214 remote: adding manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
215 remote: adding file changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
216 remote: added 1 changesets with 1 changes to 1 files |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
217 $ [ -f "${USERCACHE}"/02a439e5c31c526465ab1a0ca1f431f76b827b90 ] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
218 $ [ -f empty/.hg/largefiles/02a439e5c31c526465ab1a0ca1f431f76b827b90 ] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
219 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
220 Clone over http, no largefiles pulled on clone. |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
221 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
222 $ hg clone http://localhost:$HGPORT2/#default http-clone -U |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
223 adding changesets |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
224 adding manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
225 adding file changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
226 added 1 changesets with 1 changes to 1 files |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
227 |
26417
9a466b9f9792
largefiles: restore archiving largefiles with hgweb (issue4859)
Matt Harbison <matt_harbison@yahoo.com>
parents:
25495
diff
changeset
|
228 Archive contains largefiles |
9a466b9f9792
largefiles: restore archiving largefiles with hgweb (issue4859)
Matt Harbison <matt_harbison@yahoo.com>
parents:
25495
diff
changeset
|
229 >>> import urllib2, os |
9a466b9f9792
largefiles: restore archiving largefiles with hgweb (issue4859)
Matt Harbison <matt_harbison@yahoo.com>
parents:
25495
diff
changeset
|
230 >>> u = 'http://localhost:%s/archive/default.zip' % os.environ['HGPORT2'] |
9a466b9f9792
largefiles: restore archiving largefiles with hgweb (issue4859)
Matt Harbison <matt_harbison@yahoo.com>
parents:
25495
diff
changeset
|
231 >>> with open('archive.zip', 'w') as f: |
9a466b9f9792
largefiles: restore archiving largefiles with hgweb (issue4859)
Matt Harbison <matt_harbison@yahoo.com>
parents:
25495
diff
changeset
|
232 ... f.write(urllib2.urlopen(u).read()) |
9a466b9f9792
largefiles: restore archiving largefiles with hgweb (issue4859)
Matt Harbison <matt_harbison@yahoo.com>
parents:
25495
diff
changeset
|
233 $ unzip -t archive.zip |
9a466b9f9792
largefiles: restore archiving largefiles with hgweb (issue4859)
Matt Harbison <matt_harbison@yahoo.com>
parents:
25495
diff
changeset
|
234 Archive: archive.zip |
29562
cda10ff3175a
tests: glob whitespace between path and OK in unzip(1) output
Augie Fackler <augie@google.com>
parents:
29421
diff
changeset
|
235 testing: empty-default/.hg_archival.txt*OK (glob) |
cda10ff3175a
tests: glob whitespace between path and OK in unzip(1) output
Augie Fackler <augie@google.com>
parents:
29421
diff
changeset
|
236 testing: empty-default/f1*OK (glob) |
26417
9a466b9f9792
largefiles: restore archiving largefiles with hgweb (issue4859)
Matt Harbison <matt_harbison@yahoo.com>
parents:
25495
diff
changeset
|
237 No errors detected in compressed data of archive.zip. |
9a466b9f9792
largefiles: restore archiving largefiles with hgweb (issue4859)
Matt Harbison <matt_harbison@yahoo.com>
parents:
25495
diff
changeset
|
238 |
21424
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
239 test 'verify' with remotestore: |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
240 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
241 $ rm "${USERCACHE}"/02a439e5c31c526465ab1a0ca1f431f76b827b90 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
242 $ mv empty/.hg/largefiles/02a439e5c31c526465ab1a0ca1f431f76b827b90 . |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
243 $ hg -R http-clone verify --large --lfa |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
244 checking changesets |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
245 checking manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
246 crosschecking files in changesets and manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
247 checking files |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
248 1 files, 1 changesets, 1 total revisions |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
249 searching 1 changesets for largefiles |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
250 changeset 0:cf03e5bb9936: f1 missing |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
251 verified existence of 1 revisions of 1 largefiles |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
252 [1] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
253 $ mv 02a439e5c31c526465ab1a0ca1f431f76b827b90 empty/.hg/largefiles/ |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
254 $ hg -R http-clone -q verify --large --lfa |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
255 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
256 largefiles pulled on update - a largefile missing on the server: |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
257 $ mv empty/.hg/largefiles/02a439e5c31c526465ab1a0ca1f431f76b827b90 . |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
258 $ hg -R http-clone up --config largefiles.usercache=http-clone-usercache |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
259 getting changed largefiles |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
260 f1: largefile 02a439e5c31c526465ab1a0ca1f431f76b827b90 not available from http://localhost:$HGPORT2/ |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
261 0 largefiles updated, 0 removed |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
262 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
263 $ hg -R http-clone st |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
264 ! f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
265 $ hg -R http-clone up -Cqr null |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
266 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
267 largefiles pulled on update - a largefile corrupted on the server: |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
268 $ echo corruption > empty/.hg/largefiles/02a439e5c31c526465ab1a0ca1f431f76b827b90 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
269 $ hg -R http-clone up --config largefiles.usercache=http-clone-usercache |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
270 getting changed largefiles |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
271 f1: data corruption (expected 02a439e5c31c526465ab1a0ca1f431f76b827b90, got 6a7bb2556144babe3899b25e5428123735bb1e27) |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
272 0 largefiles updated, 0 removed |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
273 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
274 $ hg -R http-clone st |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
275 ! f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
276 $ [ ! -f http-clone/.hg/largefiles/02a439e5c31c526465ab1a0ca1f431f76b827b90 ] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
277 $ [ ! -f http-clone/f1 ] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
278 $ [ ! -f http-clone-usercache ] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
279 $ hg -R http-clone verify --large --lfc |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
280 checking changesets |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
281 checking manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
282 crosschecking files in changesets and manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
283 checking files |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
284 1 files, 1 changesets, 1 total revisions |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
285 searching 1 changesets for largefiles |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
286 verified contents of 1 revisions of 1 largefiles |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
287 $ hg -R http-clone up -Cqr null |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
288 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
289 largefiles pulled on update - no server side problems: |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
290 $ mv 02a439e5c31c526465ab1a0ca1f431f76b827b90 empty/.hg/largefiles/ |
25125
bd625cd4e5e7
progress: get the extremely verbose output out of default debug
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23139
diff
changeset
|
291 $ hg -R http-clone --debug up --config largefiles.usercache=http-clone-usercache --config progress.debug=true |
21424
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
292 resolving manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
293 branchmerge: False, force: False, partial: False |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
294 ancestor: 000000000000, local: 000000000000+, remote: cf03e5bb9936 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
295 .hglf/f1: remote created -> g |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
296 getting .hglf/f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
297 updating: .hglf/f1 1/1 files (100.00%) |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
298 getting changed largefiles |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
299 using http://localhost:$HGPORT2/ |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
300 sending capabilities command |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
301 sending batch command |
28463
19b4a2087dfc
largefiles: specify unit for ui.progress when operating on files
Anton Shestakov <av6@dwimlabs.net>
parents:
26417
diff
changeset
|
302 getting largefiles: 0/1 files (0.00%) |
21424
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
303 getting f1:02a439e5c31c526465ab1a0ca1f431f76b827b90 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
304 sending getlfile command |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
305 found 02a439e5c31c526465ab1a0ca1f431f76b827b90 in store |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
306 1 largefiles updated, 0 removed |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
307 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
308 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
309 $ ls http-clone-usercache/* |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
310 http-clone-usercache/02a439e5c31c526465ab1a0ca1f431f76b827b90 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
311 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
312 $ rm -rf empty http-clone* |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
313 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
314 used all HGPORTs, kill all daemons |
25474
8c14f87bd0ae
tests: drop DAEMON_PIDS from killdaemons calls
Matt Mackall <mpm@selenic.com>
parents:
25472
diff
changeset
|
315 $ killdaemons.py |
21424
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
316 |
29068
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
317 largefiles should batch verify remote calls |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
318 |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
319 $ hg init batchverifymain |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
320 $ cd batchverifymain |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
321 $ echo "aaa" >> a |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
322 $ hg add --large a |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
323 $ hg commit -m "a" |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
324 Invoking status precommit hook |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
325 A a |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
326 $ echo "bbb" >> b |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
327 $ hg add --large b |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
328 $ hg commit -m "b" |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
329 Invoking status precommit hook |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
330 A b |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
331 $ cd .. |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
332 $ hg serve -R batchverifymain -d -p $HGPORT --pid-file hg.pid \ |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
333 > -A access.log |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
334 $ cat hg.pid >> $DAEMON_PIDS |
29218
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
335 $ hg clone --noupdate http://localhost:$HGPORT batchverifyclone |
29068
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
336 requesting all changes |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
337 adding changesets |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
338 adding manifests |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
339 adding file changes |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
340 added 2 changesets with 2 changes to 2 files |
29218
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
341 $ hg -R batchverifyclone verify --large --lfa |
29068
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
342 checking changesets |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
343 checking manifests |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
344 crosschecking files in changesets and manifests |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
345 checking files |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
346 2 files, 2 changesets, 2 total revisions |
29218
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
347 searching 2 changesets for largefiles |
29068
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
348 verified existence of 2 revisions of 2 largefiles |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
349 $ tail -1 access.log |
31008 | 350 $LOCALIP - - [*] "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=statlfile+sha%3D972a1a11f19934401291cc99117ec614933374ce%3Bstatlfile+sha%3Dc801c9cfe94400963fcb683246217d5db77f9a9a x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
29218
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
351 $ hg -R batchverifyclone update |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
352 getting changed largefiles |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
353 2 largefiles updated, 0 removed |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
354 2 files updated, 0 files merged, 0 files removed, 0 files unresolved |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
355 |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
356 Clear log file before next test |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
357 |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
358 $ printf "" > access.log |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
359 |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
360 Verify should check file on remote server only when file is not |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
361 available locally. |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
362 |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
363 $ echo "ccc" >> batchverifymain/c |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
364 $ hg -R batchverifymain status |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
365 ? c |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
366 $ hg -R batchverifymain add --large batchverifymain/c |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
367 $ hg -R batchverifymain commit -m "c" |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
368 Invoking status precommit hook |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
369 A c |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
370 $ hg -R batchverifyclone pull |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
371 pulling from http://localhost:$HGPORT/ |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
372 searching for changes |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
373 adding changesets |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
374 adding manifests |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
375 adding file changes |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
376 added 1 changesets with 1 changes to 1 files |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
377 (run 'hg update' to get a working copy) |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
378 $ hg -R batchverifyclone verify --lfa |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
379 checking changesets |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
380 checking manifests |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
381 crosschecking files in changesets and manifests |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
382 checking files |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
383 3 files, 3 changesets, 3 total revisions |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
384 searching 3 changesets for largefiles |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
385 verified existence of 3 revisions of 3 largefiles |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
386 $ tail -1 access.log |
31008 | 387 $LOCALIP - - [*] "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=statlfile+sha%3Dc8559c3c9cfb42131794b7d8009230403b9b454c x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
29068
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
388 |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
389 $ killdaemons.py |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
390 |
30332
318a24b52eeb
spelling: fixes of non-dictionary words
Mads Kiilerich <madski@unity3d.com>
parents:
29562
diff
changeset
|
391 largefiles should not ask for password again after successful authorization |
29379
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
392 |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
393 $ hg init credentialmain |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
394 $ cd credentialmain |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
395 $ echo "aaa" >> a |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
396 $ hg add --large a |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
397 $ hg commit -m "a" |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
398 Invoking status precommit hook |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
399 A a |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
400 |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
401 Before running server clear the user cache to force clone to download |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
402 a large file from the server rather than to get it from the cache |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
403 |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
404 $ rm "${USERCACHE}"/* |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
405 |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
406 $ cd .. |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
407 $ cat << EOT > userpass.py |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
408 > import base64 |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
409 > from mercurial.hgweb import common |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
410 > def perform_authentication(hgweb, req, op): |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
411 > auth = req.env.get('HTTP_AUTHORIZATION') |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
412 > if not auth: |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
413 > raise common.ErrorResponse(common.HTTP_UNAUTHORIZED, 'who', |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
414 > [('WWW-Authenticate', 'Basic Realm="mercurial"')]) |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
415 > if base64.b64decode(auth.split()[1]).split(':', 1) != ['user', 'pass']: |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
416 > raise common.ErrorResponse(common.HTTP_FORBIDDEN, 'no') |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
417 > def extsetup(): |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
418 > common.permhooks.insert(0, perform_authentication) |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
419 > EOT |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
420 $ hg serve --config extensions.x=userpass.py -R credentialmain \ |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
421 > -d -p $HGPORT --pid-file hg.pid -A access.log |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
422 $ cat hg.pid >> $DAEMON_PIDS |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
423 $ cat << EOF > get_pass.py |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
424 > import getpass |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
425 > def newgetpass(arg): |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
426 > return "pass" |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
427 > getpass.getpass = newgetpass |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
428 > EOF |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
429 $ hg clone --config ui.interactive=true --config extensions.getpass=get_pass.py \ |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
430 > http://user@localhost:$HGPORT credentialclone |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
431 requesting all changes |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
432 http authorization required for http://localhost:$HGPORT/ |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
433 realm: mercurial |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
434 user: user |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
435 password: adding changesets |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
436 adding manifests |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
437 adding file changes |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
438 added 1 changesets with 1 changes to 1 files |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
439 updating to branch default |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
440 getting changed largefiles |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
441 1 largefiles updated, 0 removed |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
442 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
443 |
31770
3ed26ba54685
test-serve: kill daemons before deleting the access and error logs
Matt Harbison <matt_harbison@yahoo.com>
parents:
31008
diff
changeset
|
444 $ killdaemons.py |
29379
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
445 $ rm hg.pid access.log |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
446 |
21424
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
447 #endif |