POC: Geo Framework for Repositories and Uploads
I am proposing to move Geo towards a framework-like structure. In order to validate this approach, we should create a proof of concept that showcases end-to-end how this framework may look like. The purpose is to validate some very basic assumptions and facilitate discussion in the team regarding technical direction. This should be the absolute minimal iteration! It is about the concept, not about a clean implementation.
Problem to solve
- Geo is usually not considered by other teams when implementing features
- Customers expect new features (and their data) to be replicated either for performance or Disaster Recovery purposes
- Adding new data types to Geo is hard and can only be performed by the Geo team
- Verification of data types is difficult and does not perform well. Again only the Geo team can do this
- The company is growing rapidly and adds new features; the current operational mode is not scalable
- Software developers across GitLab are not empowered to make their features geo-compatbile
Intended users
Proposal
- Use the existing repositories data type to validate some assumptions
- Implement a POC interface for adding a Geo datatype
- Implement a POC event-based system based on @dbalexandre's suggestion in #12565 (closed)
- Implement a POC for verification based on &2097 (closed)
This should cover the entire data type end to end. It may not even work but it should allow to discuss the direction with the team.
What does success look like, and how can we measure that?
- An MR that showcases a potential future framework with a solid foundation for repositories
- Defined next steps for the Geo framework
- Actionable discussion in the Geo team
Links / references
Edited by Fabian Zimmer