Files
@ d72018278450
Branch filter:
Location: Morevna/src/morevna.py - annotation
d72018278450
1.2 KiB
text/x-python
nicer program entry point
d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 d72018278450 | import sys
import os.path
from argparse import ArgumentParser
from hashtree import HashTree
def buildTree(args):
if not os.path.isfile(args.datafile):
print("invalid file specified:",args.datafile,file=sys.stderr)
return
tree=HashTree.fromFile(args.datafile)
tree.save(args.treefile)
def update(args):
print("ready to update")
print(args)
def serve(args):
print("ready to serve")
print(args)
parser=ArgumentParser()
subparsers=parser.add_subparsers()
pRebuild=subparsers.add_parser("build")
pRebuild.add_argument("treefile",help="stored hash tree location")
pRebuild.add_argument("datafile")
pRebuild.set_defaults(func=buildTree)
pUpdate=subparsers.add_parser("update")
pUpdate.add_argument("-p","--port",type=int)
pUpdate.add_argument("--host",default="127.0.0.1")
pUpdate.add_argument("-t","--tree",help="stored hash tree location")
pUpdate.add_argument("datafile")
pUpdate.set_defaults(func=update)
pServe=subparsers.add_parser("serve")
pServe.add_argument("-p","--port",type=int)
pServe.add_argument("--host",default="")
pServe.add_argument("-t","--tree",help="stored hash tree location")
pServe.add_argument("datafile")
pServe.set_defaults(func=serve)
args=parser.parse_args()
args.func(args)
|