Kibana Monorepo Packages
editKibana Monorepo Packages
editCurrently Kibana 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:
yarn kbn bootstrap
Building Non Bazel Packages
editNon Bazel packages can be built independently with
yarn kbn run build -i PACKAGE_NAME
Watching Non Bazel Packages
editNon Bazel packages can be watched independently with
yarn kbn watch -i PACKAGE_NAME
Building Bazel Packages
editBazel packages are built as a whole for now. You can use:
yarn kbn build-bazel
Watching Bazel Packages
editBazel packages are watched as a whole for now. You can use:
yarn kbn watch-bazel
List of Already Migrated Packages to Bazel
edit- @elastic/datemath
- @kbn/apm-utils
- @kbn/babel-preset
- @kbn/config-schema
- @kbn/tinymath
- @kbn/utility-types