* Validate current node version (#19154)
* feat(12976): node version validation at runtime.
* refact(12976): move the code into a static utilities class.
* test(12976): added first test case using jest.
* test(12976): added test cases for node_version.
* feat(12976): create setup env node to bootstrap babel, ts-node and node version validator.
* refact(12976): migrated node version code from es6 to es5.
* feat(12976): node version validation at runtime.
* refact(12976): move the code into a static utilities class.
* test(12976): added first test case using jest.
* test(12976): added test cases for node_version.
* feat(12976): create setup env node to bootstrap babel, ts-node and node version validator.
* refact(12976): migrated node version code from es6 to es5.
* fix(12976): remove one level from ts node register cache directory link.
* chore(12976): added caret to semver dependecy in order to support minor versions.
* refact(12976): small change from named import to default import on node version validator.
* refact(12976): removed ts_node_register and add the code to babel_register.
* feat(12976): split eslint config in order to properly support files built to run before and after node version validator. refact(12976): convert script files to es5 code. refact(12976): delete inline eslint configs from node version check related files.
* refact(12976): remove ts node register file.
* refact(12976): completely port setup_node_env to es5.
* refact(12976): remove babel_register invokation from external dependencies in scripts.
* refact(12976): move node_version code directly into node_version_validator inside setup_node_env folder.
* refact(12976): only node version validator for kbn script.
* Fix check_file_casing babel_register reference (#19457)
* chore(12976): fixed license headers on new files.
* [kbn-plugin-helpers] allow opt-ing out of dependency installation
* [plugin-helpers] rename buildIgnoreDependencies to skipInstallDependencies
* [plugin-helpers] use noop3 for test
* [plugin-helpers] fix test description
* [plugin-helpers] fix assertion
require uses a cache, so if the package.json file was changed before running build, the changes won't exist in the build runtime. using fs.readFileSync instead ensures that the information read from package.json is current.
Original commit: elastic/kibana-plugin-helpers@f78e891838
* observe includePlugins setting
* fix: move resolve up to config parser
this ensures that the path is resolved relative to the plugin root
Original commit: elastic/kibana-plugin-helpers@fd07d617a4
* feat: add translations path to build
included by default, to better match what's in the elastic products and even the plugin template
also add a translations path to the mock plugin for tests
* chore: add script to run tests with linting
Original commit: elastic/kibana-plugin-helpers@9871a4b11d
* bump @elastic/eslint-config-kibana and deps
* eslint --fix
* fix unused vars
some exceptions for tests
* move eslint-config-kibana to dev
* rename create_package function
* make .node-version looser, match internal checks
Original commit: elastic/kibana-plugin-helpers@6fac14bd51
* run is now a named export, added helpers for interacting with the kibana repo
* [config] override the kibana root config with KIBANA_ROOT envvar
Original commit: elastic/kibana-plugin-helpers@54a38cd9a2
* create windows cmd wrapper
* use windows cmd wrapper on browser tests
* be explicit about the mocha command location
* use windows cmd wrapper on server tests
* use windows cmd wrapper on build
default to using npm as well
Original commit: elastic/kibana-plugin-helpers@35f80a08ce
* remove scripts and devDependencies from package
these are only useful in development, and serve no purpose in the build
* refactor the package rewriter
* clean up the buildTarget before building
* run npm install after build creation
* break apart the create_build module
* add create_package modules
call it from within the build_action
* add flag to skip package zip creation
* rename skip-package flag to skip-archive
* rename rewritePackage to rewritePackageJson
* include lock and shrinkwrap files if they exist
* add test for skipping zip creation
* add some tests to build creation
Original commit: elastic/kibana-plugin-helpers@ef6b9c6332
* only modify root package.json file
previously this was modifying every package.json from node_modules as well
* refactor the build task
export the build, define helpers outside of the task
* allow custom kibana and build versions
both can be passed via flags
* allow custom build globs to be specified
* move build into its own module
* add simple option parsing tests
* update readme
* move dependency file appending into the action
* put source and target into variables
* move config file loading into a module
* refactor test_server_action slightly
be more explicit about the files option overwriting the plugin settings
* move default build patterns to plugin config
allows the setting to be overridden via the config file
* fix dirname on relative includes
trim any leading '../' off the path when moving it into the build target
* move node_module dirs into plugin_config module, use existing promises
* rename file_config => config_file
Original commit: elastic/kibana-plugin-helpers@743e4a37c2
* remove conditionl require in runner
add tasks module to load all tasks, throw if task does not exist
* change task signatures and action handlers
- tasks get plugin, run, and an options object
- action handler controls what goes into each task
- taskRunner wrapper moves the command object to the first argument
* change test command signature
allow files to be passed in, and pass all options to test:server and test:browser
* simplify the task runner
* fix typo in unknownOptions
* expose the task runner as the module's main
this way tasks can be run programatically without going through a cli parser
* add tests for task runner
* remove file passing for testAll
* add serverTestPaths to the plugin config
useful for overriding the value via a config file
* [config] plugin.serverTestPaths -> plugin.serverTestPatterns
Original commit: elastic/kibana-plugin-helpers@82af4df64e
* read json overrides, mix into defaults
* rename plugin config helper
* use the plugin config in start
Original commit: elastic/kibana-plugin-helpers@4cfbe28128