Split Geo::ProjectSyncWorker into RepositorySyncWorker and WikiSyncWorker
I think we already discussed it some time ago but I could not find an issue. The closest one is https://gitlab.com/gitlab-org/gitlab-ee/issues/5499 but in this issue, I don't propose to take wiki status out of ProjectRegistry. Now when we need to initiate repository resync we spawn ProjectSyncWorker
where the need for the sync is checked again just because we don't know for what exactly purpose this worker has been spawn so we check the status of both: wiki and repo. This is suboptimal.
This can be considered as the first step for https://gitlab.com/gitlab-org/gitlab-ee/issues/5499
UPDATE: This refactoring would also simplify registry.repository_sync_due?
and registry.wiki_sync_due?
methods
UPDATE1: RepositoryUpdatedEvent
caries a knowledge of what exactly has been updated (wiki or repo) but we spawn the whole Geo::ProjectSyncWorker
anyway.
UPDATE2: RepositorySyncWorker
already exists, so we probably need something else
@mkozono @dbalexandre @toon WDYT?