* Removing some other fake apps

* More FakeApp removed

* Removing entirely FakeApp

* Fixing some tests

* Fixing get Cluster id from get plugin status

* Fixing failing tests

* Fixing tests

* Fixing test initialization for web

* Fixing InitServer for server tests

* Fixing InitServer for server tests

* Reverting go.sum and go.mod

* Removing unneded HTMLTemplates function in App layer

* Moving back some functions to its old place to easy the review

* Moving back some functions to its old place to easy the review

* Using the last struct2interface version

* Generating store layers

* Fixing merge problems

* Addressing PR comments

* Small fix

* Fixing app tests build

* Fixing tests

* fixing tests

* Fix tests

* Fixing tests

* Fixing tests

* Fixing tests

* Moving license to server struct

* Adding some fixes to the test compilation

* Fixing cluster and some jobs initialization

* Fixing some license tests compilation problems

* Fixing recursive cache invalidation

* Regenerating app layers

* Fix test compilation

Co-authored-by: mattermod <mattermod@users.noreply.github.com>
Этот коммит содержится в:
Jesús Espino
2020-06-12 13:43:50 +02:00
коммит произвёл GitHub
родитель f3ac33e6dc
Коммит f5eab1271b
88 изменённых файлов: 973 добавлений и 1177 удалений

Просмотреть файл

@@ -40,15 +40,24 @@ type pluginSignaturePath struct {
//
// To get the plugins environment when the plugins are disabled, manually acquire the plugins
// lock instead.
func (a *App) GetPluginsEnvironment() *plugin.Environment {
if !*a.Config().PluginSettings.Enable {
func (s *Server) GetPluginsEnvironment() *plugin.Environment {
if !*s.Config().PluginSettings.Enable {
return nil
}
a.Srv().PluginsLock.RLock()
defer a.Srv().PluginsLock.RUnlock()
s.PluginsLock.RLock()
defer s.PluginsLock.RUnlock()
return a.Srv().PluginsEnvironment
return s.PluginsEnvironment
}
// GetPluginsEnvironment returns the plugin environment for use if plugins are enabled and
// initialized.
//
// To get the plugins environment when the plugins are disabled, manually acquire the plugins
// lock instead.
func (a *App) GetPluginsEnvironment() *plugin.Environment {
return a.Srv().GetPluginsEnvironment()
}
func (a *App) SetPluginsEnvironment(pluginsEnvironment *plugin.Environment) {
@@ -270,8 +279,8 @@ func (a *App) SyncPlugins() *model.AppError {
return nil
}
func (a *App) ShutDownPlugins() {
pluginsEnvironment := a.GetPluginsEnvironment()
func (s *Server) ShutDownPlugins() {
pluginsEnvironment := s.GetPluginsEnvironment()
if pluginsEnvironment == nil {
return
}
@@ -280,14 +289,14 @@ func (a *App) ShutDownPlugins() {
pluginsEnvironment.Shutdown()
a.RemoveConfigListener(a.Srv().PluginConfigListenerId)
a.Srv().PluginConfigListenerId = ""
s.RemoveConfigListener(s.PluginConfigListenerId)
s.PluginConfigListenerId = ""
// Acquiring lock manually before cleaning up PluginsEnvironment.
a.Srv().PluginsLock.Lock()
defer a.Srv().PluginsLock.Unlock()
if a.Srv().PluginsEnvironment == pluginsEnvironment {
a.Srv().PluginsEnvironment = nil
s.PluginsLock.Lock()
defer s.PluginsLock.Unlock()
if s.PluginsEnvironment == pluginsEnvironment {
s.PluginsEnvironment = nil
} else {
mlog.Warn("Another PluginsEnvironment detected while shutting down plugins.")
}
@@ -519,7 +528,7 @@ func (a *App) getRemotePlugins() (map[string]*model.MarketplacePlugin, *model.Ap
ServerVersion: model.CurrentVersion,
}
license := a.License()
license := a.Srv().License()
if license != nil && *license.Features.EnterprisePlugins {
filter.EnterprisePlugins = true
}