fix plugin manifest registration upsert
This commit is contained in:
@@ -766,7 +766,20 @@ func (svc *CoreService) RegisterGamePluginManifest(registration domain.GamePlugi
|
||||
if err := validator.ValidateGamePluginManifestRegistration(registration); err != nil {
|
||||
return domain.GamePlugin{}, err
|
||||
}
|
||||
return svc.CreateGamePlugin(gamePluginFromManifestRegistration(registration))
|
||||
plugin := gamePluginFromManifestRegistration(registration)
|
||||
plugin.ProductionLifecycle = normalizedProductionLifecycle(plugin.ProductionLifecycle)
|
||||
if err := validator.ValidateGamePlugin(plugin); err != nil {
|
||||
return domain.GamePlugin{}, err
|
||||
}
|
||||
if err := svc.store.GamePlugins().Create(plugin); err != nil {
|
||||
if !errors.Is(err, repo.ErrDuplicate) {
|
||||
return domain.GamePlugin{}, err
|
||||
}
|
||||
if err := svc.store.GamePlugins().Update(plugin); err != nil {
|
||||
return domain.GamePlugin{}, err
|
||||
}
|
||||
}
|
||||
return domain.CopyGamePlugin(plugin), nil
|
||||
}
|
||||
|
||||
func gamePluginFromManifestRegistration(registration domain.GamePluginManifestRegistration) domain.GamePlugin {
|
||||
|
||||
Reference in New Issue
Block a user