29 lines
790 B
Python
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))
|