mirror of
https://github.com/facebook/sapling.git
synced 2024-10-16 19:57:18 +03:00
4a7b28d08b
Summary: Previously `hg server` uses `HGPORT` that might be in use. This patch uses `-p 0 --port-file ...` so `hg server` always gets assigned a free port. The change was first made by the following Ruby script: ``` re = /^ \$ hg serve(.*) -p \$(HGPORT[12]?) (.*[^\\])$\n \$/ Dir['*.t'].each do |path| old = File.read(path) new = old.lines.map do |l| next l if l[/\(glob\)/] or not l['$HGPORT'] or l[/^ [$>]/] "#{l.chomp} (glob)\n" end.join.gsub re, <<-'EOS'.chomp $ hg serve\1 -p 0 --port-file $TESTTMP/.port \3 $ \2=`cat $TESTTMP/.port` $ EOS File.write(path, new) if old != new end ``` Then there are some manual changes: run-tests.py: It now treats `$HGPORT` in output as glob pattern `*`, since it does not know the assigned value in tests. test-bookmarks-pushpull.t, test-https.t: Some `hg pull`s were changed to use explicit paths instead of relying on `.hgrc` since the test restarts the server and `.hg/hgrc` having an outdated URL. test-schemes.t: The test writes `$HGPORT` to `.hgrc` before assigning it. Changed the order so the correct `$HGPORT` is written. test-patchbomb-tls.t: Changed `(?) (glob)` to `(glob) (?)`. Reviewed By: DurhamG Differential Revision: D6925398 fbshipit-source-id: d5c10476f43ce23f9e99618807580cf8ba92595c
56 lines
1.4 KiB
Perl
56 lines
1.4 KiB
Perl
$ echo "[extensions]" >> $HGRCPATH
|
|
$ echo "remotenames=" >> $HGRCPATH
|
|
$ hg init test
|
|
$ cd test
|
|
$ echo foo>foo
|
|
$ mkdir foo.d foo.d/bAr.hg.d foo.d/baR.d.hg
|
|
$ echo foo>foo.d/foo
|
|
$ echo bar>foo.d/bAr.hg.d/BaR
|
|
$ echo bar>foo.d/baR.d.hg/bAR
|
|
$ hg commit -A -m 1
|
|
adding foo
|
|
adding foo.d/bAr.hg.d/BaR
|
|
adding foo.d/baR.d.hg/bAR
|
|
adding foo.d/foo
|
|
$ hg serve -p 0 --port-file $TESTTMP/.port -d --pid-file=../hg.pid
|
|
$ HGPORT=`cat $TESTTMP/.port`
|
|
$ cd ..
|
|
$ cat hg.pid >> $DAEMON_PIDS
|
|
|
|
clone
|
|
$ hg clone http://localhost:$HGPORT/ copy 2>&1
|
|
requesting all changes
|
|
adding changesets
|
|
adding manifests
|
|
adding file changes
|
|
added 1 changesets with 4 changes to 4 files
|
|
new changesets 8b6053c928fe
|
|
updating to branch default
|
|
4 files updated, 0 files merged, 0 files removed, 0 files unresolved
|
|
|
|
$ cd copy
|
|
|
|
add a commit to the clone
|
|
$ echo alpha > alpha
|
|
$ hg add alpha
|
|
$ hg ci -m 'add alpha'
|
|
|
|
verify that the branchheads are stored properly
|
|
$ hg pull
|
|
pulling from http://localhost:$HGPORT/ (glob)
|
|
searching for changes
|
|
no changes found
|
|
$ hg log --graph
|
|
@ changeset: 1:610fbbf9c9f6
|
|
| tag: tip
|
|
| user: test
|
|
| date: Thu Jan 01 00:00:00 1970 +0000
|
|
| summary: add alpha
|
|
|
|
|
o changeset: 0:8b6053c928fe
|
|
branch: default/default
|
|
user: test
|
|
date: Thu Jan 01 00:00:00 1970 +0000
|
|
summary: 1
|
|
|