Migration to backfill routes table with ProjectNamespace routes, either by replacing existing Project routes or along the Project routes
Updated migration plan: backfill route's namespace_id
for all routes, then switch the code to use this new namespace_id reference.
-
for current Namespace routes (user namespace, group), just copy source_id to namespace_id - !78393 (merged) -
for Project routes (when project namespace is backfilled for all projects), set namespace_id = project's project_namespace id - !81121 (merged)
Original description:
-
[ ] I'll add performance testing as a subtask for this as this also has a wide blast radius given every url in the app is based on group or project paths.weight: 5 - mainly because of cross groups collaboration and also I'm not sure how big of a task this is, we'll learn more as part of https://gitlab.com/gitlab-org/gitlab/-/issues/343648
-
[ ] If we opt for backfilling ProjectNamespace routes along Project routes, we'll need to make sure we cleanup Project routes when we confirm everything working as expected.weight: 2 - should be pretty straight forward to cleanup records with source_type='Project' from routes table.
Part of [Phase2] Replace core usages of Project with ProjectNamespace
Edited by Alexandru Croitor