Geo: Do not attempt to verify/replicate Git repo when project_repositories (and Git repo) doesn't exist
This is part of a multi-step implementation plan to handle Geo verification/replication of projects without Git repositories to reduce errors caused when Gitaly tries to fetch non-existent repos.
| Steps | ||
|---|---|---|
| 1 | Add had_repo column in <repo type>_repositories table |
|
| 2 | Backfill has_repo column |
|
| 3 | Introduce a feature flag to be used in the next two steps | |
| 4 | Insert record in <repo type>_repositories only when a Git repo is created; at the same time update has_repo
|
|
| 5 | Enumerate <repo_type>_repositories instead of repo types table for verification/replication of Git repos, if not already done |
|
| 6 | Do not attempt to verify/replicate Git repo when <repo type>__repositories (and Git repo) doesn't exist |
|
| 7 | Delete project_repositories rows where Git repos don't exist |
Once project_repositories records and project.has_repo column are consistent with the existence of a project's Git repo, we want Geo code to verify/replicate Git repos only when they exist.
Edited by 🤖 GitLab Bot 🤖