# HG changeset patch # User Nicolas Dumazet # Date 2009-12-01 02:28:31 # Node ID 2bfe1a23dafa31701ce1946ba339480d8a5b1fdd # Parent a9836feb5a8cec57d4ac30583d6637a3b219da87 cmdutil: service: add appendpid parameter to append pids to pid file diff --git a/mercurial/cmdutil.py b/mercurial/cmdutil.py --- a/mercurial/cmdutil.py +++ b/mercurial/cmdutil.py @@ -558,7 +558,7 @@ def copy(ui, repo, pats, opts, rename=Fa return errors def service(opts, parentfn=None, initfn=None, runfn=None, logfile=None, - runargs=None): + runargs=None, appendpid=False): '''Run a command as a service.''' if opts['daemon'] and not opts['daemon_pipefds']: @@ -588,7 +588,8 @@ def service(opts, parentfn=None, initfn= initfn() if opts['pid_file']: - fp = open(opts['pid_file'], 'w') + mode = appendpid and 'a' or 'w' + fp = open(opts['pid_file'], mode) fp.write(str(os.getpid()) + '\n') fp.close()