Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Core plugins support (server side) #18840

Closed
6 tasks done
epixa opened this issue May 5, 2018 · 1 comment
Closed
6 tasks done

Core plugins support (server side) #18840

epixa opened this issue May 5, 2018 · 1 comment
Assignees
Labels
enhancement New value added to drive a business result Feature:New Platform Meta Team:Core Core services & architecture: plugins, logging, config, saved objects, http, ES client, i18n, etc

Comments

@epixa
Copy link
Contributor

epixa commented May 5, 2018

The server-side plugin service will handle loading plugin details from the static manifest (kibana.json), sorting the plugins based on their dependency graphs, initializing the various server-side plugins, and wiring their lifecycle into the lifecycle of the plugin service itself (start/stop). It'll also configure the HTTP service so that client-side plugin bundles can be served to the browser and ensure the ordered array of plugin names is passed to the browser.


details are probably going to change here

Plugins in the new platform will be different from "legacy" plugins in many ways. The first of those ways is that they define static metadata in a kibana.json file within a directory:

foo/kibana.json (comments allowed)

{
  // required - id for your plugin
  "id": "foo",

  // required - the version of your plugin
  "version": "x.y.z",

  // optional - the version of Kibana your plugin is compatible with, defaults to "version"
  "kibanaVersion": "x.y.z",

  // optional - the other plugins that must be installed and enabled for this plugin to work.
  "requiredPlugins": ["..."],
  
  // optional - when true the `public/ui_plugin.js` file will be included in the new-platform bundle
  "ui": true
}

Note: The browser-side plugin is support is going to be handled separately in #18874.


Blocked by:

  • Expose core config schema validation system as @kbn/config-schema package (PR, merged)
  • Add Kibana bootstrap step to generate types exposed by the core and its plugins (PR, merged)
  • Implement new platform plugin discovery. (PR, merged)
  • Introduce support for the server-side new platform plugins. (PR, merged)
  • Move legacy src/core_plugins to src/legacy/core_plugins. (PR, merged)
  • Implement first core server-side only plugin. (PR, merged)
@epixa epixa added Team:Core Core services & architecture: plugins, logging, config, saved objects, http, ES client, i18n, etc Feature:New Platform enhancement New value added to drive a business result labels May 5, 2018
@epixa epixa added the Meta label May 7, 2018
@azasypkin azasypkin changed the title Plugin services Core plugins support (server side) Sep 27, 2018
@azasypkin azasypkin self-assigned this Sep 27, 2018
@azasypkin azasypkin added the WIP Work in progress label Sep 28, 2018
@azasypkin azasypkin removed the WIP Work in progress label Dec 4, 2018
@azasypkin
Copy link
Member

Since #25473 has just landed we can close this issue and open separate more targeted issues as we go.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New value added to drive a business result Feature:New Platform Meta Team:Core Core services & architecture: plugins, logging, config, saved objects, http, ES client, i18n, etc
Projects
None yet
Development

No branches or pull requests

2 participants