Jesse Hallam
2230fb6f5f
MM-57018: support reattaching plugins ( #26421 )
...
* ProfileImageBytes for EnsureBotOptions
* leverage plugintest.NewAPI
* fix linting
* add UpdateUserRoles to plugin api
* MM-57018: support reattaching plugins
Expose a local-only API for reattaching plugins: instead of the server starting and managing the process itself, allow the plugin to be launched externally (eg within a unit test) and reattach to an existing server instance to provide the unit test with a fully functional RPC API, sidestepping the need for mocking the plugin API in most cases.
In the future, this may become the basis for running plugins in a sidecar container.
Fixes: https://mattermost.atlassian.net/browse/MM-57018
* drop unused supervisor.pid
* factor out checkMinServerVersion
* factor out startPluginServer
* restore missing setPluginState on successful reattach
* avoid passing around a stale registeredPlugin
* inline initializePluginImplementation
* have IsValid return an error
* explicitly close rpcClient
In the case of reattached plugins, the Unix socket won't necessarily disappear leaving the muxBrokers blocked indefinitely. And `Kill()` doesn't do anything if there's no process being managed.
* explicitly detachPlugin
* emphasize gRPC not being supported
---------
Co-authored-by: Mattermost Build <build@mattermost.com >
2024-04-11 11:10:25 -04:00
..
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-10-11 10:13:36 +02:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-10-11 10:13:36 +02:00
2023-10-11 10:13:36 +02:00
2023-10-24 15:08:14 +02:00
2023-10-11 10:13:36 +02:00
2023-05-10 13:07:02 -03:00
2024-03-26 08:43:25 -06:00
2023-05-10 13:07:02 -03:00
2023-06-11 10:54:35 +05:30
2024-03-12 08:36:05 -06:00
2024-03-12 08:36:05 -06:00
2023-06-13 14:08:36 +05:30
2023-06-13 14:08:36 +05:30
2023-10-11 10:13:36 +02:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2024-01-11 13:24:52 -05:00
2024-01-11 13:24:52 -05:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-10-12 09:47:35 +05:30
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-10-24 15:08:14 +02:00
2023-12-20 06:50:58 +01:00
2024-04-11 11:10:25 -04:00
2024-02-26 10:07:48 -05:00
2023-05-10 13:07:02 -03:00
2024-03-22 10:44:38 +01:00
2023-08-10 09:40:49 +05:30
2024-03-11 10:34:20 +05:30
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-06-11 10:54:35 +05:30
2023-05-10 13:07:02 -03:00
2024-04-04 13:44:03 +02:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-06-11 10:54:35 +05:30
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-10-11 10:13:36 +02:00
2023-10-23 10:20:32 +02:00
2024-04-08 11:01:13 +02:00
2024-04-08 11:01:13 +02:00
2024-03-04 15:53:55 -07:00
2023-09-06 08:25:27 -04:00
2023-05-10 13:07:02 -03:00
2023-10-12 10:52:10 -04:00
2023-10-17 11:57:35 -04:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-12-08 10:35:15 -05:00
2023-08-03 12:45:10 -03:00
2023-05-10 13:07:02 -03:00
2024-03-12 08:36:05 -06:00
2023-06-30 20:12:56 +05:30
2023-05-10 13:07:02 -03:00
2024-03-12 08:36:05 -06:00
2024-03-12 08:36:05 -06:00
2023-07-19 13:01:39 -07:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-11-01 12:57:13 +01:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-10-11 10:13:36 +02:00
2023-05-10 13:07:02 -03:00
2024-02-27 13:52:52 +01:00
2024-02-27 13:52:52 +01:00
2023-05-10 13:07:02 -03:00
2023-11-14 09:12:04 -05:00
2023-05-10 13:07:02 -03:00
2024-03-13 10:26:06 +05:30
2023-05-10 13:07:02 -03:00
2023-10-11 10:13:36 +02:00
2024-04-08 11:09:00 +02:00
2024-03-21 19:41:53 +05:30
2023-10-11 10:13:36 +02:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2024-03-25 12:53:22 +01:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2024-03-13 10:26:06 +05:30
2023-05-10 13:07:02 -03:00
2024-02-29 12:33:05 -05:00
2023-11-11 19:33:28 +05:30
2023-05-10 13:07:02 -03:00
2023-10-11 10:13:36 +02:00
2023-06-05 18:42:03 -07:00
2024-02-09 14:49:49 -05:00
2024-02-09 14:49:49 -05:00
2023-05-10 13:07:02 -03:00
2023-10-11 10:13:36 +02:00
2023-05-10 13:07:02 -03:00
2023-12-11 10:27:51 +01:00
2024-03-12 08:36:05 -06:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2024-04-11 11:10:25 -04:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-06-15 08:23:56 -04:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-12-11 15:27:34 -05:00
2023-06-28 15:31:51 -04:00
2023-06-30 20:12:56 +05:30
2023-10-11 10:13:36 +02:00
2024-02-26 09:05:00 +05:30
2023-05-10 13:07:02 -03:00
2023-09-19 15:29:57 +02:00
2023-05-10 13:07:02 -03:00
2023-10-11 10:13:36 +02:00
2023-11-15 13:06:03 -05:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2024-01-16 15:48:51 +01:00
2024-04-04 13:44:03 +02:00
2023-05-20 02:04:28 +03:00
2024-03-12 08:36:05 -06:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-10-11 10:13:36 +02:00
2023-07-24 10:31:06 -03:00
2023-05-10 13:07:02 -03:00
2023-06-07 10:15:33 -03:00
2023-06-07 10:15:33 -03:00
2023-09-08 11:00:48 -03:00
2023-06-07 10:15:33 -03:00
2023-05-10 13:07:02 -03:00
2023-10-03 09:51:07 -05:00
2023-10-11 10:13:36 +02:00
2023-05-10 13:07:02 -03:00
2024-02-09 10:47:12 -05:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-10-12 09:47:35 +05:30
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2024-04-02 00:13:09 +02:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-10-12 09:47:35 +05:30
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-10-23 20:22:36 +02:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2024-02-09 11:17:28 -05:00
2024-01-11 21:28:58 -05:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2023-08-14 17:54:10 +02:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2024-01-19 15:22:17 -05:00
2023-05-10 13:07:02 -03:00
2023-05-10 13:07:02 -03:00
2024-03-04 15:53:55 -07:00
2024-03-22 10:23:21 +05:30
2023-05-10 13:07:02 -03:00
2024-03-20 13:30:14 -04:00
2024-04-02 17:43:23 +02:00
2023-05-10 13:07:02 -03:00
2024-04-04 12:29:31 +03:00
2023-06-13 14:08:36 +05:30
2023-12-21 08:42:58 +05:30
2023-11-22 11:09:48 +01:00
2024-04-04 13:44:03 +02:00
2023-06-11 10:54:35 +05:30
2023-12-11 15:27:34 -05:00