sapling/eden/scm/tests/test-fb-hgext-smartlog-smallcommitmetadata.t
Liubov Dmitrieva c5328d9d0e move some operations under read path
Summary:
Move some commit cloud operations under infinitepush read path:

those are:
*  `hg cloud check` command
*  `hg cloud sync` command when the local repo is clean
* `hg cloud switch` command will normally use the read path for the dest workspace because we clean up the repo before performing the switch
*  `hg cloud rejoin` command we use in fbclone will normally go through the read path as it runs in a fresh repo

If something is broken, there is always a way to rerun any of these command with '--dest' flag pointing it to the write path.

```
./hg cloud check -r 0c9596fd1 --remote --dest infinitepush-write
./hg cloud sync --dest infinitepush-write
./hg cloud switch -w other --dest infinitepush-write
```

Those use cases are limited and the lag of forward filler shouldn't be noticeable for them but we will be able to collect more signal how Mononoke performs with Commit Cloud.

Sitevar to control the routing of read traffic:
https://www.internalfb.com/intern/sv/HG_SSH_WRAPPER_MONONOKE_ROLLOUT/#revisions_list

Reviewed By: mitrandir77

Differential Revision: D23840914

fbshipit-source-id: 40fbe2e72756e7a4cf8bc5be6a0b94f6cf4906b4
2020-09-23 08:42:13 -07:00

49 lines
1.6 KiB
Perl

#require py2
$ configure modern
$ enable smartlog
$ newserver master
$ cat >> .hg/hgrc <<EOF
> [alias]
> sl = smartlog -T '{sl}'
> [templatealias]
> sl_stablecommit = "{label('sl.stablecommit', smallcommitmeta('arcpull_stable'))}"
> sl_hash_minlen = 8
> sl_phase_label = "{ifeq(phase, 'public', 'sl.public', 'sl.draft')}"
> sl_node = "{label(sl_phase_label, shortest(node, sl_hash_minlen))}"
> sl = "{label('sl.label', separate('\n', sl_node, sl_stablecommit, '\n'))}"
> EOF
$ hg debugsmallcommitmetadata
Found the following entries:
$ echo "a" > a ; hg add a ; hg commit -qAm a
$ echo "b" > b ; hg add b ; hg commit -qAm b
$ echo "c" > c ; hg add c ; hg commit -qAm c
Add some metadata
$ hg debugsmallcommitmetadata -r cb9a9f314b8b -c arcpull_stable stable
$ hg debugsmallcommitmetadata -r d2ae7f538514 -c bcategory bvalue
$ hg debugsmallcommitmetadata -r 177f92b77385 -c ccategory cvalue
$ hg debugsmallcommitmetadata
Found the following entries:
cb9a9f314b8b arcpull_stable: 'stable'
d2ae7f538514 bcategory: 'bvalue'
177f92b77385 ccategory: 'cvalue'
Verify smartlog shows only the configured data
$ hg debugsmallcommitmetadata
Found the following entries:
cb9a9f314b8b arcpull_stable: 'stable'
d2ae7f538514 bcategory: 'bvalue'
177f92b77385 ccategory: 'cvalue'
$ hg sl
@ 177f92b7
|
o d2ae7f53
|
o cb9a9f31
stable
note: background backup is currently disabled so your commits are not being backed up.
abort: none of 'infinitepushwrite', 'infinitepush', 'default' repositories configured!
(see 'hg help config.paths')
[255]