Michael Kochell
bc7f961d75
Store plugin OnActivate errors and include them in PluginStatus response ( #20430 )
...
* store plugin OnActivate errors, and include in PluginStatus
* write test
Co-authored-by: Mattermod <mattermod@users.noreply.github.com >
2022-07-21 10:55:57 -04:00
Claudio Costa
92837fa1ee
[MM-22051] Remove To/From JSON ( #18070 )
...
* Posts
* Add missing translation
* Fix internal store marshaling
* [MM-22051] Remove To/From JSON (Channels) (#18116 )
* Channels
* Channel members
* ChannelSearch
* Channel categories, list, sidebar, stats, view
* Fix conversions
* [MM-22051] Remove To/From JSON (Users) (#18121 )
* User related structs
* Fix return
* Team related structures (#18127 )
* [MM-22051] Remove To/From JSON (Status, Bot, Reaction, Thread, FileInfo) (#18130 )
* Status
* Bot
* Reaction
* Thread
* FileInfo
* Some fixes
* Translations update from Weblate (#18143 )
* Translated using Weblate (German)
Currently translated at 100.0% (2309 of 2309 strings)
Translation: mattermost-languages-shipped/mattermost-server
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-server_master/de/
* Translated using Weblate (Turkish)
Currently translated at 100.0% (2309 of 2309 strings)
Translation: mattermost-languages-shipped/mattermost-server
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-server_master/tr/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2309 of 2309 strings)
Translation: mattermost-languages-shipped/mattermost-server
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-server_master/hu/
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Translation: mattermost-languages-shipped/mattermost-server
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-server_master/
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Translation: mattermost-languages-shipped/mattermost-server
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-server_master/
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Translation: mattermost-languages-shipped/mattermost-server
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-server_master/
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Translation: mattermost-languages-shipped/mattermost-server
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-server_master/
* Translated using Weblate (German)
Currently translated at 100.0% (2301 of 2301 strings)
Translation: mattermost-languages-shipped/mattermost-server
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-server_master/de/
* Translated using Weblate (Turkish)
Currently translated at 100.0% (2301 of 2301 strings)
Translation: mattermost-languages-shipped/mattermost-server
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-server_master/tr/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (2301 of 2301 strings)
Translation: mattermost-languages-shipped/mattermost-server
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-server_master/hu/
* Translated using Weblate (English (Australia))
Currently translated at 100.0% (2301 of 2301 strings)
Translation: mattermost-languages-shipped/mattermost-server
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-server_master/en_AU/
* Translated using Weblate (Bulgarian)
Currently translated at 100.0% (2301 of 2301 strings)
Translation: mattermost-languages-shipped/mattermost-server
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-server_master/bg/
* Translated using Weblate (Japanese)
Currently translated at 100.0% (2301 of 2301 strings)
Translation: mattermost-languages-shipped/mattermost-server
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-server_master/ja/
* Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (2301 of 2301 strings)
Translation: mattermost-languages-shipped/mattermost-server
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-server_master/zh_Hans/
Co-authored-by: JtheBAB <srast@bioc.uzh.ch >
Co-authored-by: Kaya Zeren <kayazeren@gmail.com >
Co-authored-by: Tóth Csaba // Online ERP Hungary Kft <csaba.toth@online-erp.hu >
Co-authored-by: Matthew Williams <Matthew.Williams@outlook.com.au >
Co-authored-by: Nikolai Zahariev <nikolaiz@yahoo.com >
Co-authored-by: kaakaa <stooner.hoe@gmail.com >
Co-authored-by: aeomin <lin@aeomin.net >
Co-authored-by: Weblate (bot) <hosted@weblate.org >
Co-authored-by: JtheBAB <srast@bioc.uzh.ch >
Co-authored-by: Kaya Zeren <kayazeren@gmail.com >
Co-authored-by: Tóth Csaba // Online ERP Hungary Kft <csaba.toth@online-erp.hu >
Co-authored-by: Matthew Williams <Matthew.Williams@outlook.com.au >
Co-authored-by: Nikolai Zahariev <nikolaiz@yahoo.com >
Co-authored-by: kaakaa <stooner.hoe@gmail.com >
Co-authored-by: aeomin <lin@aeomin.net >
* [MM-22051] Remove To/From JSON methods from model (#18138 )
* Scheme
* Role
* Session
* Config
* Status
* Fix logic
* Emoji
* GuestsInvite
* Group
* Command
* ClusterInfo
* License
* Job
* System
* Plugin
* Command2
* IncomingWebhook
* OutgoingWebhook
* Fix tests
* Update traslation
* Some fixes
* Add missing return
* Simplify
* Make Config.ToJSONFiltered() return []byte
* Make Busy.ToJSON() return []byte
* Include error in log
* Split logic
* [MM-22051] Remove To/From JSON (final) (#18150 )
* SwitchRequest
* PluginEventData
* Permalink
* PushNotification
* SuggestCommand
* PluginsResponse
* WebSocketMessage
* RemoteCluster
* SharedChannel
* PluginStatuses
* InitialLoad
* ClusterDiscovery
* ClusterStats
* MfaSecret
* GroupSyncable
* SAML
* WebSocketRequest
* TypingRequest
* SecurityBulletin
* OAuthApp
* IntegrationAction
* DataRetention
* Preference
* FileInfoList
* Compliance
* Preferences
* FileInfoSearchResults
* TermsOfService
* InstallMarketplacePluginRequest
* GitLabUser
* UploadSessions
* Remove unused helpers
* Fix tests
* [MM-23280] Fix linting for ToJSON/FromJSON (#18153 )
* SwitchRequest
* PluginEventData
* Permalink
* PushNotification
* SuggestCommand
* PluginsResponse
* WebSocketMessage
* RemoteCluster
* SharedChannel
* PluginStatuses
* InitialLoad
* ClusterDiscovery
* ClusterStats
* MfaSecret
* GroupSyncable
* SAML
* WebSocketRequest
* TypingRequest
* SecurityBulletin
* OAuthApp
* IntegrationAction
* DataRetention
* Preference
* FileInfoList
* Compliance
* Preferences
* FileInfoSearchResults
* TermsOfService
* InstallMarketplacePluginRequest
* GitLabUser
* UploadSessions
* Remove unused helpers
* Fix tests
* Fix linting for ToJSON/FromJSON
* Fix conversions
Co-authored-by: Weblate (bot) <hosted@weblate.org >
Co-authored-by: JtheBAB <srast@bioc.uzh.ch >
Co-authored-by: Kaya Zeren <kayazeren@gmail.com >
Co-authored-by: Tóth Csaba // Online ERP Hungary Kft <csaba.toth@online-erp.hu >
Co-authored-by: Matthew Williams <Matthew.Williams@outlook.com.au >
Co-authored-by: Nikolai Zahariev <nikolaiz@yahoo.com >
Co-authored-by: kaakaa <stooner.hoe@gmail.com >
Co-authored-by: aeomin <lin@aeomin.net >
Co-authored-by: Mattermod <mattermod@users.noreply.github.com >
2021-09-01 14:43:12 +02:00
Michael Kochell
b68194e035
[MM-15831] Improve system for storing status of available plug… ( #11185 )
...
* Move State property from activePlugin to PluginHealthStatus. env.activePlugins is now reserved for healthy running plugins.
* Add comments for function declarations
* Combine activePlugins and pluginHealthStatuses into a common structure, registeredPlugins
* Add check to see if plugin is active before deactivating it
* Make `Deactivate` set plugin status
* Add comment explaining the `registeredPlugins` map
* Give responsibility to set plugin disabled status upon deactivation back to `env.Deactivate`
* check if plugin needs to be deactivated before setting status
2019-06-25 17:44:08 -04:00
Christopher Speller
1e5c432e10
MM-10702 Moving plugins to use hashicorp go-plugin. ( #8978 )
...
* Moving plugins to use hashicorp go-plugin.
* Tweaks from feedback.
2018-06-25 12:33:13 -07:00
Jesse Hallam
847c181ec9
MM-8622: Improved plugin error reporting ( #8737 )
...
* allow `Wait()`ing on the supervisor
In the event the plugin supervisor shuts down a plugin for crashing too
many times, the new `Wait()` interface allows the `ActivatePlugin` to
accept a callback function to trigger when `supervisor.Wait()` returns.
If the supervisor shuts down normally, this callback is invoked with
a nil error, otherwise any error reported by the supervisor is passed
along.
* improve plugin activation/deactivation logic
Avoid triggering activation of previously failed-to-start plugins just
becase something in the configuration changed. Now, intelligently
compare the global enable bit as well as the each individual plugin's
enabled bit.
* expose store to manipulate PluginStatuses
* expose API to fetch plugin statuses
* keep track of whether or not plugin sandboxing is supported
* transition plugin statuses
* restore error on plugin activation if already active
* don't initialize test plugins until successfully loaded
* emit websocket events when plugin statuses change
* skip pruning if already initialized
* MM-8622: maintain plugin statuses in memory
Switch away from persisting plugin statuses to the database, and
maintain in memory instead. This will be followed by a cluster interface
to query the in-memory status of plugin statuses from all cluster nodes.
At the same time, rename `cluster_discovery_id` on the `PluginStatus`
model object to `cluster_id`.
* MM-8622: aggregate plugin statuses across cluster
* fetch cluster plugin statuses when emitting websocket notification
* address unit test fixes after rebasing
* relax (poor) racey unit test re: supervisor.Wait()
* make store-mocks
2018-05-23 14:26:35 -04:00