Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Port backend/legacyapi components over to the ooniapi services pattern #807

Open
7 tasks
hellais opened this issue Feb 23, 2024 · 0 comments
Open
7 tasks
Assignees
Labels
epic funder/otffoss2023-2024 ooni/api Issues related to https://github.com/ooni/api ooni/backend Issues related to https://github.com/ooni/backend priority/medium

Comments

@hellais
Copy link
Member

hellais commented Feb 23, 2024

The components that need to be ported are the following:

Tier0

  • ooniprobe, (aka probe_services), where probes send their measurements and
    get metadata to run experiments;
  • prioritization, CRUD for editing the priorities of URLs and populating the
    appropriate clickhouse tables so they can be used by probe;
  • test helpers, such as the web connectivity test helper

Tier1

  • data, (aka OONI Data Kraken), where Explorer and other clients access the
    observations data and experiment results;
  • findings, (aka incidents) backend for findings pages on explorer (see: Port findings platform over to new pattern #814);
  • measurements, backend for aggregation and list measurement endpoints (note
    also probe uses this, so it's maybe on the high end of tier1);

Tier2

  • testlists, for proposing changes to the test-lists and submitting a github PR;

For best practices in doing so, see: #817

I started in this PR to define a nice pattern for using fastapi in conjunction with PostgreSQL for the new OONI Run v2 API: #805.

And also:

I think we should adopt this for iteratively refactoring and deploying other OONI backend tier1 components.

For example the censorship findings pages should be moved over to postgresql and refactored to use fastapi.

This is also related to the API gateway work such that we are able to expose these refactored endpoints side by side the old ones minimizing the chance of breakage: ooni/devops#7.

@hellais hellais added ooni/api Issues related to https://github.com/ooni/api priority/medium ooni/backend Issues related to https://github.com/ooni/backend labels Feb 23, 2024
@hellais hellais changed the title Port public tier1 components over to the new pattern Port backend/legacyapi components over to the ooniapi services pattern Mar 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
epic funder/otffoss2023-2024 ooni/api Issues related to https://github.com/ooni/api ooni/backend Issues related to https://github.com/ooni/backend priority/medium
Projects
None yet
Development

No branches or pull requests

3 participants