repo-updater: Extend Store with methods for external services
Created by: tsenart
In preparation for the migrations of external services needed in #2025, this change set extends the Store interface with two methods:
ListExternalServices(ctx context.Context, kinds ...string) ([]*ExternalService, error)UpsertExternalServices(ctx context.Context, svcs ... *ExternalService) error
All the following changes cascaded from this one and replicate the design of the code that deals with Repos:
- Introduction of
ExternalServiceandExternalServicestypes. - Implementation of the
ListExternalServicesandUpsertExternalServicesmethods inDBStoreandFakeStore. - Refactoring of
ExternalServicesSourcerto use aStoreinstead of anInternalAPI.