git-subtree-dir: fiscal git-subtree-mainline:d95165fc8fgit-subtree-split:102ba84500
23 lines
660 B
Python
23 lines
660 B
Python
"""Expire eligible operational events; audit and critical events are preserved."""
|
|
|
|
import argparse
|
|
|
|
from central.app.db import SessionLocal
|
|
from central.app.events import purge_expired_events
|
|
|
|
|
|
def main():
|
|
parser = argparse.ArgumentParser()
|
|
parser.add_argument("--dry-run", action="store_true")
|
|
parser.add_argument("--retention-days", type=int, default=None)
|
|
args = parser.parse_args()
|
|
if args.dry_run:
|
|
print("dry-run: no events deleted")
|
|
return
|
|
with SessionLocal() as session:
|
|
print(f"deleted_events={purge_expired_events(session, retention_days=args.retention_days)}")
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main()
|