Skip to content

[7.x] [New Platform] Validate config upfront (#35453)#36439

Merged
mshustov merged 1 commit intoelastic:7.xfrom
mshustov:backport/7.x/pr-35453
May 10, 2019
Merged

[7.x] [New Platform] Validate config upfront (#35453)#36439
mshustov merged 1 commit intoelastic:7.xfrom
mshustov:backport/7.x/pr-35453

Conversation

@mshustov
Copy link
Copy Markdown
Contributor

Backports the following commits to 7.x:

* Introduce new convention for config definition.

We need to define a way to acquire configuration schema as a part of
plugin definition. Having schema we can split steps of
config validation and plugin instantiation.

* Discover plugins, read their schema and validate the config.

Config validation finished before core services and plugins read from it.
That allows us to fail fast and have predictable validation results.

* Instantiate plugins using DiscoveredPluginsDefinitions.

* Update tests for new API.

* test server is not created if config validation fails

* move plugin discovery to plugin service pre-setup stage.

Set validation schemes in ConfigService.preSetup stage.

* fix eslint problem

* generate docs

* address Rudolfs comments

* separate core services and plugins validation

* rename files for consistency

* address comments for root.js

* address comments #1

* useSchema everywhere for consistency. get rid of validateAll

* plugin system runs plugin config validation

* rename configDefinition

* move plugin schema registration in plugins plugins service

plugins system is not setup when kibana is run in optimizer mode,
so config keys aren't marked as applied.

* cleanup

* update docs

* address comments
@mshustov mshustov added the backport This PR is a backport of another PR label May 10, 2019
@elasticmachine
Copy link
Copy Markdown
Contributor

💚 Build Succeeded

@mshustov mshustov merged commit 581d499 into elastic:7.x May 10, 2019
@mshustov mshustov deleted the backport/7.x/pr-35453 branch May 10, 2019 14:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport This PR is a backport of another PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants