idea192-civicpulse-offline-.../src/idea192_civicpulse_offline_.../cli.py

29 lines
790 B
Python

from __future__ import annotations
import argparse
from pathlib import Path
from .service import CivicPulseService
def main() -> None:
parser = argparse.ArgumentParser(prog="civicpulse")
parser.add_argument("--db", default="civicpulse.sqlite3")
sub = parser.add_subparsers(dest="command", required=True)
audit = sub.add_parser("audit")
audit.add_argument("entity_id")
brief = sub.add_parser("share-brief")
brief.add_argument("brief_id")
brief.add_argument("role")
args = parser.parse_args()
service = CivicPulseService(Path(args.db))
if args.command == "audit":
for item in service.audit(args.entity_id):
print(item)
elif args.command == "share-brief":
print(service.share_brief(args.brief_id, args.role))