view contrib/hammerclient.py @ 5560:b31cd9ee890a

evolve: add some initial values in evolvestate This patch adds two values in evolvestate: evolvestate['relocate-div'] = False evolvestate['relocate-other'] = False which will be used by resolution of content-divergence as a flag to know if we need to relocate the divergent changesets. In upcoming patches we will remove the logic of swapping divergent/other (we do this swapping when divergent need to relocate) as this doesn't seems something solid we can rely on.
author Sushil khanchi <sushilkhanchi97@gmail.com>
date Wed, 05 Aug 2020 14:25:29 +0530
parents f97379faefa3
children
line wrap: on
line source

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

if len(sys.argv) < 2:
    execname = os.path.basename(sys.argv[0])
    sys.stderr.write("usage: %s CLIENT_ID\n" % 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'])