contrib/hammerclient.py
author Sushil khanchi <sushilkhanchi97@gmail.com>
Sat, 02 Mar 2019 01:43:14 +0530
branchstable
changeset 4410 8087e9a0f902
parent 4003 518e04284921
child 4809 f97379faefa3
permissions -rwxr-xr-x
split: make sure hg split preserve the phase of splitting cset (issue6048) Before this patch, while splitting we were not taking the phase of splitting cset into account. By default new commits would have draft changes. As we know there can two possible phases i.e draft and secret in rewriting csets thing, so this adds the handling of secret phase (as default is draft) Changes in test file reflect the added behaviour.

#!/usr/bin/env python
import os
import sys
import subprocess

if len(sys.argv) < 2:
    execname = os.path.basename(sys.argv[0])
    print >> sys.stderr, "usage: %s CLIENT_ID" % execname

client_id = sys.argv[1]

subprocess.check_call(['hg', 'branch', "--force", "hammer-branch-%s" % client_id])

while True:
    subprocess.check_call([
        'hg', 'commit',
        "--config", "ui.allowemptycommit=yes",
        "--message", "hammer-%s" % client_id,
    ])
    nodeid = subprocess.check_output([
        'hg', 'log', '--rev', '.', '--template', '{node}'
    ])
    subprocess.check_call([
        'hg', 'debugobsolete', ''.join(reversed(nodeid)), nodeid
    ])
    subprocess.check_call(['hg', 'pull'])
    subprocess.check_call(['hg', 'push', '--force'])