reaggregate_records.py 859 B

1234567891011121314151617181920212223242526272829
  1. from app.database import SessionLocal
  2. from app.models import DataVersion
  3. from app.services.storage_service import StorageService
  4. from app.services.gogs_client import GogsClient
  5. import logging
  6. # Setup basic logging to see what's happening
  7. logging.basicConfig(level=logging.INFO)
  8. def reaggregate():
  9. db = SessionLocal()
  10. gogs = GogsClient()
  11. storage = StorageService(db, gogs)
  12. versions = db.query(DataVersion).all()
  13. print(f"Found {len(versions)} versions to re-aggregate.")
  14. for v in versions:
  15. print(f"Re-aggregating version {v.id} (Stage: {v.stage}, Commit: {v.commit_id[:8]})")
  16. try:
  17. storage.aggregate_version_records(v)
  18. except Exception as e:
  19. print(f"Error re-aggregating version {v.id}: {e}")
  20. db.close()
  21. print("Done!")
  22. if __name__ == "__main__":
  23. reaggregate()