kibana
kibana copied to clipboard
Files plugin
Summary
Introduce the MVP core of the files plugin.
To reviewers
The code in x-pack/plugins/files has been reviewed (mostly by @vadimkibana) in individual smaller PRs that were merged to this feature branch. Feel free to read this code and comment if you want to but it is more important to make sure that code external to this folder is in order for this PR.
TODO
- [x] Fix build issues with not being able to access
cbor-x/package.json(https://github.com/kriszyp/cbor-x/pull/40). - [x] Address documentation issues (missing API comments, broken links etc)
High level overview
In C4 terms this diagram is at the components level.
Note: The end of the arrow (->) points to the thing being used which implies the start of the arrow (--) knows about the thing being used. Note: This is a simplified model of to communicate the high level structure.

Checklist
Delete any items that are not applicable to this PR.
- [x] Documentation was added for features that require explanation or tutorials
- [x] Unit or functional tests were updated or added to match the most common scenarios
Risk Matrix
| Risk | Probability | Severity | Mitigation/Notes |
|---|---|---|---|
| Developers start integrating this into their plugins | Low | Low | We can add a notice in the root of the plugin asking developers to reach out to our team before using files so that we can learn about their use case. Accompanying UI components are also WIP. |
@elasticmachine merge upstream
@elasticmachine merge upstream
@elasticmachine merge upstream
@elasticmachine merge upstream
@elasticmachine merge upstream
@elasticmachine merge upstream
Pinging @elastic/kibana-app-services (Team:AppServicesUx)
@elasticmachine merge upstream
@elasticmachine merge upstream
:green_heart: Build Succeeded
- Buildkite Build
- Commit: 3d76fc08d457a24f199fb06378e044ef6e6ac383
Metrics [docs]
Module Count
Fewer modules leads to a faster build time
| id | before | after | diff |
|---|---|---|---|
files |
- | 12 | +12 |
Public APIs missing comments
Total count of every public API that lacks a comment. Target amount is 0. Run
node scripts/build_api_docs --plugin [yourplugin] --stats commentsfor more detailed information.
| id | before | after | diff |
|---|---|---|---|
files |
- | 3 | +3 |
Public APIs missing exports
Total count of every type that is part of your API that should be exported but is not. This will cause broken links in the API documentation system. Target amount is 0.
Run node scripts/build_api_docs --plugin [yourplugin] --stats exportsfor more detailed information.
| id | before | after | diff |
|---|---|---|---|
files |
- | 2 | +2 |
Page load bundle
Size of the bundles that are downloaded on every page load. Target size is below 100kb
| id | before | after | diff |
|---|---|---|---|
files |
- | 7.5KB | +7.5KB |
Saved Objects .kibana field count
Every field in each saved object type adds overhead to Elasticsearch. Kibana needs to keep the total field count below Elasticsearch's default limit of 1000 fields. Only specify field mappings for the fields you wish to search on or query. See https://www.elastic.co/guide/en/kibana/master/development-plugin-saved-objects.html#_mappings
| id | before | after | diff |
|---|---|---|---|
file |
- | 10 | +10 |
fileShare |
- | 5 | +5 |
| total | +15 |
Unknown metric groups
API count
| id | before | after | diff |
|---|---|---|---|
files |
- | 222 | +222 |
ESLint disabled in files
| id | before | after | diff |
|---|---|---|---|
files |
- | 2 | +2 |
ESLint disabled line counts
| id | before | after | diff |
|---|---|---|---|
files |
- | 2 | +2 |
Total ESLint disabled count
| id | before | after | diff |
|---|---|---|---|
files |
- | 4 | +4 |
History
- :broken_heart: Build #64142 failed e86869ee17386929fb7bba6cd963c84cd3b51fdb
- :broken_heart: Build #63683 failed ce622010d0f63590ba7631185078b4eaa42f57e0
- :broken_heart: Build #63606 failed e4a5e7e08c8c1285cde84bb088ae5cd1d936f98e
- :broken_heart: Build #63220 failed 33675dd13af0c279f0b92e2e6a7e1ebe58661ab3
- :green_heart: Build #63113 succeeded 5cee05ccce7698c69c330a092d66e6993ba1b248
To update your PR or re-run it, just comment with:
@elasticmachine merge upstream