tests/test-ssh.t
author Simon Sapin <simon.sapin@octobus.net>
Tue, 06 Apr 2021 21:07:12 +0200
changeset 47100 caa3031c9ed5
parent 46977 3f87d2af0bd6
child 47183 8be95673eb8a
permissions -rw-r--r--
dirstate-tree: Add tree traversal/iteration Like Python’s, Rust’s iterators are "external" in that they are driven by a caller who calls a `next` method. This is as opposed to "internal" iterators who drive themselves and call a callback for each item. Writing an internal iterator traversing a tree is easy with recursion, but internal iterators cannot rely on the call stack in that way, they must save in an explicit object all state that they need to be preserved across two `next` calls. This algorithm uses a `Vec` as a stack that contains what would be local variables on the call stack if we could use recursion. Differential Revision: https://phab.mercurial-scm.org/D10370
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
36217
1ee1a42bfdae tests: test using both versions of SSH protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35792
diff changeset
     1
#testcases sshv1 sshv2
1ee1a42bfdae tests: test using both versions of SSH protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35792
diff changeset
     2
1ee1a42bfdae tests: test using both versions of SSH protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35792
diff changeset
     3
#if sshv2
1ee1a42bfdae tests: test using both versions of SSH protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35792
diff changeset
     4
  $ cat >> $HGRCPATH << EOF
1ee1a42bfdae tests: test using both versions of SSH protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35792
diff changeset
     5
  > [experimental]
1ee1a42bfdae tests: test using both versions of SSH protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35792
diff changeset
     6
  > sshpeer.advertise-v2 = true
1ee1a42bfdae tests: test using both versions of SSH protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35792
diff changeset
     7
  > sshserver.support-v2 = true
1ee1a42bfdae tests: test using both versions of SSH protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35792
diff changeset
     8
  > EOF
1ee1a42bfdae tests: test using both versions of SSH protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35792
diff changeset
     9
#endif
4291
35b2e02367a5 test-ssh: use printenv.py
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3853
diff changeset
    10
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    11
This test tries to exercise the ssh functionality with a dummy script
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
    12
14185
eb297845f90b tests: fix test-ssh.t after 6bd9778ae749
Mads Kiilerich <mads@kiilerich.com>
parents: 14164
diff changeset
    13
creating 'remote' repo
4298
58517f6eb1ad test-ssh: avoid a shell script
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4291
diff changeset
    14
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    15
  $ hg init remote
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    16
  $ cd remote
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    17
  $ echo this > foo
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    18
  $ echo this > fooO
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    19
  $ hg ci -A -m "init" foo fooO
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    20
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    21
insert a closed branch (issue4428)
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    22
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    23
  $ hg up null
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    24
  0 files updated, 0 files merged, 2 files removed, 0 files unresolved
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    25
  $ hg branch closed
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    26
  marked working directory as branch closed
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    27
  (branches are permanent and global, did you want a bookmark?)
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    28
  $ hg ci -mc0
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    29
  $ hg ci --close-branch -mc1
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    30
  $ hg up -q default
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    31
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    32
configure for serving
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    33
14185
eb297845f90b tests: fix test-ssh.t after 6bd9778ae749
Mads Kiilerich <mads@kiilerich.com>
parents: 14164
diff changeset
    34
  $ cat <<EOF > .hg/hgrc
12969
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
    35
  > [server]
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
    36
  > uncompressed = True
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
    37
  > 
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
    38
  > [hooks]
41644
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
    39
  > changegroup = sh -c "printenv.py --line changegroup-in-remote 0 ../dummylog"
12969
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
    40
  > EOF
40269
52b773f5e9a4 tests: replace `cd ..` with an absolute path in a couple ssh tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 40176
diff changeset
    41
  $ cd $TESTTMP
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
    42
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    43
repo not found error
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    44
33335
72f051f9a7d8 tests: quote $PYTHON for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 33286
diff changeset
    45
  $ hg clone -e "\"$PYTHON\" \"$TESTDIR/dummyssh\"" ssh://user@dummy/nonexistent local
45906
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45847
diff changeset
    46
  remote: abort: repository nonexistent not found
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45847
diff changeset
    47
  abort: no suitable response from remote hg
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    48
  [255]
44859
15e26cc0e2c6 sshpeer: add test showing that -q silences remote errors
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 44614
diff changeset
    49
  $ hg clone -q -e "\"$PYTHON\" \"$TESTDIR/dummyssh\"" ssh://user@dummy/nonexistent local
45906
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45847
diff changeset
    50
  remote: abort: repository nonexistent not found
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45847
diff changeset
    51
  abort: no suitable response from remote hg
44859
15e26cc0e2c6 sshpeer: add test showing that -q silences remote errors
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 44614
diff changeset
    52
  [255]
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    53
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    54
non-existent absolute path
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
    55
33335
72f051f9a7d8 tests: quote $PYTHON for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 33286
diff changeset
    56
  $ hg clone -e "\"$PYTHON\" \"$TESTDIR/dummyssh\"" ssh://user@dummy/`pwd`/nonexistent local
45906
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45847
diff changeset
    57
  remote: abort: repository $TESTTMP/nonexistent not found
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45847
diff changeset
    58
  abort: no suitable response from remote hg
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    59
  [255]
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    60
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    61
clone remote via stream
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
    62
37349
36b2a304216c tests: disable tests for advanced clone features with simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37330
diff changeset
    63
#if no-reposimplestore
36b2a304216c tests: disable tests for advanced clone features with simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37330
diff changeset
    64
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
    65
  $ hg clone -e "\"$PYTHON\" \"$TESTDIR/dummyssh\"" --stream ssh://user@dummy/remote local-stream
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    66
  streaming all changes
46874
84a93fa7ecfd revlog-compression: use zstd by default (if available)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46737
diff changeset
    67
  8 files to transfer, 827 bytes of data (no-zstd !)
84a93fa7ecfd revlog-compression: use zstd by default (if available)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46737
diff changeset
    68
  transferred 827 bytes in * seconds (*) (glob) (no-zstd !)
84a93fa7ecfd revlog-compression: use zstd by default (if available)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46737
diff changeset
    69
  8 files to transfer, 846 bytes of data (zstd !)
84a93fa7ecfd revlog-compression: use zstd by default (if available)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46737
diff changeset
    70
  transferred * bytes in * seconds (* */sec) (glob) (zstd !)
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    71
  updating to branch default
12489
d039c4285092 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12414
diff changeset
    72
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    73
  $ cd local-stream
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    74
  $ hg verify
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    75
  checking changesets
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    76
  checking manifests
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    77
  crosschecking files in changesets and manifests
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    78
  checking files
39489
f1186c292d03 verify: make output less confusing (issue5924)
Meirambek Omyrzak <meirambek77@gmail.com>
parents: 38170
diff changeset
    79
  checked 3 changesets with 2 changes to 2 files
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    80
  $ hg branches
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
    81
  default                        0:1160648e36ce
40269
52b773f5e9a4 tests: replace `cd ..` with an absolute path in a couple ssh tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 40176
diff changeset
    82
  $ cd $TESTTMP
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
    83
23116
2dc6b7917cdf clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents: 22960
diff changeset
    84
clone bookmarks via stream
2dc6b7917cdf clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents: 22960
diff changeset
    85
2dc6b7917cdf clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents: 22960
diff changeset
    86
  $ hg -R local-stream book mybook
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
    87
  $ hg clone -e "\"$PYTHON\" \"$TESTDIR/dummyssh\"" --stream ssh://user@dummy/local-stream stream2
23116
2dc6b7917cdf clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents: 22960
diff changeset
    88
  streaming all changes
46314
95a615dd77bf clone: make sure we warm the cache after a clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46085
diff changeset
    89
  16 files to transfer, * of data (glob)
95a615dd77bf clone: make sure we warm the cache after a clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46085
diff changeset
    90
  transferred * in * seconds (*) (glob)
23116
2dc6b7917cdf clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents: 22960
diff changeset
    91
  updating to branch default
2dc6b7917cdf clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents: 22960
diff changeset
    92
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
2dc6b7917cdf clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents: 22960
diff changeset
    93
  $ cd stream2
2dc6b7917cdf clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents: 22960
diff changeset
    94
  $ hg book
2dc6b7917cdf clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents: 22960
diff changeset
    95
     mybook                    0:1160648e36ce
40269
52b773f5e9a4 tests: replace `cd ..` with an absolute path in a couple ssh tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 40176
diff changeset
    96
  $ cd $TESTTMP
23116
2dc6b7917cdf clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents: 22960
diff changeset
    97
  $ rm -rf local-stream stream2
2dc6b7917cdf clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents: 22960
diff changeset
    98
37349
36b2a304216c tests: disable tests for advanced clone features with simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37330
diff changeset
    99
#endif
36b2a304216c tests: disable tests for advanced clone features with simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37330
diff changeset
   100
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   101
clone remote via pull
5978
7939c71f3132 sshrepo: be more careful while reading data
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4298
diff changeset
   102
33335
72f051f9a7d8 tests: quote $PYTHON for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 33286
diff changeset
   103
  $ hg clone -e "\"$PYTHON\" \"$TESTDIR/dummyssh\"" ssh://user@dummy/remote local
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   104
  requesting all changes
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   105
  adding changesets
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   106
  adding manifests
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   107
  adding file changes
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   108
  added 3 changesets with 2 changes to 2 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34393
diff changeset
   109
  new changesets 1160648e36ce:ad076bfb429d
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   110
  updating to branch default
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   111
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   112
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   113
verify
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
   114
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   115
  $ cd local
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   116
  $ hg verify
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   117
  checking changesets
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   118
  checking manifests
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   119
  crosschecking files in changesets and manifests
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   120
  checking files
39489
f1186c292d03 verify: make output less confusing (issue5924)
Meirambek Omyrzak <meirambek77@gmail.com>
parents: 38170
diff changeset
   121
  checked 3 changesets with 2 changes to 2 files
30234
34a5f6c66bc5 tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 30155
diff changeset
   122
  $ cat >> .hg/hgrc <<EOF
34a5f6c66bc5 tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 30155
diff changeset
   123
  > [hooks]
34a5f6c66bc5 tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 30155
diff changeset
   124
  > changegroup = sh -c "printenv.py changegroup-in-local 0 ../dummylog"
34a5f6c66bc5 tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 30155
diff changeset
   125
  > EOF
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
   126
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   127
empty default pull
3275
7ae37d99d47e ssh: make the error message more clear, add a testcase
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 3095
diff changeset
   128
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   129
  $ hg paths
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   130
  default = ssh://user@dummy/remote
33335
72f051f9a7d8 tests: quote $PYTHON for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 33286
diff changeset
   131
  $ hg pull -e "\"$PYTHON\" \"$TESTDIR/dummyssh\""
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   132
  pulling from ssh://user@dummy/remote
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   133
  searching for changes
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   134
  no changes found
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   135
24138
eabe44ec5af5 pull: print "pulling from foo" before accessing the other repo
Thomas Arendsen Hein <thomas@intevation.de>
parents: 23416
diff changeset
   136
pull from wrong ssh URL
eabe44ec5af5 pull: print "pulling from foo" before accessing the other repo
Thomas Arendsen Hein <thomas@intevation.de>
parents: 23416
diff changeset
   137
33335
72f051f9a7d8 tests: quote $PYTHON for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 33286
diff changeset
   138
  $ hg pull -e "\"$PYTHON\" \"$TESTDIR/dummyssh\"" ssh://user@dummy/doesnotexist
24138
eabe44ec5af5 pull: print "pulling from foo" before accessing the other repo
Thomas Arendsen Hein <thomas@intevation.de>
parents: 23416
diff changeset
   139
  pulling from ssh://user@dummy/doesnotexist
45906
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45847
diff changeset
   140
  remote: abort: repository doesnotexist not found
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45847
diff changeset
   141
  abort: no suitable response from remote hg
24138
eabe44ec5af5 pull: print "pulling from foo" before accessing the other repo
Thomas Arendsen Hein <thomas@intevation.de>
parents: 23416
diff changeset
   142
  [255]
eabe44ec5af5 pull: print "pulling from foo" before accessing the other repo
Thomas Arendsen Hein <thomas@intevation.de>
parents: 23416
diff changeset
   143
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   144
local change
12409
0eaf7d32a5d8 test-ssh: test absolute paths in SSH URLs
Brodie Rao <brodie@bitheap.org>
parents: 12156
diff changeset
   145
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   146
  $ echo bleah > foo
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   147
  $ hg ci -m "add"
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   148
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   149
updating rc
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   150
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   151
  $ echo "default-push = ssh://user@dummy/remote" >> .hg/hgrc
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   152
  $ echo "[ui]" >> .hg/hgrc
33335
72f051f9a7d8 tests: quote $PYTHON for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 33286
diff changeset
   153
  $ echo "ssh = \"$PYTHON\" \"$TESTDIR/dummyssh\"" >> .hg/hgrc
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   154
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   155
find outgoing
2612
ffb895f16925 add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2439
diff changeset
   156
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   157
  $ hg out ssh://user@dummy/remote
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   158
  comparing with ssh://user@dummy/remote
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   159
  searching for changes
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   160
  changeset:   3:a28a9d1a809c
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   161
  tag:         tip
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   162
  parent:      0:1160648e36ce
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   163
  user:        test
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   164
  date:        Thu Jan 01 00:00:00 1970 +0000
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   165
  summary:     add
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   166
  
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
   167
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   168
find incoming on the remote side
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
   169
33335
72f051f9a7d8 tests: quote $PYTHON for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 33286
diff changeset
   170
  $ hg incoming -R ../remote -e "\"$PYTHON\" \"$TESTDIR/dummyssh\"" ssh://user@dummy/local
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   171
  comparing with ssh://user@dummy/local
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   172
  searching for changes
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   173
  changeset:   3:a28a9d1a809c
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   174
  tag:         tip
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   175
  parent:      0:1160648e36ce
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   176
  user:        test
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   177
  date:        Thu Jan 01 00:00:00 1970 +0000
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   178
  summary:     add
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   179
  
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
   180
12504
f7dd8bffe18c test-ssh: test absolute path that exists
Brodie Rao <brodie@bitheap.org>
parents: 12489
diff changeset
   181
find incoming on the remote side (using absolute path)
f7dd8bffe18c test-ssh: test absolute path that exists
Brodie Rao <brodie@bitheap.org>
parents: 12489
diff changeset
   182
33335
72f051f9a7d8 tests: quote $PYTHON for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 33286
diff changeset
   183
  $ hg incoming -R ../remote -e "\"$PYTHON\" \"$TESTDIR/dummyssh\"" "ssh://user@dummy/`pwd`"
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12587
diff changeset
   184
  comparing with ssh://user@dummy/$TESTTMP/local
12504
f7dd8bffe18c test-ssh: test absolute path that exists
Brodie Rao <brodie@bitheap.org>
parents: 12489
diff changeset
   185
  searching for changes
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   186
  changeset:   3:a28a9d1a809c
12504
f7dd8bffe18c test-ssh: test absolute path that exists
Brodie Rao <brodie@bitheap.org>
parents: 12489
diff changeset
   187
  tag:         tip
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   188
  parent:      0:1160648e36ce
12504
f7dd8bffe18c test-ssh: test absolute path that exists
Brodie Rao <brodie@bitheap.org>
parents: 12489
diff changeset
   189
  user:        test
f7dd8bffe18c test-ssh: test absolute path that exists
Brodie Rao <brodie@bitheap.org>
parents: 12489
diff changeset
   190
  date:        Thu Jan 01 00:00:00 1970 +0000
f7dd8bffe18c test-ssh: test absolute path that exists
Brodie Rao <brodie@bitheap.org>
parents: 12489
diff changeset
   191
  summary:     add
f7dd8bffe18c test-ssh: test absolute path that exists
Brodie Rao <brodie@bitheap.org>
parents: 12489
diff changeset
   192
  
f7dd8bffe18c test-ssh: test absolute path that exists
Brodie Rao <brodie@bitheap.org>
parents: 12489
diff changeset
   193
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   194
push
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
   195
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   196
  $ hg push
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   197
  pushing to ssh://user@dummy/remote
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   198
  searching for changes
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   199
  remote: adding changesets
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   200
  remote: adding manifests
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   201
  remote: adding file changes
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   202
  remote: added 1 changesets with 1 changes to 1 files
40269
52b773f5e9a4 tests: replace `cd ..` with an absolute path in a couple ssh tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 40176
diff changeset
   203
  $ cd $TESTTMP/remote
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   204
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   205
check remote tip
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
   206
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   207
  $ hg tip
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   208
  changeset:   3:a28a9d1a809c
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   209
  tag:         tip
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   210
  parent:      0:1160648e36ce
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   211
  user:        test
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   212
  date:        Thu Jan 01 00:00:00 1970 +0000
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   213
  summary:     add
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   214
  
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   215
  $ hg verify
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   216
  checking changesets
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   217
  checking manifests
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   218
  crosschecking files in changesets and manifests
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   219
  checking files
39489
f1186c292d03 verify: make output less confusing (issue5924)
Meirambek Omyrzak <meirambek77@gmail.com>
parents: 38170
diff changeset
   220
  checked 4 changesets with 3 changes to 2 files
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   221
  $ hg cat -r tip foo
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   222
  bleah
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   223
  $ echo z > z
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   224
  $ hg ci -A -m z z
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   225
  created new head
1982
70ba0c86da8b Added test for incoming via ssh.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 1933
diff changeset
   226
12969
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   227
test pushkeys and bookmarks
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   228
40269
52b773f5e9a4 tests: replace `cd ..` with an absolute path in a couple ssh tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 40176
diff changeset
   229
  $ cd $TESTTMP/local
33335
72f051f9a7d8 tests: quote $PYTHON for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 33286
diff changeset
   230
  $ hg debugpushkey --config ui.ssh="\"$PYTHON\" \"$TESTDIR/dummyssh\"" ssh://user@dummy/remote namespaces
12969
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   231
  bookmarks	
18255
7ca534f31a83 debugpushkey: list keys sorted
Mads Kiilerich <mads at kiilerich.com>
parents: 17844
diff changeset
   232
  namespaces	
15648
79cc89de5be1 phases: add basic pushkey support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15622
diff changeset
   233
  phases	
12969
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   234
  $ hg book foo -r 0
38170
dfb888aae17a outgoing: pay attention to `default:pushurl` for bookmarks and subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 38108
diff changeset
   235
  $ hg out -B --config paths.default=bogus://invalid --config paths.default:pushurl=`hg paths default`
12969
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   236
  comparing with ssh://user@dummy/remote
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   237
  searching for changed bookmarks
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   238
     foo                       1160648e36ce
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   239
  $ hg push -B foo
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   240
  pushing to ssh://user@dummy/remote
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   241
  searching for changes
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   242
  no changes found
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   243
  exporting bookmark foo
16038
dad96e752079 push: don't treat bookmark as a found change
Matt Mackall <mpm@selenic.com>
parents: 16023
diff changeset
   244
  [1]
33335
72f051f9a7d8 tests: quote $PYTHON for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 33286
diff changeset
   245
  $ hg debugpushkey --config ui.ssh="\"$PYTHON\" \"$TESTDIR/dummyssh\"" ssh://user@dummy/remote bookmarks
12969
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   246
  foo	1160648e36cec0054048a7edc4110c6f84fde594
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   247
  $ hg book -f foo
13050
3790452d499b pushkey: use UTF-8
Matt Mackall <mpm@selenic.com>
parents: 12969
diff changeset
   248
  $ hg push --traceback
12969
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   249
  pushing to ssh://user@dummy/remote
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   250
  searching for changes
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   251
  no changes found
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   252
  updating bookmark foo
16023
90f8b8dd0326 push: return 1 if no changes found (issue3228)
Matt Mackall <mpm@selenic.com>
parents: 15897
diff changeset
   253
  [1]
12969
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   254
  $ hg book -d foo
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   255
  $ hg in -B
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   256
  comparing with ssh://user@dummy/remote
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   257
  searching for changed bookmarks
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   258
     foo                       a28a9d1a809c
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   259
  $ hg book -f -r 0 foo
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   260
  $ hg pull -B foo
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   261
  pulling from ssh://user@dummy/remote
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   262
  no changes found
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   263
  updating bookmark foo
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   264
  $ hg book -d foo
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   265
  $ hg push -B foo
13368
d4ab9486e514 bookmarks: move push/pull command features to core
Matt Mackall <mpm@selenic.com>
parents: 13050
diff changeset
   266
  pushing to ssh://user@dummy/remote
d4ab9486e514 bookmarks: move push/pull command features to core
Matt Mackall <mpm@selenic.com>
parents: 13050
diff changeset
   267
  searching for changes
d4ab9486e514 bookmarks: move push/pull command features to core
Matt Mackall <mpm@selenic.com>
parents: 13050
diff changeset
   268
  no changes found
12969
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   269
  deleting remote bookmark foo
16038
dad96e752079 push: don't treat bookmark as a found change
Matt Mackall <mpm@selenic.com>
parents: 16023
diff changeset
   270
  [1]
12969
6bd9778ae749 pushkey: force HTTP POST on push and add tests (issue2489)
Matt Mackall <mpm@selenic.com>
parents: 12773
diff changeset
   271
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   272
a bad, evil hook that prints to stdout
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
   273
14186
8513bd2e7259 tests: share dummyssh
Mads Kiilerich <mads@kiilerich.com>
parents: 14185
diff changeset
   274
  $ cat <<EOF > $TESTTMP/badhook
8513bd2e7259 tests: share dummyssh
Mads Kiilerich <mads@kiilerich.com>
parents: 14185
diff changeset
   275
  > import sys
8513bd2e7259 tests: share dummyssh
Mads Kiilerich <mads@kiilerich.com>
parents: 14185
diff changeset
   276
  > sys.stdout.write("KABOOM\n")
37943
45a669bad421 test-ssh: add some flush() to make output deterministic
Yuya Nishihara <yuya@tcha.org>
parents: 37813
diff changeset
   277
  > sys.stdout.flush()
14186
8513bd2e7259 tests: share dummyssh
Mads Kiilerich <mads@kiilerich.com>
parents: 14185
diff changeset
   278
  > EOF
8513bd2e7259 tests: share dummyssh
Mads Kiilerich <mads@kiilerich.com>
parents: 14185
diff changeset
   279
30364
ad56204f733e hook: flush stdout before restoring stderr redirection
Yuya Nishihara <yuya@tcha.org>
parents: 30234
diff changeset
   280
  $ cat <<EOF > $TESTTMP/badpyhook.py
ad56204f733e hook: flush stdout before restoring stderr redirection
Yuya Nishihara <yuya@tcha.org>
parents: 30234
diff changeset
   281
  > import sys
ad56204f733e hook: flush stdout before restoring stderr redirection
Yuya Nishihara <yuya@tcha.org>
parents: 30234
diff changeset
   282
  > def hook(ui, repo, hooktype, **kwargs):
ad56204f733e hook: flush stdout before restoring stderr redirection
Yuya Nishihara <yuya@tcha.org>
parents: 30234
diff changeset
   283
  >     sys.stdout.write("KABOOM IN PROCESS\n")
37943
45a669bad421 test-ssh: add some flush() to make output deterministic
Yuya Nishihara <yuya@tcha.org>
parents: 37813
diff changeset
   284
  >     sys.stdout.flush()
30364
ad56204f733e hook: flush stdout before restoring stderr redirection
Yuya Nishihara <yuya@tcha.org>
parents: 30234
diff changeset
   285
  > EOF
ad56204f733e hook: flush stdout before restoring stderr redirection
Yuya Nishihara <yuya@tcha.org>
parents: 30234
diff changeset
   286
ad56204f733e hook: flush stdout before restoring stderr redirection
Yuya Nishihara <yuya@tcha.org>
parents: 30234
diff changeset
   287
  $ cat <<EOF >> ../remote/.hg/hgrc
ad56204f733e hook: flush stdout before restoring stderr redirection
Yuya Nishihara <yuya@tcha.org>
parents: 30234
diff changeset
   288
  > [hooks]
39707
5abc47d4ca6b tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents: 39489
diff changeset
   289
  > changegroup.stdout = "$PYTHON" $TESTTMP/badhook
30364
ad56204f733e hook: flush stdout before restoring stderr redirection
Yuya Nishihara <yuya@tcha.org>
parents: 30234
diff changeset
   290
  > changegroup.pystdout = python:$TESTTMP/badpyhook.py:hook
ad56204f733e hook: flush stdout before restoring stderr redirection
Yuya Nishihara <yuya@tcha.org>
parents: 30234
diff changeset
   291
  > EOF
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   292
  $ echo r > r
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   293
  $ hg ci -A -m z r
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   294
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   295
push should succeed even though it has an unexpected response
1110
1032a505488c Add a simple dummy ssh test
mpm@selenic.com
parents:
diff changeset
   296
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   297
  $ hg push
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   298
  pushing to ssh://user@dummy/remote
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   299
  searching for changes
20501
8a9e0b523d2d discovery: improve "note: unsynced remote changes!" warning
Mads Kiilerich <madski@unity3d.com>
parents: 20403
diff changeset
   300
  remote has heads on branch 'default' that are not known locally: 6c0482d977a3
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   301
  remote: adding changesets
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   302
  remote: adding manifests
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   303
  remote: adding file changes
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   304
  remote: added 1 changesets with 1 changes to 1 files
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   305
  remote: KABOOM
30364
ad56204f733e hook: flush stdout before restoring stderr redirection
Yuya Nishihara <yuya@tcha.org>
parents: 30234
diff changeset
   306
  remote: KABOOM IN PROCESS
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   307
  $ hg -R ../remote heads
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   308
  changeset:   5:1383141674ec
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   309
  tag:         tip
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   310
  parent:      3:a28a9d1a809c
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   311
  user:        test
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   312
  date:        Thu Jan 01 00:00:00 1970 +0000
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   313
  summary:     z
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   314
  
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   315
  changeset:   4:6c0482d977a3
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   316
  parent:      0:1160648e36ce
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   317
  user:        test
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   318
  date:        Thu Jan 01 00:00:00 1970 +0000
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   319
  summary:     z
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   320
  
13464
da0ddd62b9d8 sshrepo: catch passwords in ssh urls
Adrian Buehlmann <adrian@cadifra.com>
parents: 13405
diff changeset
   321
39806
0ad5f064d829 test-ssh: show that stdio redirection doesn't work with chg
Yuya Nishihara <yuya@tcha.org>
parents: 38170
diff changeset
   322
#if chg
0ad5f064d829 test-ssh: show that stdio redirection doesn't work with chg
Yuya Nishihara <yuya@tcha.org>
parents: 38170
diff changeset
   323
0ad5f064d829 test-ssh: show that stdio redirection doesn't work with chg
Yuya Nishihara <yuya@tcha.org>
parents: 38170
diff changeset
   324
try again with remote chg, which should succeed as well
0ad5f064d829 test-ssh: show that stdio redirection doesn't work with chg
Yuya Nishihara <yuya@tcha.org>
parents: 38170
diff changeset
   325
0ad5f064d829 test-ssh: show that stdio redirection doesn't work with chg
Yuya Nishihara <yuya@tcha.org>
parents: 38170
diff changeset
   326
  $ hg rollback -R ../remote
0ad5f064d829 test-ssh: show that stdio redirection doesn't work with chg
Yuya Nishihara <yuya@tcha.org>
parents: 38170
diff changeset
   327
  repository tip rolled back to revision 4 (undo serve)
0ad5f064d829 test-ssh: show that stdio redirection doesn't work with chg
Yuya Nishihara <yuya@tcha.org>
parents: 38170
diff changeset
   328
0ad5f064d829 test-ssh: show that stdio redirection doesn't work with chg
Yuya Nishihara <yuya@tcha.org>
parents: 38170
diff changeset
   329
  $ hg push --config ui.remotecmd=chg
0ad5f064d829 test-ssh: show that stdio redirection doesn't work with chg
Yuya Nishihara <yuya@tcha.org>
parents: 38170
diff changeset
   330
  pushing to ssh://user@dummy/remote
0ad5f064d829 test-ssh: show that stdio redirection doesn't work with chg
Yuya Nishihara <yuya@tcha.org>
parents: 38170
diff changeset
   331
  searching for changes
0ad5f064d829 test-ssh: show that stdio redirection doesn't work with chg
Yuya Nishihara <yuya@tcha.org>
parents: 38170
diff changeset
   332
  remote has heads on branch 'default' that are not known locally: 6c0482d977a3
39807
e5724be689b3 procutil: compare fd number to see if stdio protection is needed (issue5992)
Yuya Nishihara <yuya@tcha.org>
parents: 39806
diff changeset
   333
  remote: adding changesets
e5724be689b3 procutil: compare fd number to see if stdio protection is needed (issue5992)
Yuya Nishihara <yuya@tcha.org>
parents: 39806
diff changeset
   334
  remote: adding manifests
e5724be689b3 procutil: compare fd number to see if stdio protection is needed (issue5992)
Yuya Nishihara <yuya@tcha.org>
parents: 39806
diff changeset
   335
  remote: adding file changes
46085
e0866c047e64 tests: conditionalize output in test-ssh.t with chg+py3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 45906
diff changeset
   336
  remote: added 1 changesets with 1 changes to 1 files (py3 !)
39809
23a00bc90a3c chgserver: do not send system() back to client if stdio redirected (issue5992)
Yuya Nishihara <yuya@tcha.org>
parents: 39807
diff changeset
   337
  remote: KABOOM
23a00bc90a3c chgserver: do not send system() back to client if stdio redirected (issue5992)
Yuya Nishihara <yuya@tcha.org>
parents: 39807
diff changeset
   338
  remote: KABOOM IN PROCESS
46085
e0866c047e64 tests: conditionalize output in test-ssh.t with chg+py3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 45906
diff changeset
   339
  remote: added 1 changesets with 1 changes to 1 files (no-py3 !)
39806
0ad5f064d829 test-ssh: show that stdio redirection doesn't work with chg
Yuya Nishihara <yuya@tcha.org>
parents: 38170
diff changeset
   340
0ad5f064d829 test-ssh: show that stdio redirection doesn't work with chg
Yuya Nishihara <yuya@tcha.org>
parents: 38170
diff changeset
   341
#endif
0ad5f064d829 test-ssh: show that stdio redirection doesn't work with chg
Yuya Nishihara <yuya@tcha.org>
parents: 38170
diff changeset
   342
13604
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
   343
clone bookmarks
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
   344
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
   345
  $ hg -R ../remote bookmark test
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
   346
  $ hg -R ../remote bookmarks
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   347
   * test                      4:6c0482d977a3
33335
72f051f9a7d8 tests: quote $PYTHON for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 33286
diff changeset
   348
  $ hg clone -e "\"$PYTHON\" \"$TESTDIR/dummyssh\"" ssh://user@dummy/remote local-bookmarks
13604
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
   349
  requesting all changes
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
   350
  adding changesets
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
   351
  adding manifests
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
   352
  adding file changes
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   353
  added 6 changesets with 5 changes to 4 files (+1 heads)
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34393
diff changeset
   354
  new changesets 1160648e36ce:1383141674ec
13604
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
   355
  updating to branch default
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
   356
  3 files updated, 0 files merged, 0 files removed, 0 files unresolved
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
   357
  $ hg -R local-bookmarks bookmarks
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   358
     test                      4:6c0482d977a3
13604
3f6a4579f803 hg: add support for cloning bookmarks
David Soria Parra <dsp@php.net>
parents: 13469
diff changeset
   359
13464
da0ddd62b9d8 sshrepo: catch passwords in ssh urls
Adrian Buehlmann <adrian@cadifra.com>
parents: 13405
diff changeset
   360
passwords in ssh urls are not supported
13755
e45780ac8292 ssh: fix password test
Matt Mackall <mpm@selenic.com>
parents: 13752
diff changeset
   361
(we use a glob here because different Python versions give different
e45780ac8292 ssh: fix password test
Matt Mackall <mpm@selenic.com>
parents: 13752
diff changeset
   362
results here)
13464
da0ddd62b9d8 sshrepo: catch passwords in ssh urls
Adrian Buehlmann <adrian@cadifra.com>
parents: 13405
diff changeset
   363
da0ddd62b9d8 sshrepo: catch passwords in ssh urls
Adrian Buehlmann <adrian@cadifra.com>
parents: 13405
diff changeset
   364
  $ hg push ssh://user:erroneouspwd@dummy/remote
13755
e45780ac8292 ssh: fix password test
Matt Mackall <mpm@selenic.com>
parents: 13752
diff changeset
   365
  pushing to ssh://user:*@dummy/remote (glob)
45906
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45847
diff changeset
   366
  abort: password in URL not supported
13464
da0ddd62b9d8 sshrepo: catch passwords in ssh urls
Adrian Buehlmann <adrian@cadifra.com>
parents: 13405
diff changeset
   367
  [255]
da0ddd62b9d8 sshrepo: catch passwords in ssh urls
Adrian Buehlmann <adrian@cadifra.com>
parents: 13405
diff changeset
   368
40269
52b773f5e9a4 tests: replace `cd ..` with an absolute path in a couple ssh tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 40176
diff changeset
   369
  $ cd $TESTTMP
15581
d8fa35c28335 ssh: quote remote paths (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 14186
diff changeset
   370
17015
73d20de5f30b tests: add missing no-outer-repo requirements
Mads Kiilerich <mads@kiilerich.com>
parents: 16982
diff changeset
   371
hide outer repo
73d20de5f30b tests: add missing no-outer-repo requirements
Mads Kiilerich <mads@kiilerich.com>
parents: 16982
diff changeset
   372
  $ hg init
73d20de5f30b tests: add missing no-outer-repo requirements
Mads Kiilerich <mads@kiilerich.com>
parents: 16982
diff changeset
   373
15581
d8fa35c28335 ssh: quote remote paths (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 14186
diff changeset
   374
Test remote paths with spaces (issue2983):
d8fa35c28335 ssh: quote remote paths (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 14186
diff changeset
   375
33335
72f051f9a7d8 tests: quote $PYTHON for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 33286
diff changeset
   376
  $ hg init --ssh "\"$PYTHON\" \"$TESTDIR/dummyssh\"" "ssh://user@dummy/a repo"
17260
e432fb4b4221 tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents: 17075
diff changeset
   377
  $ touch "$TESTTMP/a repo/test"
e432fb4b4221 tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents: 17075
diff changeset
   378
  $ hg -R 'a repo' commit -A -m "test"
e432fb4b4221 tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents: 17075
diff changeset
   379
  adding test
15581
d8fa35c28335 ssh: quote remote paths (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 14186
diff changeset
   380
  $ hg -R 'a repo' tag tag
33335
72f051f9a7d8 tests: quote $PYTHON for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 33286
diff changeset
   381
  $ hg id --ssh "\"$PYTHON\" \"$TESTDIR/dummyssh\"" "ssh://user@dummy/a repo"
17260
e432fb4b4221 tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents: 17075
diff changeset
   382
  73649e48688a
15581
d8fa35c28335 ssh: quote remote paths (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 14186
diff changeset
   383
33335
72f051f9a7d8 tests: quote $PYTHON for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 33286
diff changeset
   384
  $ hg id --ssh "\"$PYTHON\" \"$TESTDIR/dummyssh\"" "ssh://user@dummy/a repo#noNoNO"
45906
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45847
diff changeset
   385
  abort: unknown revision 'noNoNO'
21188
d36440d84328 httppeer: reintroduce _abort that accidentally was removed in 167047ba3cfa
Mads Kiilerich <madski@unity3d.com>
parents: 20501
diff changeset
   386
  [255]
d36440d84328 httppeer: reintroduce _abort that accidentally was removed in 167047ba3cfa
Mads Kiilerich <madski@unity3d.com>
parents: 20501
diff changeset
   387
17844
b32e55e6c3c7 clone: don't %-escape the default destination (issue3145)
Matt Mackall <mpm@selenic.com>
parents: 17298
diff changeset
   388
Test (non-)escaping of remote paths with spaces when cloning (issue3145):
b32e55e6c3c7 clone: don't %-escape the default destination (issue3145)
Matt Mackall <mpm@selenic.com>
parents: 17298
diff changeset
   389
33335
72f051f9a7d8 tests: quote $PYTHON for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 33286
diff changeset
   390
  $ hg clone --ssh "\"$PYTHON\" \"$TESTDIR/dummyssh\"" "ssh://user@dummy/a repo"
17844
b32e55e6c3c7 clone: don't %-escape the default destination (issue3145)
Matt Mackall <mpm@selenic.com>
parents: 17298
diff changeset
   391
  destination directory: a repo
b32e55e6c3c7 clone: don't %-escape the default destination (issue3145)
Matt Mackall <mpm@selenic.com>
parents: 17298
diff changeset
   392
  abort: destination 'a repo' is not empty
45847
d68618954ade errors: use InputError for some errors on `hg clone`
Martin von Zweigbergk <martinvonz@google.com>
parents: 44860
diff changeset
   393
  [10]
17844
b32e55e6c3c7 clone: don't %-escape the default destination (issue3145)
Matt Mackall <mpm@selenic.com>
parents: 17298
diff changeset
   394
46737
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46633
diff changeset
   395
#if no-rhg
32050
77eaf9539499 dispatch: protect against malicious 'hg serve --stdio' invocations (sec)
Augie Fackler <augie@google.com>
parents: 30914
diff changeset
   396
Make sure hg is really paranoid in serve --stdio mode. It used to be
77eaf9539499 dispatch: protect against malicious 'hg serve --stdio' invocations (sec)
Augie Fackler <augie@google.com>
parents: 30914
diff changeset
   397
possible to get a debugger REPL by specifying a repo named --debugger.
77eaf9539499 dispatch: protect against malicious 'hg serve --stdio' invocations (sec)
Augie Fackler <augie@google.com>
parents: 30914
diff changeset
   398
  $ hg -R --debugger serve --stdio
77eaf9539499 dispatch: protect against malicious 'hg serve --stdio' invocations (sec)
Augie Fackler <augie@google.com>
parents: 30914
diff changeset
   399
  abort: potentially unsafe serve --stdio invocation: ['-R', '--debugger', 'serve', '--stdio']
77eaf9539499 dispatch: protect against malicious 'hg serve --stdio' invocations (sec)
Augie Fackler <augie@google.com>
parents: 30914
diff changeset
   400
  [255]
77eaf9539499 dispatch: protect against malicious 'hg serve --stdio' invocations (sec)
Augie Fackler <augie@google.com>
parents: 30914
diff changeset
   401
  $ hg -R --config=ui.debugger=yes serve --stdio
77eaf9539499 dispatch: protect against malicious 'hg serve --stdio' invocations (sec)
Augie Fackler <augie@google.com>
parents: 30914
diff changeset
   402
  abort: potentially unsafe serve --stdio invocation: ['-R', '--config=ui.debugger=yes', 'serve', '--stdio']
77eaf9539499 dispatch: protect against malicious 'hg serve --stdio' invocations (sec)
Augie Fackler <augie@google.com>
parents: 30914
diff changeset
   403
  [255]
77eaf9539499 dispatch: protect against malicious 'hg serve --stdio' invocations (sec)
Augie Fackler <augie@google.com>
parents: 30914
diff changeset
   404
Abbreviations of 'serve' also don't work, to avoid shenanigans.
77eaf9539499 dispatch: protect against malicious 'hg serve --stdio' invocations (sec)
Augie Fackler <augie@google.com>
parents: 30914
diff changeset
   405
  $ hg -R narf serv --stdio
77eaf9539499 dispatch: protect against malicious 'hg serve --stdio' invocations (sec)
Augie Fackler <augie@google.com>
parents: 30914
diff changeset
   406
  abort: potentially unsafe serve --stdio invocation: ['-R', 'narf', 'serv', '--stdio']
77eaf9539499 dispatch: protect against malicious 'hg serve --stdio' invocations (sec)
Augie Fackler <augie@google.com>
parents: 30914
diff changeset
   407
  [255]
46737
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46633
diff changeset
   408
#else
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46633
diff changeset
   409
rhg aborts early on -R without a repository at that path
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46633
diff changeset
   410
  $ hg -R --debugger serve --stdio
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46633
diff changeset
   411
  abort: potentially unsafe serve --stdio invocation: ['-R', '--debugger', 'serve', '--stdio'] (missing-correct-output !)
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46633
diff changeset
   412
  abort: repository --debugger not found (known-bad-output !)
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46633
diff changeset
   413
  [255]
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46633
diff changeset
   414
  $ hg -R --config=ui.debugger=yes serve --stdio
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46633
diff changeset
   415
  abort: potentially unsafe serve --stdio invocation: ['-R', '--config=ui.debugger=yes', 'serve', '--stdio'] (missing-correct-output !)
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46633
diff changeset
   416
  abort: repository --config=ui.debugger=yes not found (known-bad-output !)
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46633
diff changeset
   417
  [255]
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46633
diff changeset
   418
  $ hg -R narf serv --stdio
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46633
diff changeset
   419
  abort: potentially unsafe serve --stdio invocation: ['-R', 'narf', 'serv', '--stdio'] (missing-correct-output !)
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46633
diff changeset
   420
  abort: repository narf not found (known-bad-output !)
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46633
diff changeset
   421
  [255]
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46633
diff changeset
   422
If the repo does exist, rhg finds an unsupported command and falls back to Python
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46633
diff changeset
   423
which still does the right thing
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46633
diff changeset
   424
  $ hg init narf
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46633
diff changeset
   425
  $ hg -R narf serv --stdio
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46633
diff changeset
   426
  abort: potentially unsafe serve --stdio invocation: ['-R', 'narf', 'serv', '--stdio']
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46633
diff changeset
   427
  [255]
e96a0a53de20 tests: Adapt expected output for minor differences with rhg
Simon Sapin <simon.sapin@octobus.net>
parents: 46633
diff changeset
   428
#endif
32050
77eaf9539499 dispatch: protect against malicious 'hg serve --stdio' invocations (sec)
Augie Fackler <augie@google.com>
parents: 30914
diff changeset
   429
16608
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
   430
Test hg-ssh using a helper script that will restore PYTHONPATH (which might
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
   431
have been cleared by a hg.exe wrapper) and invoke hg-ssh with the right
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
   432
parameters:
15897
cc021114fc98 hg-ssh: use shlex for shell-like parsing of SSH_ORIGINAL_COMMAND
Mads Kiilerich <mads@kiilerich.com>
parents: 15648
diff changeset
   433
16608
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
   434
  $ cat > ssh.sh << EOF
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
   435
  > userhost="\$1"
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
   436
  > SSH_ORIGINAL_COMMAND="\$2"
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
   437
  > export SSH_ORIGINAL_COMMAND
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
   438
  > PYTHONPATH="$PYTHONPATH"
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
   439
  > export PYTHONPATH
33335
72f051f9a7d8 tests: quote $PYTHON for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 33286
diff changeset
   440
  > "$PYTHON" "$TESTDIR/../contrib/hg-ssh" "$TESTTMP/a repo"
16608
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
   441
  > EOF
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
   442
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
   443
  $ hg id --ssh "sh ssh.sh" "ssh://user@dummy/a repo"
17260
e432fb4b4221 tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents: 17075
diff changeset
   444
  73649e48688a
16606
19379226dc67 hg-ssh: use %s for printing paths in error messages
Mads Kiilerich <mads@kiilerich.com>
parents: 16541
diff changeset
   445
16608
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
   446
  $ hg id --ssh "sh ssh.sh" "ssh://user@dummy/a'repo"
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 35268
diff changeset
   447
  remote: Illegal repository "$TESTTMP/a'repo"
45906
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45847
diff changeset
   448
  abort: no suitable response from remote hg
15897
cc021114fc98 hg-ssh: use shlex for shell-like parsing of SSH_ORIGINAL_COMMAND
Mads Kiilerich <mads@kiilerich.com>
parents: 15648
diff changeset
   449
  [255]
16606
19379226dc67 hg-ssh: use %s for printing paths in error messages
Mads Kiilerich <mads@kiilerich.com>
parents: 16541
diff changeset
   450
16608
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
   451
  $ hg id --ssh "sh ssh.sh" --remotecmd hacking "ssh://user@dummy/a'repo"
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
   452
  remote: Illegal command "hacking -R 'a'\''repo' serve --stdio"
45906
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45847
diff changeset
   453
  abort: no suitable response from remote hg
15897
cc021114fc98 hg-ssh: use shlex for shell-like parsing of SSH_ORIGINAL_COMMAND
Mads Kiilerich <mads@kiilerich.com>
parents: 15648
diff changeset
   454
  [255]
cc021114fc98 hg-ssh: use shlex for shell-like parsing of SSH_ORIGINAL_COMMAND
Mads Kiilerich <mads@kiilerich.com>
parents: 15648
diff changeset
   455
39707
5abc47d4ca6b tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents: 39489
diff changeset
   456
  $ SSH_ORIGINAL_COMMAND="'hg' -R 'a'repo' serve --stdio" "$PYTHON" "$TESTDIR/../contrib/hg-ssh"
16608
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
   457
  Illegal command "'hg' -R 'a'repo' serve --stdio": No closing quotation
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
   458
  [255]
289fdcd4cb47 tests: improve test of hg-ssh and make the test pass on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16606
diff changeset
   459
16836
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   460
Test hg-ssh in read-only mode:
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   461
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   462
  $ cat > ssh.sh << EOF
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   463
  > userhost="\$1"
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   464
  > SSH_ORIGINAL_COMMAND="\$2"
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   465
  > export SSH_ORIGINAL_COMMAND
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   466
  > PYTHONPATH="$PYTHONPATH"
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   467
  > export PYTHONPATH
33335
72f051f9a7d8 tests: quote $PYTHON for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 33286
diff changeset
   468
  > "$PYTHON" "$TESTDIR/../contrib/hg-ssh" --read-only "$TESTTMP/remote"
16836
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   469
  > EOF
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   470
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   471
  $ hg clone --ssh "sh ssh.sh" "ssh://user@dummy/$TESTTMP/remote" read-only-local
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   472
  requesting all changes
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   473
  adding changesets
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   474
  adding manifests
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   475
  adding file changes
23126
8b4a8a9176e2 clone: properly mark branches closed with --uncompressed (issue4428)
Matt Mackall <mpm@selenic.com>
parents: 23116
diff changeset
   476
  added 6 changesets with 5 changes to 4 files (+1 heads)
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34393
diff changeset
   477
  new changesets 1160648e36ce:1383141674ec
16836
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   478
  updating to branch default
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   479
  3 files updated, 0 files merged, 0 files removed, 0 files unresolved
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   480
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   481
  $ cd read-only-local
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   482
  $ echo "baz" > bar
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   483
  $ hg ci -A -m "unpushable commit" bar
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   484
  $ hg push --ssh "sh ../ssh.sh"
16897
2774576dee4d tests/run-tests: avoid C:/ in arguments
Adrian Buehlmann <adrian@cadifra.com>
parents: 16836
diff changeset
   485
  pushing to ssh://user@dummy/*/remote (glob)
16836
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   486
  searching for changes
25422
8dc5ee5b7b09 sshpeer: use the doublepipe object for the server to client channel
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25405
diff changeset
   487
  remote: Permission denied
26829
58f1645f72c3 bundle2: attribute remote failures to remote (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26828
diff changeset
   488
  remote: pretxnopen.hg-ssh hook failed
58f1645f72c3 bundle2: attribute remote failures to remote (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26828
diff changeset
   489
  abort: push failed on remote
46977
3f87d2af0bd6 errors: raise RemoteError in some places in exchange.py
Martin von Zweigbergk <martinvonz@google.com>
parents: 46884
diff changeset
   490
  [100]
16836
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   491
40269
52b773f5e9a4 tests: replace `cd ..` with an absolute path in a couple ssh tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 40176
diff changeset
   492
  $ cd $TESTTMP
16836
1ba3e17186c8 hg-ssh: read-only flag
David Schleimer <dschleimer@fb.com>
parents: 16608
diff changeset
   493
22247
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   494
stderr from remote commands should be printed before stdout from local code (issue4336)
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   495
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   496
  $ hg clone remote stderr-ordering
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   497
  updating to branch default
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   498
  3 files updated, 0 files merged, 0 files removed, 0 files unresolved
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   499
  $ cd stderr-ordering
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   500
  $ cat >> localwrite.py << EOF
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   501
  > from mercurial import exchange, extensions
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   502
  > 
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   503
  > def wrappedpush(orig, repo, *args, **kwargs):
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   504
  >     res = orig(repo, *args, **kwargs)
38108
e69628f36196 py3: add b'' prefixes in tests/test-ssh.t and tests/test-ssh-bundle1.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 37943
diff changeset
   505
  >     repo.ui.write(b'local stdout\n')
37943
45a669bad421 test-ssh: add some flush() to make output deterministic
Yuya Nishihara <yuya@tcha.org>
parents: 37813
diff changeset
   506
  >     repo.ui.flush()
22247
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   507
  >     return res
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   508
  > 
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   509
  > def extsetup(ui):
38108
e69628f36196 py3: add b'' prefixes in tests/test-ssh.t and tests/test-ssh-bundle1.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 37943
diff changeset
   510
  >     extensions.wrapfunction(exchange, b'push', wrappedpush)
22247
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   511
  > EOF
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   512
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   513
  $ cat >> .hg/hgrc << EOF
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   514
  > [paths]
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   515
  > default-push = ssh://user@dummy/remote
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   516
  > [ui]
33335
72f051f9a7d8 tests: quote $PYTHON for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 33286
diff changeset
   517
  > ssh = "$PYTHON" "$TESTDIR/dummyssh"
22247
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   518
  > [extensions]
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   519
  > localwrite = localwrite.py
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   520
  > EOF
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   521
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   522
  $ echo localwrite > foo
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   523
  $ hg commit -m 'testing localwrite'
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   524
  $ hg push
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   525
  pushing to ssh://user@dummy/remote
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   526
  searching for changes
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   527
  remote: adding changesets
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   528
  remote: adding manifests
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   529
  remote: adding file changes
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   530
  remote: added 1 changesets with 1 changes to 1 files
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   531
  remote: KABOOM
30364
ad56204f733e hook: flush stdout before restoring stderr redirection
Yuya Nishihara <yuya@tcha.org>
parents: 30234
diff changeset
   532
  remote: KABOOM IN PROCESS
22247
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   533
  local stdout
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   534
25338
405303df6a2a ssh: test some no-op pull through ssh with --debug
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25127
diff changeset
   535
debug output
405303df6a2a ssh: test some no-op pull through ssh with --debug
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25127
diff changeset
   536
35699
f7ef49e44d7c sshpeer: add support for request tracing
Boris Feld <boris.feld@octobus.net>
parents: 35484
diff changeset
   537
  $ hg pull --debug ssh://user@dummy/remote --config devel.debug.peer-request=yes
25338
405303df6a2a ssh: test some no-op pull through ssh with --debug
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25127
diff changeset
   538
  pulling from ssh://user@dummy/remote
33659
8cb9e921ef8c ssh: quote parameters using shellquote (SEC)
Jun Wu <quark@fb.com>
parents: 33335
diff changeset
   539
  running .* ".*/dummyssh" ['"]user@dummy['"] ('|")hg -R remote serve --stdio('|") (re)
40176
41263df08109 wireprotov2: change how revisions are specified to changesetdata
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39840
diff changeset
   540
  sending upgrade request: * proto=exp-ssh-v2-0003 (glob) (sshv2 !)
37813
58bbd14b0c62 sshpeer: reflect actual command activity one handshake
Boris Feld <boris.feld@octobus.net>
parents: 37413
diff changeset
   541
  devel-peer-request: hello+between
58bbd14b0c62 sshpeer: reflect actual command activity one handshake
Boris Feld <boris.feld@octobus.net>
parents: 37413
diff changeset
   542
  devel-peer-request:   pairs: 81 bytes
25338
405303df6a2a ssh: test some no-op pull through ssh with --debug
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25127
diff changeset
   543
  sending hello command
405303df6a2a ssh: test some no-op pull through ssh with --debug
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25127
diff changeset
   544
  sending between command
46884
cc3ad5c3af3b persistent-nodemap: enable the feature by default when using Rust
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46874
diff changeset
   545
  remote: 444 (sshv1 no-rust !)
cc3ad5c3af3b persistent-nodemap: enable the feature by default when using Rust
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46874
diff changeset
   546
  remote: 463 (sshv1 rust !)
40176
41263df08109 wireprotov2: change how revisions are specified to changesetdata
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39840
diff changeset
   547
  protocol upgraded to exp-ssh-v2-0003 (sshv2 !)
46884
cc3ad5c3af3b persistent-nodemap: enable the feature by default when using Rust
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46874
diff changeset
   548
  remote: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1,sparserevlog unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash (no-rust !)
cc3ad5c3af3b persistent-nodemap: enable the feature by default when using Rust
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46874
diff changeset
   549
  remote: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,persistent-nodemap,revlogv1,sparserevlog unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash (rust !)
36217
1ee1a42bfdae tests: test using both versions of SSH protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35792
diff changeset
   550
  remote: 1 (sshv1 !)
37393
afcfdf53e4b5 wireproto: provide accessors for client capabilities
Joerg Sonnenberger <joerg@bec.de>
parents: 37349
diff changeset
   551
  devel-peer-request: protocaps
afcfdf53e4b5 wireproto: provide accessors for client capabilities
Joerg Sonnenberger <joerg@bec.de>
parents: 37349
diff changeset
   552
  devel-peer-request:   caps: * bytes (glob)
afcfdf53e4b5 wireproto: provide accessors for client capabilities
Joerg Sonnenberger <joerg@bec.de>
parents: 37349
diff changeset
   553
  sending protocaps command
25338
405303df6a2a ssh: test some no-op pull through ssh with --debug
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25127
diff changeset
   554
  query 1; heads
36945
4901d1e22b27 peer-request: include more details about batch commands
Boris Feld <boris.feld@octobus.net>
parents: 36612
diff changeset
   555
  devel-peer-request: batched-content
4901d1e22b27 peer-request: include more details about batch commands
Boris Feld <boris.feld@octobus.net>
parents: 36612
diff changeset
   556
  devel-peer-request:    - heads (0 arguments)
4901d1e22b27 peer-request: include more details about batch commands
Boris Feld <boris.feld@octobus.net>
parents: 36612
diff changeset
   557
  devel-peer-request:    - known (1 arguments)
35699
f7ef49e44d7c sshpeer: add support for request tracing
Boris Feld <boris.feld@octobus.net>
parents: 35484
diff changeset
   558
  devel-peer-request: batch
f7ef49e44d7c sshpeer: add support for request tracing
Boris Feld <boris.feld@octobus.net>
parents: 35484
diff changeset
   559
  devel-peer-request:   cmds: 141 bytes
25338
405303df6a2a ssh: test some no-op pull through ssh with --debug
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25127
diff changeset
   560
  sending batch command
405303df6a2a ssh: test some no-op pull through ssh with --debug
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25127
diff changeset
   561
  searching for changes
405303df6a2a ssh: test some no-op pull through ssh with --debug
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25127
diff changeset
   562
  all remote heads known locally
405303df6a2a ssh: test some no-op pull through ssh with --debug
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25127
diff changeset
   563
  no changes found
35699
f7ef49e44d7c sshpeer: add support for request tracing
Boris Feld <boris.feld@octobus.net>
parents: 35484
diff changeset
   564
  devel-peer-request: getbundle
f7ef49e44d7c sshpeer: add support for request tracing
Boris Feld <boris.feld@octobus.net>
parents: 35484
diff changeset
   565
  devel-peer-request:   bookmarks: 1 bytes
46633
7015b0232c5e exchange: stop advertising rev-branch-cache bundle capability
Joerg Sonnenberger <joerg@bec.de>
parents: 46314
diff changeset
   566
  devel-peer-request:   bundlecaps: 270 bytes
35699
f7ef49e44d7c sshpeer: add support for request tracing
Boris Feld <boris.feld@octobus.net>
parents: 35484
diff changeset
   567
  devel-peer-request:   cg: 1 bytes
f7ef49e44d7c sshpeer: add support for request tracing
Boris Feld <boris.feld@octobus.net>
parents: 35484
diff changeset
   568
  devel-peer-request:   common: 122 bytes
f7ef49e44d7c sshpeer: add support for request tracing
Boris Feld <boris.feld@octobus.net>
parents: 35484
diff changeset
   569
  devel-peer-request:   heads: 122 bytes
f7ef49e44d7c sshpeer: add support for request tracing
Boris Feld <boris.feld@octobus.net>
parents: 35484
diff changeset
   570
  devel-peer-request:   listkeys: 9 bytes
f7ef49e44d7c sshpeer: add support for request tracing
Boris Feld <boris.feld@octobus.net>
parents: 35484
diff changeset
   571
  devel-peer-request:   phases: 1 bytes
25376
2c14ab597353 test: use bundle2 in test-ssh
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25367
diff changeset
   572
  sending getbundle command
2c14ab597353 test: use bundle2 in test-ssh
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25367
diff changeset
   573
  bundle2-input-bundle: with-transaction
35268
44b8b5ad30eb pull: retrieve bookmarks through the binary part when possible
Boris Feld <boris.feld@octobus.net>
parents: 35259
diff changeset
   574
  bundle2-input-part: "bookmarks" supported
44b8b5ad30eb pull: retrieve bookmarks through the binary part when possible
Boris Feld <boris.feld@octobus.net>
parents: 35259
diff changeset
   575
  bundle2-input-part: total payload size 26
25376
2c14ab597353 test: use bundle2 in test-ssh
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25367
diff changeset
   576
  bundle2-input-part: "listkeys" (params: 1 mandatory) supported
2c14ab597353 test: use bundle2 in test-ssh
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25367
diff changeset
   577
  bundle2-input-part: total payload size 45
34322
10e162bb9bf5 pull: use 'phase-heads' to retrieve phase information
Boris Feld <boris.feld@octobus.net>
parents: 33659
diff changeset
   578
  bundle2-input-part: "phase-heads" supported
10e162bb9bf5 pull: use 'phase-heads' to retrieve phase information
Boris Feld <boris.feld@octobus.net>
parents: 33659
diff changeset
   579
  bundle2-input-part: total payload size 72
42931
181ee2118a96 bundle2: fix an off-by-one in debug message of number of parts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42897
diff changeset
   580
  bundle2-input-bundle: 3 parts total
25376
2c14ab597353 test: use bundle2 in test-ssh
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25367
diff changeset
   581
  checking for updated bookmarks
25338
405303df6a2a ssh: test some no-op pull through ssh with --debug
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25127
diff changeset
   582
40269
52b773f5e9a4 tests: replace `cd ..` with an absolute path in a couple ssh tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 40176
diff changeset
   583
  $ cd $TESTTMP
22247
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   584
12414
858fe1e74785 tests: unify test-ssh
Matt Mackall <mpm@selenic.com>
parents: 12409
diff changeset
   585
  $ cat dummylog
15622
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
   586
  Got arguments 1:user@dummy 2:hg -R nonexistent serve --stdio
44859
15e26cc0e2c6 sshpeer: add test showing that -q silences remote errors
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 44614
diff changeset
   587
  Got arguments 1:user@dummy 2:hg -R nonexistent serve --stdio
26141
fa6ba7c9600b test-ssh: remove superfluous triple slashes from absolute path test
Yuya Nishihara <yuya@tcha.org>
parents: 25495
diff changeset
   588
  Got arguments 1:user@dummy 2:hg -R $TESTTMP/nonexistent serve --stdio
15622
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
   589
  Got arguments 1:user@dummy 2:hg -R remote serve --stdio
37349
36b2a304216c tests: disable tests for advanced clone features with simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37330
diff changeset
   590
  Got arguments 1:user@dummy 2:hg -R local-stream serve --stdio (no-reposimplestore !)
36b2a304216c tests: disable tests for advanced clone features with simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37330
diff changeset
   591
  Got arguments 1:user@dummy 2:hg -R remote serve --stdio (no-reposimplestore !)
36b2a304216c tests: disable tests for advanced clone features with simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37330
diff changeset
   592
  Got arguments 1:user@dummy 2:hg -R remote serve --stdio (no-reposimplestore !)
24138
eabe44ec5af5 pull: print "pulling from foo" before accessing the other repo
Thomas Arendsen Hein <thomas@intevation.de>
parents: 23416
diff changeset
   593
  Got arguments 1:user@dummy 2:hg -R doesnotexist serve --stdio
15622
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
   594
  Got arguments 1:user@dummy 2:hg -R remote serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
   595
  Got arguments 1:user@dummy 2:hg -R local serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
   596
  Got arguments 1:user@dummy 2:hg -R $TESTTMP/local serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
   597
  Got arguments 1:user@dummy 2:hg -R remote serve --stdio
41644
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   598
  changegroup-in-remote hook: HG_BUNDLE2=1
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   599
  HG_HOOKNAME=changegroup
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   600
  HG_HOOKTYPE=changegroup
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   601
  HG_NODE=a28a9d1a809cab7d4e2fde4bee738a9ede948b60
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   602
  HG_NODE_LAST=a28a9d1a809cab7d4e2fde4bee738a9ede948b60
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   603
  HG_SOURCE=serve
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   604
  HG_TXNID=TXN:$ID$
41896
94faa2e84094 transaction: include txnname in the hookargs dictionary
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41644
diff changeset
   605
  HG_TXNNAME=serve
41644
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   606
  HG_URL=remote:ssh:$LOCALIP
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   607
  
15622
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
   608
  Got arguments 1:user@dummy 2:hg -R remote serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
   609
  Got arguments 1:user@dummy 2:hg -R remote serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
   610
  Got arguments 1:user@dummy 2:hg -R remote serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
   611
  Got arguments 1:user@dummy 2:hg -R remote serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
   612
  Got arguments 1:user@dummy 2:hg -R remote serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
   613
  Got arguments 1:user@dummy 2:hg -R remote serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
   614
  Got arguments 1:user@dummy 2:hg -R remote serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
   615
  Got arguments 1:user@dummy 2:hg -R remote serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
   616
  Got arguments 1:user@dummy 2:hg -R remote serve --stdio
41644
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   617
  changegroup-in-remote hook: HG_BUNDLE2=1
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   618
  HG_HOOKNAME=changegroup
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   619
  HG_HOOKTYPE=changegroup
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   620
  HG_NODE=1383141674ec756a6056f6a9097618482fe0f4a6
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   621
  HG_NODE_LAST=1383141674ec756a6056f6a9097618482fe0f4a6
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   622
  HG_SOURCE=serve
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   623
  HG_TXNID=TXN:$ID$
41896
94faa2e84094 transaction: include txnname in the hookargs dictionary
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41644
diff changeset
   624
  HG_TXNNAME=serve
41644
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   625
  HG_URL=remote:ssh:$LOCALIP
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   626
  
39806
0ad5f064d829 test-ssh: show that stdio redirection doesn't work with chg
Yuya Nishihara <yuya@tcha.org>
parents: 38170
diff changeset
   627
  Got arguments 1:user@dummy 2:chg -R remote serve --stdio (chg !)
41644
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   628
  changegroup-in-remote hook: HG_BUNDLE2=1 (chg !)
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   629
  HG_HOOKNAME=changegroup (chg !)
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   630
  HG_HOOKTYPE=changegroup (chg !)
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   631
  HG_NODE=1383141674ec756a6056f6a9097618482fe0f4a6 (chg !)
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   632
  HG_NODE_LAST=1383141674ec756a6056f6a9097618482fe0f4a6 (chg !)
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   633
  HG_SOURCE=serve (chg !)
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   634
  HG_TXNID=TXN:$ID$ (chg !)
41896
94faa2e84094 transaction: include txnname in the hookargs dictionary
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41644
diff changeset
   635
  HG_TXNNAME=serve (chg !)
41644
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   636
  HG_URL=remote:ssh:$LOCALIP (chg !)
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   637
   (chg !)
15622
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
   638
  Got arguments 1:user@dummy 2:hg -R remote serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
   639
  Got arguments 1:user@dummy 2:hg init 'a repo'
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
   640
  Got arguments 1:user@dummy 2:hg -R 'a repo' serve --stdio
86fc364ca5f8 sshrepo: don't quote obviously safe strings (issue2983)
Mads Kiilerich <mads@kiilerich.com>
parents: 15581
diff changeset
   641
  Got arguments 1:user@dummy 2:hg -R 'a repo' serve --stdio
17844
b32e55e6c3c7 clone: don't %-escape the default destination (issue3145)
Matt Mackall <mpm@selenic.com>
parents: 17298
diff changeset
   642
  Got arguments 1:user@dummy 2:hg -R 'a repo' serve --stdio
21188
d36440d84328 httppeer: reintroduce _abort that accidentally was removed in 167047ba3cfa
Mads Kiilerich <madski@unity3d.com>
parents: 20501
diff changeset
   643
  Got arguments 1:user@dummy 2:hg -R 'a repo' serve --stdio
22247
8341c677c204 test-ssh: verify that stderr from remote is printed (issue4336)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21188
diff changeset
   644
  Got arguments 1:user@dummy 2:hg -R remote serve --stdio
41644
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   645
  changegroup-in-remote hook: HG_BUNDLE2=1
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   646
  HG_HOOKNAME=changegroup
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   647
  HG_HOOKTYPE=changegroup
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   648
  HG_NODE=65c38f4125f9602c8db4af56530cc221d93b8ef8
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   649
  HG_NODE_LAST=65c38f4125f9602c8db4af56530cc221d93b8ef8
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   650
  HG_SOURCE=serve
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   651
  HG_TXNID=TXN:$ID$
41896
94faa2e84094 transaction: include txnname in the hookargs dictionary
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41644
diff changeset
   652
  HG_TXNNAME=serve
41644
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   653
  HG_URL=remote:ssh:$LOCALIP
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   654
  
25338
405303df6a2a ssh: test some no-op pull through ssh with --debug
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25127
diff changeset
   655
  Got arguments 1:user@dummy 2:hg -R remote serve --stdio
26828
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   656
41644
9a8d41fa919e test: use `printenv.py --line` in `test-ssh.t`
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
   657
26828
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   658
remote hook failure is attributed to remote
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   659
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   660
  $ cat > $TESTTMP/failhook << EOF
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   661
  > def hook(ui, repo, **kwargs):
38108
e69628f36196 py3: add b'' prefixes in tests/test-ssh.t and tests/test-ssh-bundle1.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 37943
diff changeset
   662
  >     ui.write(b'hook failure!\n')
26828
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   663
  >     ui.flush()
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   664
  >     return 1
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   665
  > EOF
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   666
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   667
  $ echo "pretxnchangegroup.fail = python:$TESTTMP/failhook:hook" >> remote/.hg/hgrc
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   668
33335
72f051f9a7d8 tests: quote $PYTHON for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 33286
diff changeset
   669
  $ hg -q --config ui.ssh="\"$PYTHON\" $TESTDIR/dummyssh" clone ssh://user@dummy/remote hookout
26828
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   670
  $ cd hookout
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   671
  $ touch hookfailure
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   672
  $ hg -q commit -A -m 'remote hook failure'
33335
72f051f9a7d8 tests: quote $PYTHON for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 33286
diff changeset
   673
  $ hg --config ui.ssh="\"$PYTHON\" $TESTDIR/dummyssh" push
26828
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   674
  pushing to ssh://user@dummy/remote
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   675
  searching for changes
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   676
  remote: adding changesets
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   677
  remote: adding manifests
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   678
  remote: adding file changes
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   679
  remote: hook failure!
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   680
  remote: transaction abort!
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   681
  remote: rollback completed
26829
58f1645f72c3 bundle2: attribute remote failures to remote (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26828
diff changeset
   682
  remote: pretxnchangegroup.fail hook failed
58f1645f72c3 bundle2: attribute remote failures to remote (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26828
diff changeset
   683
  abort: push failed on remote
46977
3f87d2af0bd6 errors: raise RemoteError in some places in exchange.py
Martin von Zweigbergk <martinvonz@google.com>
parents: 46884
diff changeset
   684
  [100]
26828
00e75baa810f tests: add tests for remote hook output (issue4788)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26142
diff changeset
   685
30914
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30563
diff changeset
   686
abort during pull is properly reported as such
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30563
diff changeset
   687
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30563
diff changeset
   688
  $ echo morefoo >> ../remote/foo
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30563
diff changeset
   689
  $ hg -R ../remote commit --message "more foo to be pulled"
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30563
diff changeset
   690
  $ cat >> ../remote/.hg/hgrc << EOF
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30563
diff changeset
   691
  > [extensions]
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30563
diff changeset
   692
  > crash = ${TESTDIR}/crashgetbundler.py
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30563
diff changeset
   693
  > EOF
33335
72f051f9a7d8 tests: quote $PYTHON for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 33286
diff changeset
   694
  $ hg --config ui.ssh="\"$PYTHON\" $TESTDIR/dummyssh" pull
30914
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30563
diff changeset
   695
  pulling from ssh://user@dummy/remote
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30563
diff changeset
   696
  searching for changes
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30563
diff changeset
   697
  remote: abort: this is an exercise
f3807a135e43 wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30563
diff changeset
   698
  abort: pull failed on remote
46977
3f87d2af0bd6 errors: raise RemoteError in some places in exchange.py
Martin von Zweigbergk <martinvonz@google.com>
parents: 46884
diff changeset
   699
  [100]
35108
8b1c887d52e7 sshpeer: add a configurable hint for the ssh error message
Zuzanna Mroczek <zuza@fb.com>
parents: 35074
diff changeset
   700
8b1c887d52e7 sshpeer: add a configurable hint for the ssh error message
Zuzanna Mroczek <zuza@fb.com>
parents: 35074
diff changeset
   701
abort with no error hint when there is a ssh problem when pulling
8b1c887d52e7 sshpeer: add a configurable hint for the ssh error message
Zuzanna Mroczek <zuza@fb.com>
parents: 35074
diff changeset
   702
35180
3180ff7f6025 test-ssh: do not actually look up "brokenrepository" by DNS
Yuya Nishihara <yuya@tcha.org>
parents: 35108
diff changeset
   703
  $ hg pull ssh://brokenrepository -e "\"$PYTHON\" \"$TESTDIR/dummyssh\""
35108
8b1c887d52e7 sshpeer: add a configurable hint for the ssh error message
Zuzanna Mroczek <zuza@fb.com>
parents: 35074
diff changeset
   704
  pulling from ssh://brokenrepository/
45906
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45847
diff changeset
   705
  abort: no suitable response from remote hg
35108
8b1c887d52e7 sshpeer: add a configurable hint for the ssh error message
Zuzanna Mroczek <zuza@fb.com>
parents: 35074
diff changeset
   706
  [255]
8b1c887d52e7 sshpeer: add a configurable hint for the ssh error message
Zuzanna Mroczek <zuza@fb.com>
parents: 35074
diff changeset
   707
8b1c887d52e7 sshpeer: add a configurable hint for the ssh error message
Zuzanna Mroczek <zuza@fb.com>
parents: 35074
diff changeset
   708
abort with configured error hint when there is a ssh problem when pulling
8b1c887d52e7 sshpeer: add a configurable hint for the ssh error message
Zuzanna Mroczek <zuza@fb.com>
parents: 35074
diff changeset
   709
35180
3180ff7f6025 test-ssh: do not actually look up "brokenrepository" by DNS
Yuya Nishihara <yuya@tcha.org>
parents: 35108
diff changeset
   710
  $ hg pull ssh://brokenrepository -e "\"$PYTHON\" \"$TESTDIR/dummyssh\"" \
3180ff7f6025 test-ssh: do not actually look up "brokenrepository" by DNS
Yuya Nishihara <yuya@tcha.org>
parents: 35108
diff changeset
   711
  > --config ui.ssherrorhint="Please see http://company/internalwiki/ssh.html"
35108
8b1c887d52e7 sshpeer: add a configurable hint for the ssh error message
Zuzanna Mroczek <zuza@fb.com>
parents: 35074
diff changeset
   712
  pulling from ssh://brokenrepository/
45906
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45847
diff changeset
   713
  abort: no suitable response from remote hg
35108
8b1c887d52e7 sshpeer: add a configurable hint for the ssh error message
Zuzanna Mroczek <zuza@fb.com>
parents: 35074
diff changeset
   714
  (Please see http://company/internalwiki/ssh.html)
8b1c887d52e7 sshpeer: add a configurable hint for the ssh error message
Zuzanna Mroczek <zuza@fb.com>
parents: 35074
diff changeset
   715
  [255]
35436
31d21309635b sshpeer: allow for additional environment passing to ssh exe
Kostia Balytskyi <ikostia@fb.com>
parents: 35393
diff changeset
   716
31d21309635b sshpeer: allow for additional environment passing to ssh exe
Kostia Balytskyi <ikostia@fb.com>
parents: 35393
diff changeset
   717
test that custom environment is passed down to ssh executable
31d21309635b sshpeer: allow for additional environment passing to ssh exe
Kostia Balytskyi <ikostia@fb.com>
parents: 35393
diff changeset
   718
  $ cat >>dumpenv <<EOF
31d21309635b sshpeer: allow for additional environment passing to ssh exe
Kostia Balytskyi <ikostia@fb.com>
parents: 35393
diff changeset
   719
  > #! /bin/sh
31d21309635b sshpeer: allow for additional environment passing to ssh exe
Kostia Balytskyi <ikostia@fb.com>
parents: 35393
diff changeset
   720
  > echo \$VAR >&2
31d21309635b sshpeer: allow for additional environment passing to ssh exe
Kostia Balytskyi <ikostia@fb.com>
parents: 35393
diff changeset
   721
  > EOF
31d21309635b sshpeer: allow for additional environment passing to ssh exe
Kostia Balytskyi <ikostia@fb.com>
parents: 35393
diff changeset
   722
  $ chmod +x dumpenv
35484
1853c8677160 test-ssh: stabilize for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 35436
diff changeset
   723
  $ hg pull ssh://something --config ui.ssh="sh dumpenv"
35436
31d21309635b sshpeer: allow for additional environment passing to ssh exe
Kostia Balytskyi <ikostia@fb.com>
parents: 35393
diff changeset
   724
  pulling from ssh://something/
31d21309635b sshpeer: allow for additional environment passing to ssh exe
Kostia Balytskyi <ikostia@fb.com>
parents: 35393
diff changeset
   725
  remote: 
45906
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45847
diff changeset
   726
  abort: no suitable response from remote hg
35436
31d21309635b sshpeer: allow for additional environment passing to ssh exe
Kostia Balytskyi <ikostia@fb.com>
parents: 35393
diff changeset
   727
  [255]
35484
1853c8677160 test-ssh: stabilize for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 35436
diff changeset
   728
  $ hg pull ssh://something --config ui.ssh="sh dumpenv" --config sshenv.VAR=17
35436
31d21309635b sshpeer: allow for additional environment passing to ssh exe
Kostia Balytskyi <ikostia@fb.com>
parents: 35393
diff changeset
   729
  pulling from ssh://something/
31d21309635b sshpeer: allow for additional environment passing to ssh exe
Kostia Balytskyi <ikostia@fb.com>
parents: 35393
diff changeset
   730
  remote: 17
45906
95c4cca641f6 errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents: 45847
diff changeset
   731
  abort: no suitable response from remote hg
35436
31d21309635b sshpeer: allow for additional environment passing to ssh exe
Kostia Balytskyi <ikostia@fb.com>
parents: 35393
diff changeset
   732
  [255]
31d21309635b sshpeer: allow for additional environment passing to ssh exe
Kostia Balytskyi <ikostia@fb.com>
parents: 35393
diff changeset
   733