grafana/pkg/plugins
Marcus Andersson 1cfd3f81fb
Plugins: Support for link extensions (#61663)
* added extensions to plugin.json and exposing it via frontend settings.

* added extensions to the plugin.json schema.

* changing the extensions in frontend settings to a map instead of an array.

* wip

* feat(pluginregistry): begin wiring up registry

* feat(pluginextensions): prevent duplicate links and clean up

* added test case for link extensions.

* added tests and implemented the getPluginLink function.

* wip

* feat(pluginextensions): expose plugin extension registry

* fix(pluginextensions): appease the typescript gods post rename

* renamed file and will throw error if trying to call setExtensionsRegistry if trying to call it twice.

* added reafactorings.

* fixed failing test.

* minor refactorings to make sure we only include extensions if the app is enabled.

* fixed some nits.

* Update public/app/features/plugins/extensions/registry.test.ts

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>

* Update packages/grafana-runtime/src/services/pluginExtensions/registry.ts

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>

* Update packages/grafana-runtime/src/services/pluginExtensions/registry.ts

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>

* Update public/app/features/plugins/extensions/registry.test.ts

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>

* Moved types for extensions from data to runtime.

* added a small example on how you could consume link extensions.

* renamed after feedback from levi.

* updated the plugindef.cue.

* using the generated plugin def.

* added tests for apps and extensions.

* fixed linting issues.

* wip

* wip

* wip

* wip

* test(extensions): fix up failing tests

* feat(extensions): freeze registry extension arrays, include type in registry items

* added restrictions in the pugindef cue schema.

* wip

* added required fields.

* added key to uniquely identify each item.

* test(pluginextensions): align tests with implementation

* chore(schema): refresh reference.md

---------

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
2023-02-07 17:20:05 +01:00
..
adapters Chore: Rename Id to ID in alerting models (#62777) 2023-02-02 17:22:43 +01:00
backendplugin Plugins: Add backend target to instrumentation (#61980) 2023-01-24 16:18:34 +01:00
codegen Kindsys: Replace DefForGen with kindsys.Kind (#62642) 2023-01-31 19:40:15 -05:00
config Plugins: Add optional logger for plugin requests sent to backend plugins (#62981) 2023-02-07 12:49:16 +01:00
licensing chore: move models/licensing into licensing service (#61878) 2023-01-23 11:53:43 -05:00
logger Plugins: Create single point of entry for adding / removing plugins (#55463) 2022-09-23 14:27:01 +02:00
manager Plugins: Support for link extensions (#61663) 2023-02-07 17:20:05 +01:00
pfs Plugins: Support for link extensions (#61663) 2023-02-07 17:20:05 +01:00
plugincontext chore: move plugins models into pluginsettings svc (#61944) 2023-01-23 13:56:20 -05:00
plugindef Plugins: Support for link extensions (#61663) 2023-02-07 17:20:05 +01:00
pluginscdn Plugins: Allow loading panel plugins from a CDN (#59096) 2023-01-27 15:08:17 +01:00
repo Plugins: Refactor plugin download/installation (#43046) 2022-08-23 11:50:50 +02:00
storage Chore: Keeping the list of plugin executable complete (#60840) 2023-01-25 14:07:59 +00:00
accesscontrol.go Chore: Move ReqContext to contexthandler service (#62102) 2023-01-27 08:50:36 +01:00
errors.go Plugins: Use error plane for api/ds/query (#54750) 2022-09-14 18:19:57 +02:00
fakes.go NavTree: Make it possible to configure where in nav tree plugins live (#55484) 2022-09-28 08:29:35 +02:00
ifaces.go Plugins: Add tailored interface for plugins licensing needs (#61045) 2023-01-18 18:02:54 +01:00
models.go Plugins: Support for link extensions (#61663) 2023-02-07 17:20:05 +01:00
plugins.go Plugins: Support for link extensions (#61663) 2023-02-07 17:20:05 +01:00