[reports-service] Endpoint for uploading reports
Summary:
HTTP endpoint for uploading new reports. Counterpart to keyserver's send_report and send_reports endpoints.
This endpoint can handle both single and multiple reports at once.
Reports are processed concurrently, in separate Tokio tasks - this speeds up the processing of multiple reports in case they need to be uploaded to Blob service.
Test Plan:
Used Postman to send requests.
- Sent a single report (example content copied from local mariadb) - ensured it was stored in DDB
- Sent multiple reports - ensured they were all saved
- Sent malfolmed requests (missing fields, invalid fields, etc.) - responds HTTP 400 Bad Request
Reviewers: michal, patryk, varun, jon
Reviewed By: michal
Subscribers: ashoat, tomek
Differential Revision: https://phab.comm.dev/D8970