Skip to content

PoC: git clone to work two cells using path claiming & route classification

continue working on the branch poc-tokens-prefix to support route classification.

This is a continuation of the work that has been done on the branch before:

  1. Tokens prefixed with the Cell Prefix
  2. Database sequence claiming

The goal of this PoC is to do the following:

  1. Project route/path claiming. By adding another internal endpoint on Cell 1 to claim route/path of a Project when created on Cell 2. Cell 1 will reserve this path for the project, so that Cell 2 can create it. Please see point (2) here: https://gitlab.com/gitlab-org/gitlab/-/blob/63705f49f4f2ff5d2a1c3ea377db439e66bb35bf/doc/architecture/blueprints/cells/cell-1.0.md#primary-cell
  2. (maybe not needed for this PoC). Cells to publish route rules: https://docs.gitlab.com/ee/architecture/blueprints/cells/routing-service.html#routing-rules
  3. Cells to implement dynamic route classification endpoint https://docs.gitlab.com/ee/architecture/blueprints/cells/routing-service.html#classification so that we can classify the project path.
  4. CloudFlare Worker to classify a project endpoint to figure out on which Cell the project is located.

PoC working demo

When we clone a project over http, the worker needs to figure out to which cell to send the git clone request.

References

Edited by Omar Qunsul