2021-04-13 02:24:19 +02:00
|
|
|
[[monorepo-packages]]
|
|
|
|
== {kib} Monorepo Packages
|
|
|
|
|
|
|
|
Currently {kib} works as a monorepo composed by a core, plugins and packages.
|
|
|
|
The latest are located in a folder called `packages` and are pieces of software that
|
|
|
|
composes a set of features that can be isolated and reused across the entire repository.
|
|
|
|
They are also supposed to be able to imported just like any other `node_module`.
|
|
|
|
|
|
|
|
Previously we relied solely on `@kbn/pm` to manage the development tools of those packages, but we are
|
|
|
|
now in the middle of migrating those responsibilities into Bazel. Every package already migrated
|
|
|
|
will contain in its root folder a `BUILD.bazel` file and other `build` and `watching` strategies should be used.
|
|
|
|
|
|
|
|
Remember that any time you need to make sure the monorepo is ready to be used just run:
|
|
|
|
|
|
|
|
[source,bash]
|
|
|
|
----
|
|
|
|
yarn kbn bootstrap
|
|
|
|
----
|
|
|
|
|
|
|
|
[discrete]
|
|
|
|
=== Building Non Bazel Packages
|
|
|
|
|
|
|
|
Non Bazel packages can be built independently with
|
|
|
|
|
|
|
|
[source,bash]
|
|
|
|
----
|
|
|
|
yarn kbn run build -i PACKAGE_NAME
|
|
|
|
----
|
|
|
|
|
|
|
|
[discrete]
|
|
|
|
=== Building Bazel Packages
|
|
|
|
|
|
|
|
Bazel packages are built as a whole for now. You can use:
|
|
|
|
|
|
|
|
[source,bash]
|
|
|
|
----
|
2021-07-28 22:39:54 +02:00
|
|
|
yarn kbn build
|
2021-04-13 02:24:19 +02:00
|
|
|
----
|
|
|
|
|
|
|
|
[discrete]
|
|
|
|
=== Watching Bazel Packages
|
|
|
|
|
|
|
|
Bazel packages are watched as a whole for now. You can use:
|
|
|
|
|
|
|
|
[source,bash]
|
|
|
|
----
|
2021-07-28 22:39:54 +02:00
|
|
|
yarn kbn watch
|
2021-04-13 02:24:19 +02:00
|
|
|
----
|
|
|
|
|
|
|
|
|
|
|
|
[discrete]
|
|
|
|
=== List of Already Migrated Packages to Bazel
|
|
|
|
|
|
|
|
- @elastic/datemath
|
2021-04-29 18:20:52 +02:00
|
|
|
- @elastic/eslint-config-kibana
|
2021-04-23 22:28:37 +02:00
|
|
|
- @elastic/safer-lodash-set
|
2021-05-06 20:56:29 +02:00
|
|
|
- @kbn/ace
|
2021-05-03 23:34:53 +02:00
|
|
|
- @kbn/analytics
|
2021-04-27 19:44:41 +02:00
|
|
|
- @kbn/apm-config-loader
|
2021-04-13 20:14:06 +02:00
|
|
|
- @kbn/apm-utils
|
2021-04-23 18:48:48 +02:00
|
|
|
- @kbn/babel-code-parser
|
2021-04-19 12:37:56 +02:00
|
|
|
- @kbn/babel-preset
|
2021-06-24 05:50:49 +02:00
|
|
|
- @kbn/cli-dev-mode
|
2021-05-05 00:04:55 +02:00
|
|
|
- @kbn/config
|
2021-04-14 15:38:10 +02:00
|
|
|
- @kbn/config-schema
|
2021-05-05 18:33:23 +02:00
|
|
|
- @kbn/crypto
|
2021-04-29 00:46:33 +02:00
|
|
|
- @kbn/dev-utils
|
2021-05-13 21:39:15 +02:00
|
|
|
- @kbn/docs-utils
|
2021-05-05 21:52:01 +02:00
|
|
|
- @kbn/es
|
2021-06-30 05:33:02 +02:00
|
|
|
- @kbn/es-archiver
|
2021-04-30 21:14:18 +02:00
|
|
|
- @kbn/eslint-import-resolver-kibana
|
2021-04-30 23:31:38 +02:00
|
|
|
- @kbn/eslint-plugin-eslint
|
2021-04-26 21:09:08 +02:00
|
|
|
- @kbn/expect
|
2021-05-14 22:12:20 +02:00
|
|
|
- @kbn/i18n
|
2021-06-22 16:59:20 +02:00
|
|
|
- @kbn/interpreter
|
2021-05-28 16:02:44 +02:00
|
|
|
- @kbn/io-ts-utils
|
2021-04-28 17:01:22 +02:00
|
|
|
- @kbn/logging
|
2021-05-27 19:55:28 +02:00
|
|
|
- @kbn/mapbox-gl
|
|
|
|
- @kbn/monaco
|
2021-06-23 12:11:13 +02:00
|
|
|
- @kbn/optimizer
|
2021-06-24 05:49:04 +02:00
|
|
|
- @kbn/plugin-helpers
|
2021-06-03 22:26:17 +02:00
|
|
|
- @kbn/rule-data-utils
|
2021-07-22 20:44:54 +02:00
|
|
|
- @kbn/securitysolution-autocomplete
|
2021-05-12 23:55:37 +02:00
|
|
|
- @kbn/securitysolution-es-utils
|
2021-06-17 19:09:17 +02:00
|
|
|
- @kbn/securitysolution-hook-utils
|
2021-05-27 19:55:28 +02:00
|
|
|
- @kbn/securitysolution-io-ts-alerting-types
|
|
|
|
- @kbn/securitysolution-io-ts-list-types
|
|
|
|
- @kbn/securitysolution-io-ts-types
|
2021-05-04 21:19:10 +02:00
|
|
|
- @kbn/securitysolution-io-ts-utils
|
2021-05-20 20:36:07 +02:00
|
|
|
- @kbn/securitysolution-list-api
|
2021-05-25 02:38:14 +02:00
|
|
|
- @kbn/securitysolution-list-constants
|
2021-05-20 20:36:07 +02:00
|
|
|
- @kbn/securitysolution-list-hooks
|
2021-05-19 23:59:52 +02:00
|
|
|
- @kbn/securitysolution-list-utils
|
2021-10-26 22:56:40 +02:00
|
|
|
- @kbn/securitysolution-rules
|
2021-05-14 01:26:12 +02:00
|
|
|
- @kbn/securitysolution-utils
|
2021-05-14 22:14:45 +02:00
|
|
|
- @kbn/server-http-tools
|
2021-06-09 22:39:31 +02:00
|
|
|
- @kbn/server-route-repository
|
2021-06-28 16:58:41 +02:00
|
|
|
- @kbn/spec-to-console
|
2021-04-21 21:50:05 +02:00
|
|
|
- @kbn/std
|
2021-06-21 21:17:54 +02:00
|
|
|
- @kbn/storybook
|
2021-05-12 16:27:11 +02:00
|
|
|
- @kbn/telemetry-utils
|
2021-06-30 03:16:00 +02:00
|
|
|
- @kbn/test
|
2021-06-29 15:59:38 +02:00
|
|
|
- @kbn/test-subj-selector
|
2021-04-14 20:49:19 +02:00
|
|
|
- @kbn/tinymath
|
2021-06-22 19:11:24 +02:00
|
|
|
- @kbn/ui-framework
|
2021-09-16 21:06:46 +02:00
|
|
|
- @kbn/ui-shared-deps-npm
|
|
|
|
- @kbn/ui-shared-deps-src
|
2021-04-15 03:33:38 +02:00
|
|
|
- @kbn/utility-types
|
2021-04-22 18:55:38 +02:00
|
|
|
- @kbn/utils
|