kibana/packages/core
Spencer 376bed5d16
implement "plugin" package type (#149370)
This PR updates the core discovery logic to support loading plugins from
packages. This logic is additive, so that the existing plugins in the
repo and third-party plugins can continue to be loaded via the existing
mechanism, but with https://github.com/elastic/kibana/pull/148130 we
will be automatically migrating all plugins in the repo to packages,
which will use this logic.

The logic is already in-use in that PR, and was developed there, but
extracted here for easier review.

The logic is relatively simple, where a list of packages in the repo are
attached to the core `Env` and then filtered by core before converting
all plugin packages to `PluginWrapper`. The `PluginWrapper` still
exposes the plugin manifest to the rest of the code, and it is used in
many places, so rather than making changes to the `PluginWrapper` I'm
faking a legacy plugin manifest with the plugin package manifest.

@elastic/kibana-core: I'm going to need some help identifying what we
need to get test coverage for. This is a pretty simple addition to the
core IMO, and if it didn't work then nothing would work, so I'm pretty
confident in it, but would still appreciate your feedback.
2023-01-30 10:47:53 -07:00
..
analytics Flags core mocks packages as devOnly (#149466) 2023-01-26 08:46:06 -07:00
application Flags core mocks packages as devOnly (#149466) 2023-01-26 08:46:06 -07:00
apps Flags core mocks packages as devOnly (#149466) 2023-01-26 08:46:06 -07:00
base implement "plugin" package type (#149370) 2023-01-30 10:47:53 -07:00
capabilities Flags core mocks packages as devOnly (#149466) 2023-01-26 08:46:06 -07:00
chrome Flags core mocks packages as devOnly (#149466) 2023-01-26 08:46:06 -07:00
config/core-config-server-internal Transpile packages on demand, validate all TS projects (#146212) 2022-12-22 19:00:29 -06:00
custom-branding [codeowners] rename global experience to @elastic/appex-sharedux 2023-01-18 10:02:49 -07:00
deprecations Flags core mocks packages as devOnly (#149466) 2023-01-26 08:46:06 -07:00
doc-links Flags core mocks packages as devOnly (#149466) 2023-01-26 08:46:06 -07:00
elasticsearch Flags core mocks packages as devOnly (#149466) 2023-01-26 08:46:06 -07:00
environment Flags core mocks packages as devOnly (#149466) 2023-01-26 08:46:06 -07:00
execution-context Flags core mocks packages as devOnly (#149466) 2023-01-26 08:46:06 -07:00
fatal-errors Flags core mocks packages as devOnly (#149466) 2023-01-26 08:46:06 -07:00
http Flags core mocks packages as devOnly (#149466) 2023-01-26 08:46:06 -07:00
i18n Flags core mocks packages as devOnly (#149466) 2023-01-26 08:46:06 -07:00
injected-metadata Flags core mocks packages as devOnly (#149466) 2023-01-26 08:46:06 -07:00
integrations Flags core mocks packages as devOnly (#149466) 2023-01-26 08:46:06 -07:00
lifecycle Flags core mocks packages as devOnly (#149466) 2023-01-26 08:46:06 -07:00
logging Flags core mocks packages as devOnly (#149466) 2023-01-26 08:46:06 -07:00
metrics Flags core mocks packages as devOnly (#149466) 2023-01-26 08:46:06 -07:00
mount-utils Transpile packages on demand, validate all TS projects (#146212) 2022-12-22 19:00:29 -06:00
node Flags core mocks packages as devOnly (#149466) 2023-01-26 08:46:06 -07:00
notifications Flags core mocks packages as devOnly (#149466) 2023-01-26 08:46:06 -07:00
overlays Flags core mocks packages as devOnly (#149466) 2023-01-26 08:46:06 -07:00
plugins implement "plugin" package type (#149370) 2023-01-30 10:47:53 -07:00
preboot Flags core mocks packages as devOnly (#149466) 2023-01-26 08:46:06 -07:00
rendering [uiSettings] improves browser-side public types (#149645) 2023-01-27 08:02:22 -07:00
root implement "plugin" package type (#149370) 2023-01-30 10:47:53 -07:00
saved-objects [Security Solution] Write and read Rule Execution Logs from rule instead of saved object (#147035) 2023-01-27 16:35:47 +01:00
status Flags core mocks packages as devOnly (#149466) 2023-01-26 08:46:06 -07:00
test-helpers implement "plugin" package type (#149370) 2023-01-30 10:47:53 -07:00
theme Flags core mocks packages as devOnly (#149466) 2023-01-26 08:46:06 -07:00
ui-settings [uiSettings] improves browser-side public types (#149645) 2023-01-27 08:02:22 -07:00
usage-data Flags core mocks packages as devOnly (#149466) 2023-01-26 08:46:06 -07:00