Migrate to stateless app.App (#17542)
* add request context * move initialialization to server * use app interface instead of global app functions * remove app context from webconn * cleanup * remove duplicated services * move context to separate package * remove finalize init method and move content to NewServer function * restart workers and schedulers after adding license for tests * reflect review comments Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
c09369f14a
Коммит
5ea06e51d0
@@ -71,13 +71,17 @@ func (a *App) GetPluginStatuses() (model.PluginStatuses, *model.AppError) {
|
||||
|
||||
// GetClusterPluginStatuses returns the status for plugins installed anywhere in the cluster.
|
||||
func (a *App) GetClusterPluginStatuses() (model.PluginStatuses, *model.AppError) {
|
||||
pluginStatuses, err := a.GetPluginStatuses()
|
||||
return a.Srv().getClusterPluginStatuses()
|
||||
}
|
||||
|
||||
func (s *Server) getClusterPluginStatuses() (model.PluginStatuses, *model.AppError) {
|
||||
pluginStatuses, err := s.GetPluginStatuses()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if a.Cluster() != nil && *a.Config().ClusterSettings.Enable {
|
||||
clusterPluginStatuses, err := a.Cluster().GetPluginStatuses()
|
||||
if s.Cluster != nil && *s.Config().ClusterSettings.Enable {
|
||||
clusterPluginStatuses, err := s.Cluster.GetPluginStatuses()
|
||||
if err != nil {
|
||||
return nil, model.NewAppError("GetClusterPluginStatuses", "app.plugin.get_cluster_plugin_statuses.app_error", nil, err.Error(), http.StatusInternalServerError)
|
||||
}
|
||||
@@ -88,8 +92,8 @@ func (a *App) GetClusterPluginStatuses() (model.PluginStatuses, *model.AppError)
|
||||
return pluginStatuses, nil
|
||||
}
|
||||
|
||||
func (a *App) notifyPluginStatusesChanged() error {
|
||||
pluginStatuses, err := a.GetClusterPluginStatuses()
|
||||
func (s *Server) notifyPluginStatusesChanged() error {
|
||||
pluginStatuses, err := s.getClusterPluginStatuses()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
@@ -98,7 +102,7 @@ func (a *App) notifyPluginStatusesChanged() error {
|
||||
message := model.NewWebSocketEvent(model.WEBSOCKET_EVENT_PLUGIN_STATUSES_CHANGED, "", "", "", nil)
|
||||
message.Add("plugin_statuses", pluginStatuses)
|
||||
message.GetBroadcast().ContainsSensitiveData = true
|
||||
a.Publish(message)
|
||||
s.Publish(message)
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
Ссылка в новой задаче
Block a user