kibana/packages/kbn-plugin-discovery
Spencer 32491462a9
add kibana.jsonc files to existing packages (#138965)
* [packages] add kibana.jsonc files

* auto-migrate to kibana.jsonc

* support interactive pkg id selection too

* remove old codeowners entry

* skip codeowners generation when .github/CODEOWNERS doesn't exist

* fall back to format validation if user is offline

* update question style

* [CI] Auto-commit changed files from 'node scripts/eslint --no-cache --fix'

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2022-09-08 13:31:57 -07:00
..
src chore(NA): remove src folder requirement from packages (part 2) (#138476) 2022-08-30 15:57:35 +01:00
BUILD.bazel chore(NA): remove src folder requirement from packages (part 2) (#138476) 2022-08-30 15:57:35 +01:00
index.js chore(NA): remove src folder requirement from packages (part 2) (#138476) 2022-08-30 15:57:35 +01:00
kibana.jsonc add kibana.jsonc files to existing packages (#138965) 2022-09-08 13:31:57 -07:00
package.json [plugin-discovery] move logic to a package (#128684) 2022-03-29 13:19:58 -06:00
README.mdx [kbn/pm] rewrite to avoid needing a build process (#136207) 2022-07-18 08:46:13 -07:00
tsconfig.json chore(NA): remove src folder requirement from packages (part 2) (#138476) 2022-08-30 15:57:35 +01:00

---
id: kibDevDocsOpsPluginDiscovery
slug: /kibana-dev-docs/ops/plugin-discovery
title: "@kbn/plugin-discovery"
description: A package with logic used to find plugins in the repository
date: 2022-06-06
tags: ['kibana', 'dev', 'contributor', 'operations', 'plugin', 'discovery']
---

At the moment plugins can live in a couple of different places and in the future will be able 
to live anywhere in the repository. This is a package that holds custom logic useful to find and 
parse those.

## API

### parseKibanaPlatformPlugin

It returns a platform plugin for a given manifest path

### getPluginSearchPaths

It returns the paths where plugins will be searched for

### simpleKibanaPlatformPluginDiscovery

It finds and returns the new platform plugins 

## NOTE:

This code is needed in order to properly bootstrap the repository. As such, it can't have any NPM dependencies or require being built. This code is loaded directly into the node.js process that boostraps the repository from source while also being built into a package and exposed to the rest of the package system. Please consider this when making any changes to the source.

The code is still type-checked as JS with JSDoc comments, and a single .ts file which provides interfaces to the JS validation and are publically available to package consumers.