Skip to content

Commit

Permalink
allow multiple actions
Browse files Browse the repository at this point in the history
  • Loading branch information
Johannes Kroll committed Jan 16, 2015
1 parent d41f287 commit f4b19db
Showing 1 changed file with 20 additions and 16 deletions.
36 changes: 20 additions & 16 deletions graphcare.py
Original file line number Diff line number Diff line change
Expand Up @@ -423,28 +423,32 @@ def CreateMissingWikisInstanceconfig(servconfig):
parser= argparse.ArgumentParser(description= 'Catgraph Maintenance Job Script.', formatter_class= argparse.RawDescriptionHelpFormatter)
parser.add_argument('-s', '--server-config', default='~/.graphcare-serverconfig.json', help='server config file. ' + GraphservConfig.__init__.__doc__)
parser.add_argument('-i', '--instance-config', default='~/.graphcare-instanceconfig.json', help='instance config file. ' + GraphcoreInstanceConfig.__init__.__doc__)
parser.add_argument('-a', '--action', default='update',
parser.add_argument('-a', '--action', action='append',
choices=['update', 'dump-all-graphs', 'load-all-graphs', 'refresh-host-map', 'wiki-stats', 'create-instanceconfig-missingwikis'],
help='action to run. \n* update: start graphserv if necessary, update graphs, refresh hostmap (default)\n * dump-all-graphs: save all running graphs to $graphservWorkDir/dumps.\n * load-all-graphs: load all graphs from $graphservWorkDir/dumps.')

args= parser.parse_args()
gc= GraphservConfig().load(os.path.expanduser(args.server_config))
instances= GraphcoreInstanceConfig(os.path.expanduser(args.instance_config))

if args.action=='update':
CheckGraphserv(gc)
CheckGraphcores(gc, instances)
RefreshHostmap(gc)
elif args.action=='dump-all-graphs':
DumpAllGraphs(gc)
elif args.action=='load-all-graphs':
CheckGraphserv(gc)
LoadAllGraphs(gc)
elif args.action=='refresh-host-map':
RefreshHostmap(gc)
elif args.action=='wiki-stats':
ListWikis(gc)
elif args.action=='create-instanceconfig-missingwikis':
CreateMissingWikisInstanceconfig(gc)
if not len(args.action):
args.action= ['update'] # default

for action in args.action:
if action=='update':
CheckGraphserv(gc)
CheckGraphcores(gc, instances)
RefreshHostmap(gc)
elif action=='dump-all-graphs':
DumpAllGraphs(gc)
elif action=='load-all-graphs':
CheckGraphserv(gc)
LoadAllGraphs(gc)
elif action=='refresh-host-map':
RefreshHostmap(gc)
elif action=='wiki-stats':
ListWikis(gc)
elif action=='create-instanceconfig-missingwikis':
CreateMissingWikisInstanceconfig(gc)

sys.exit(0)

0 comments on commit f4b19db

Please sign in to comment.