def main(): parser = argparse.ArgumentParser( formatter_class=argparse.RawDescriptionHelpFormatter, description=__doc__, epilog=_USAGE_EXAMPLES ) subparsers = parser.add_subparsers() phlsys_subcommand.setup_parser("gc", barcmd_gc, subparsers) args = parser.parse_args() return args.func(args)
def main(): parser = argparse.ArgumentParser( formatter_class=argparse.RawDescriptionHelpFormatter, description=__doc__, epilog=_USAGE_EXAMPLES) subparsers = parser.add_subparsers() phlsys_subcommand.setup_parser( "gc", barcmd_gc, subparsers) phlsys_subcommand.setup_parser( "list", barcmd_list, subparsers) args = parser.parse_args() return args.func(args)
def main(): parser = argparse.ArgumentParser( formatter_class=argparse.RawDescriptionHelpFormatter, description=__doc__, epilog=_USAGE_EXAMPLES) subparsers = parser.add_subparsers() phlsys_subcommand.setup_parser( "process-repos", abdcmd_processrepos, subparsers) phlsys_subcommand.setup_parser( "arcyd-status-html", abdcmd_arcydstatushtml, subparsers) phlsys_subcommand.setup_parser( "repo-status-html", abdcmd_repostatushtml, subparsers) phlsys_subcommand.setup_parser( "dev-status-html", abdcmd_devstatushtml, subparsers) phlsys_subcommand.setup_parser( "instaweb", abdcmd_instaweb, subparsers) args = parser.parse_args() args.func(args)
def main(): parser = argparse.ArgumentParser( formatter_class=argparse.RawDescriptionHelpFormatter, description=__doc__, epilog=_USAGE_EXAMPLES) subparsers = parser.add_subparsers() phlsys_subcommand.setup_parser( "show-config", aoncmd_showconfig, subparsers) phlsys_subcommand.setup_parser("query", aoncmd_query, subparsers) phlsys_subcommand.setup_parser("comment", aoncmd_comment, subparsers) phlsys_subcommand.setup_parser( "comment-inline", aoncmd_commentinline, subparsers) phlsys_subcommand.setup_parser("raw-diff", aoncmd_rawdiff, subparsers) phlsys_subcommand.setup_parser( "create-revision", aoncmd_createrevision, subparsers) phlsys_subcommand.setup_parser( "update-revision", aoncmd_updaterevision, subparsers) phlsys_subcommand.setup_parser("get-diff", aoncmd_getdiff, subparsers) phlsys_subcommand.setup_parser("paste", aoncmd_paste, subparsers) phlsys_subcommand.setup_parser( "task-create", aoncmd_taskcreate, subparsers) phlsys_subcommand.setup_parser( "task-update", aoncmd_taskupdate, subparsers) phlsys_subcommand.setup_parser( "task-query", aoncmd_taskquery, subparsers) phlsys_subcommand.setup_parser( "git-diff-helper", aoncmd_gitdiffhelper, subparsers) args = parser.parse_args() try: return args.func(args) except phlsys_makeconduit.InsufficientInfoException as e: print("ERROR - insufficient information") print(e) print() print("N.B. you may also specify uri, user or cert directly like so:") print(" --uri URI address of phabricator instance") print(" --user USERNAME username of user to connect as") print(" --cert CERTIFICATE certificate for user Phabrictor account") return 1
def main(): parser = argparse.ArgumentParser( formatter_class=argparse.RawDescriptionHelpFormatter, description=__doc__, epilog=_USAGE_EXAMPLES) subparsers = parser.add_subparsers() phlsys_subcommand.setup_parser("init", abdcmd_init, subparsers) phlsys_subcommand.setup_parser("list-repos", abdcmd_listrepos, subparsers) phlsys_subcommand.setup_parser("add-phabricator", abdcmd_addphabricator, subparsers) phlsys_subcommand.setup_parser("add-repohost", abdcmd_addrepohost, subparsers) phlsys_subcommand.setup_parser("add-repo", abdcmd_addrepo, subparsers) phlsys_subcommand.setup_parser("rm-repo", abdcmd_rmrepo, subparsers) phlsys_subcommand.setup_parser("start", abdcmd_start, subparsers) phlsys_subcommand.setup_parser("stop", abdcmd_stop, subparsers) phlsys_subcommand.setup_parser("restart", abdcmd_restart, subparsers) phlsys_subcommand.setup_parser("reload", abdcmd_reload, subparsers) phlsys_subcommand.setup_parser("fsck", abdcmd_fsck, subparsers) phlsys_subcommand.setup_parser("fetch", abdcmd_fetch, subparsers) args = parser.parse_args() return args.func(args)
def main(): parser = argparse.ArgumentParser( formatter_class=argparse.RawDescriptionHelpFormatter, description=__doc__, epilog=_USAGE_EXAMPLES) parser.add_argument( '--sys-admin-emails', metavar="EMAIL", nargs="+", type=str, required=True, help="email addresses to send important system events to") parser.add_argument( '--sendmail-binary', metavar="PROGRAM", type=str, default="sendmail", required=True, help="program to send the mail with (e.g. sendmail, catchmail)") parser.add_argument( '--sendmail-type', metavar="TYPE", type=str, default="sendmail", required=True, help="type of program to send the mail with (sendmail, catchmail), " "this will affect the parameters that Arycd will use.") subparsers = parser.add_subparsers() phlsys_subcommand.setup_parser("single", abdcmd_single, subparsers) phlsys_subcommand.setup_parser("multi", abdcmd_multi, subparsers) args = parser.parse_args() uname = str(platform.uname()) if args.sendmail_binary: phlsys_sendmail.Sendmail.set_default_binary( args.sendmail_binary) if args.sendmail_type: phlsys_sendmail.Sendmail.set_default_params_from_type( args.sendmail_type) mailsender = phlmail_sender.MailSender( phlsys_sendmail.Sendmail(), "arcyd@" + platform.node()) # exit if we're stopped by SIGTERM def HandleSigterm(unused1, unused2): # raises 'SystemExit' exception, which will allow us to clean up sys.exit(1) signal.signal(signal.SIGTERM, HandleSigterm) strToTime = phlsys_strtotime.duration_string_to_time_delta retry_delays = [strToTime(d) for d in ["10 minutes", "1 hours"]] emails = args.sys_admin_emails def msgException(delay): message = uname + "\n" + traceback.format_exc() message += "\nwill wait:" + str(delay) print message mailsender.send( subject="arcyd paused with exception", message=message, to_addresses=emails) try: args.func(args, retry_delays, msgException) except: message = uname + "\n" + traceback.format_exc() print message mailsender.send( subject="arcyd stopped with exception", message=message, to_addresses=emails) sys.exit(1) mailsender.send( subject="arcyd stopped", message="", to_addresses=args.sys_admin_emails)
def main(): parser = argparse.ArgumentParser( formatter_class=argparse.RawDescriptionHelpFormatter, description=__doc__, epilog=_USAGE_EXAMPLES) subparsers = parser.add_subparsers() phlsys_subcommand.setup_parser( "arcyd-status-html", abdcmd_arcydstatushtml, subparsers) phlsys_subcommand.setup_parser( "repo-status-html", abdcmd_repostatushtml, subparsers) phlsys_subcommand.setup_parser( "dev-status-html", abdcmd_devstatushtml, subparsers) phlsys_subcommand.setup_parser( "instaweb", abdcmd_instaweb, subparsers) phlsys_subcommand.setup_parser( "init", abdcmd_init, subparsers) phlsys_subcommand.setup_parser( "add-phabricator", abdcmd_addphabricator, subparsers) phlsys_subcommand.setup_parser( "add-repohost", abdcmd_addrepohost, subparsers) phlsys_subcommand.setup_parser( "add-repo", abdcmd_addrepo, subparsers) phlsys_subcommand.setup_parser( "start", abdcmd_start, subparsers) phlsys_subcommand.setup_parser( "stop", abdcmd_stop, subparsers) phlsys_subcommand.setup_parser( "fsck", abdcmd_fsck, subparsers) args = parser.parse_args() return args.func(args)
def main(): parser = argparse.ArgumentParser( formatter_class=argparse.RawDescriptionHelpFormatter, description=__doc__, epilog=_USAGE_EXAMPLES) subparsers = parser.add_subparsers() phlsys_subcommand.setup_parser("show-config", aoncmd_showconfig, subparsers) phlsys_subcommand.setup_parser("query", aoncmd_query, subparsers) phlsys_subcommand.setup_parser("comment", aoncmd_comment, subparsers) phlsys_subcommand.setup_parser("comment-inline", aoncmd_commentinline, subparsers) phlsys_subcommand.setup_parser("raw-diff", aoncmd_rawdiff, subparsers) phlsys_subcommand.setup_parser("create-revision", aoncmd_createrevision, subparsers) phlsys_subcommand.setup_parser("update-revision", aoncmd_updaterevision, subparsers) phlsys_subcommand.setup_parser("get-diff", aoncmd_getdiff, subparsers) phlsys_subcommand.setup_parser("paste", aoncmd_paste, subparsers) phlsys_subcommand.setup_parser("task-create", aoncmd_taskcreate, subparsers) phlsys_subcommand.setup_parser("task-update", aoncmd_taskupdate, subparsers) phlsys_subcommand.setup_parser("task-query", aoncmd_taskquery, subparsers) phlsys_subcommand.setup_parser("git-diff-helper", aoncmd_gitdiffhelper, subparsers) args = parser.parse_args() try: return args.func(args) except phlsys_conduit.ConduitException as e: # pychecker won't let us pass 'e' in as a keyword argument, so we # address it as parameter 0 instead fmt = ("ERROR ({0.error}): " "Phabricator {0.method} could not perform request:\n" "{0.errormsg}") message = fmt.format(e) print(message) print() return 1 except phlsys_makeconduit.InsufficientInfoException as e: print("ERROR - insufficient information") print(e) print() print("N.B. you may also specify uri, user or cert directly like so:") print(" --uri URI address of phabricator instance") print(" --user USERNAME username of user to connect as") print(" --cert CERTIFICATE certificate for user Phabrictor account") return 1
def main(): parser = argparse.ArgumentParser( formatter_class=argparse.RawDescriptionHelpFormatter, description=__doc__, epilog=_USAGE_EXAMPLES) subparsers = parser.add_subparsers() phlsys_subcommand.setup_parser( "init", abdcmd_init, subparsers) phlsys_subcommand.setup_parser( "list-repos", abdcmd_listrepos, subparsers) phlsys_subcommand.setup_parser( "add-phabricator", abdcmd_addphabricator, subparsers) phlsys_subcommand.setup_parser( "add-repohost", abdcmd_addrepohost, subparsers) phlsys_subcommand.setup_parser( "add-repo", abdcmd_addrepo, subparsers) phlsys_subcommand.setup_parser( "rm-repo", abdcmd_rmrepo, subparsers) phlsys_subcommand.setup_parser( "start", abdcmd_start, subparsers) phlsys_subcommand.setup_parser( "stop", abdcmd_stop, subparsers) phlsys_subcommand.setup_parser( "restart", abdcmd_restart, subparsers) phlsys_subcommand.setup_parser( "reload", abdcmd_reload, subparsers) phlsys_subcommand.setup_parser( "fsck", abdcmd_fsck, subparsers) phlsys_subcommand.setup_parser( "fetch", abdcmd_fetch, subparsers) args = parser.parse_args() return args.func(args)
def main(): parser = argparse.ArgumentParser( formatter_class=argparse.RawDescriptionHelpFormatter, description=__doc__, epilog=_USAGE_EXAMPLES) subparsers = parser.add_subparsers() phlsys_subcommand.setup_parser( "show-config", aoncmd_showconfig, subparsers) phlsys_subcommand.setup_parser("query", aoncmd_query, subparsers) phlsys_subcommand.setup_parser("comment", aoncmd_comment, subparsers) phlsys_subcommand.setup_parser( "comment-inline", aoncmd_commentinline, subparsers) phlsys_subcommand.setup_parser("raw-diff", aoncmd_rawdiff, subparsers) phlsys_subcommand.setup_parser( "create-revision", aoncmd_createrevision, subparsers) phlsys_subcommand.setup_parser( "update-revision", aoncmd_updaterevision, subparsers) phlsys_subcommand.setup_parser("get-diff", aoncmd_getdiff, subparsers) phlsys_subcommand.setup_parser("paste", aoncmd_paste, subparsers) phlsys_subcommand.setup_parser( "task-create", aoncmd_taskcreate, subparsers) phlsys_subcommand.setup_parser( "task-update", aoncmd_taskupdate, subparsers) phlsys_subcommand.setup_parser( "task-query", aoncmd_taskquery, subparsers) phlsys_subcommand.setup_parser( "git-diff-helper", aoncmd_gitdiffhelper, subparsers) args = parser.parse_args() try: return args.func(args) except phlsys_conduit.ConduitException as e: # pychecker won't let us pass 'e' in as a keyword argument, so we # address it as parameter 0 instead fmt = ( "ERROR ({0.error}): " "Phabricator {0.method} could not perform request:\n" "{0.errormsg}" ) message = fmt.format(e) print(message) print() return 1 except phlsys_makeconduit.InsufficientInfoException as e: print("ERROR - insufficient information") print(e) print() print("N.B. you may also specify uri, user or cert directly like so:") print(" --uri URI address of phabricator instance") print(" --user USERNAME username of user to connect as") print(" --cert CERTIFICATE certificate for user Phabrictor account") return 1