Commit graph

500 commits

Author SHA1 Message Date
Tyler Smalley
31ad5530b3
[ci] Run ES snapshot when possible (#22663) (#22788)
For instances where we would otherwise be running from source in a tracked elastic/elasticsearch branch, let's use a snapshot instead. This will eliminate some gradle issues we are experiencing in master.
2018-09-06 19:12:51 -07:00
Leanid Shutau
b705fed963
Integrate main i18n tool into build pipeline (#22254) (#22482)
* Integrate main i18n tool to build process

* Resolve comments

* Remove old task

* Replace default Error with FailError
2018-08-29 13:42:47 +03:00
Tim Roes
a5f8740656
Make panel action tests more generic (#22174) (#22196)
* Make panel action tests more generic

* Remove test file

* Add simple app tests

* Shorten/fix import

* Remove unneeded task

* Add debug output

* Allow duplicate --plugin-path params

* Remove debugging options

* Add README
2018-08-20 23:50:07 +02:00
Aleh Zasypkin
8e696b7369
[6.x] [Tests] Add http integration test setup (#22114)
* [Tests] Add http integration test setup

* Base path tests

* SSL tests

* Eslint fixes

* Remove env from config schema

* Rename folders so no_rewrite and rewrite match configs/tests

* wip

* Use self-signed cert for SSL test

* Improve basepath tests

* Run base path proxy server in dev mode for now

* Remove env from x-pack reporting config

* Remove redundant base-path tests

* Test SSL with redirectHttpFromPort set

* Test SSL with redirectHttpFromPort set

* Flesh out comments

* Remove some cruft

* Add SSL tests to CI run
2018-08-17 10:42:38 +02:00
Spencer
70b1ed6737
[TypeScript] add type-check script (#19325) (#21868)
* [TypeScript] add type-check script

* [ci] run scripts/type_check after linting

* [ts] improve filterProjectsByFlag readability

* fix typo

* simplify type signature
2018-08-10 10:20:19 -07:00
Spencer
22b5174acb [junitReports] Rename reports so they are auto-discovered by CI (#21502)
In order for the runbld project we use in CI to auto-discover the junit reports we generate they need to match `TEST-*.xml`, which will allow us to include more details in the failure emails, and push failure info to the build-stats cluster.

(cherry picked from commit 8d0b7e7f7e)
2018-07-31 12:50:57 -07:00
Stacey Gammon
38978a07ae
Add pluggable panel action tests (#20163) (#21378)
* Add pluggable panel action tests

* address code review comments

* update inspector snapshot

* remove temp declared ts module now that eui has EuiFlyout typings

* address code comments
2018-07-29 19:24:40 -04:00
archana
725782ebb7 Deprecate test:ui commands (#21092)
* Deprecate test:ui commands
2018-07-23 14:49:21 -05:00
archana
73d3883188
[6.x] [Functional Tests] Use @kbn/test on Kibana CI (#18967) (#20309)
* [Functional Tests] Use @kbn/test on Kibana CI (#18967)

* Replace test:api with @kbn/test runTests

* Improve CLI help menu 🆘

* Use --es-from

* Replace jenkins:selenium with kbn-test

* Validate cli args, fixing test in the process

* Clean up some stuff

* Code review fixes

* Explanation for collectCliArgs

* Remove exit codes, they're useless anyway.

* Make markdown vis test pass with dev_mode setting

* Tests

* Remove unneeded export

* Code review: move console logging up to cli.js

* Code review: refactor startServers and runTests to take single options collection

* Code review: Remove all things I am sure we do not use

* Improve tests

* Code review fixes

* Pass created log to runFtr, runElasticsearch, runKibanaServer

* Update --es-from option to --esFrom

* Let dev server run from snapshot by default
2018-06-28 19:03:35 -05:00
CJ Cenizal
c6be289f21
Fix misspellings (#19981) (#20284) 2018-06-27 20:50:06 -07:00
Tim Roes
9ba0689dcd
[6.x] Replace spy panels by Inspector (#16387) | Fix one inspector test (#20072) (#20076)
* Replace spy panels by Inspector (#16387)

* Add Inspector feature

* So long, and thanks for all the fish, spy panel

* Fix several functional tests

* Fix unit tests

* Fix spy panel button tests

* Replace old spy panel documentation

* Disable test temporarily until we have dashboard triggers

* Enter edit mode for dark theme test

* Fix some more functional tests

* Fix more functional tests

* More test fixing

* Fix more functional tests

* Allow opening the inspector via loader handler

* Refactor InspectorViewChooser, remove unused CSS

* Remove dead code

* Fix data download button style

* Remove redundant code

* Load inspectorViews for dashboard_viewer

* Extract inspector views to custom core_plugin

* Switch API to TypeScript 🎉

* Design changes

* Remove icons from views

* Design changes

* Improve typings of API

* Add typing to all adapters

* Show loading spinner in request selector

* Rewrite InspectorView to TypeScript

* Fix help text for data view

* Remove deprecated React lifecycle methods

* Embed inspector into dashboard panel actions

* Remove temporary inspector trigger

* Remove old CSS

* Fix dashboard trigger for new panel action

* Add tests for InspectorPanel and DataAdapter

* Produce a hierarchical table if the vis is hierarchical

* Remove allowJs option again

* Add missing Apache license headers

* Close inspector on dashboard when navigating away

* Use proper title for dashboard panels

* Fix functional tests

* Skip broken test for now

* Flush view chooser button

* Add request adapter tests

* Skip more tests, broken due to typescript

* Add Request Time description

* Add description for courier request

* Fix tests

* Replace icon by new (not yet released) icon

* Finalize design of inspector

* Remove discover test, that relied on spy panels

* Change API to be properly mockable in tests

* Add aria-live region for request status

* Replace old method in functional tests

* Replace abitrary magic number

* Use object destructuring in vis

* Fix issue with crashing requests view

* Add request time tooltip

* Get request body of correct search source

* Make filter buttons properly keyboard accessible

* Follow Dave's design suggestions

* Remove redundant request from name

* Remove unneeded comments

* WIP raw-formatted values

* Fix filtering issue

* Fix tests and more license headers

* Add data view tests

* Remove search from table

* Fix typos

* Implement review suggestion

* Remove artificial delays for testing

* Fix new panel action structure

* Minor design adjustments

* Fix failing functional test

* Update failing snapshot test

* Implement final wording

* Apply new EUI styling

* Fix closing inspector in tests

* Fix sorting of table

* Align punctuation between tooltips

* Fix test that doesn't exist on master

* Fix one inspector test (#20072)

* Remove file that came accidentally back due to merging

* Fix accidental merge paste

* Fix 6.4 test failures
2018-06-21 11:45:13 +02:00
Spencer
4f29b323bf
Backport/19383/6.x (#19487)
* [eslint][tslint] require Apache 2.0 license headers

(cherry picked from commit 337fea30b9)

* [kbn-eslint-plugin-license-header] don't try to fix files with hashbangs

(cherry picked from commit db79f1501e)

* [eslint][tslint] autofix license headers
2018-05-28 20:24:23 -07:00
Spencer
068b6652c0
[6.x] Check filename casing in CI (#19282) (#19414)
Backports the following commits to 6.x:
 - Check filename casing in CI  (#19282)
2018-05-24 23:09:30 -07:00
spalger
73173f11c3 Revert "enable verbose ftr logging"
This reverts commit 887e528055.
2018-05-24 13:23:57 -07:00
Spencer
37487a8472
[6.x] [tslint] lint typescript code (#19105) (#19331)
Backports the following commits to 6.x:
 - [tslint] lint typescript code  (#19105)
2018-05-22 15:27:06 -07:00
Spencer
07f4e5ad77
[6.x] [typescript] add typescript support for the server and browser (#19104) (#19223)
Backports the following commits to 6.x:
 - [typescript] add typescript support for the server and browser  (#19104)
2018-05-21 10:42:59 -07:00
archana
eae18989a3
Functional test setup with kbn-test package (#18568) (#19174)
Restructure testing with kbn-test package

 - Run with multiple configs, move cli options to config
 - Package-ify kbn-test
 - Eventually we'll have functional_test_runner live in a package
of its own, and then this kbn-test will use that as a dependency,
probably still as a devDependency.
 - Implement functional_tests_server
 - Collapse single and multiple config apis into one command

Use kbn-es

Replace es_test_cluster + es_test_config with kbn/test utils

Implement new createEsTestCluster

Improve scripts, jsdocs, cli top-level tools

Lift error handling to the top level
2018-05-17 13:42:43 -05:00
Spencer
7dbec2e1e7
[6.x] [mocha] remove grunt-simple-mocha (#19079) (#19139)
* [mocha] run tests with mocha script, remove grunt-simple-mocha

* [ci] force colored output

* [ci] disable color when reading the yarn bin

* [dev/build/exec] support tooling log having its own chalk

* [dev/mocha] avoid changing the cwd of the process

* [dev/mocha] only match files, speed up negative matches

* [cli/serve/test] strip ansi control characters from logs

* [ci] disable color in all `yarn bin` invocations

* [dev/mocha] cleanup old runInBand check

* [dev/mocha] enable gloabl leak checks
2018-05-16 16:25:59 -07:00
spalger
7df7ab92d6 Revert "Functional test setup with kbn-test package (#18568)"
This reverts commit c2265e3931.
2018-05-15 13:16:36 -07:00
archana
c2265e3931 Functional test setup with kbn-test package (#18568)
Restructure testing with kbn-test package

 - Run with multiple configs, move cli options to config
 - Package-ify kbn-test
 - Eventually we'll have functional_test_runner live in a package
of its own, and then this kbn-test will use that as a dependency,
probably still as a devDependency.
 - Implement functional_tests_server
 - Collapse single and multiple config apis into one command

Use kbn-es

Replace es_test_cluster + es_test_config with kbn/test utils

Implement new createEsTestCluster

Improve scripts, jsdocs, cli top-level tools

Lift error handling to the top level
2018-05-15 12:33:01 -05:00
Jenkins CI
bc5b51554d Migrate x-pack-kibana source to kibana 2018-04-24 13:49:26 -07:00
Spencer
af79bdb5fc
[6.x] Add/generate/verify NOTICE.txt file (#17504) (#17550)
* [dev/notice] add scripts for generating NOTICE.txt file

* [notice] react-resize-detector@0.6.0 was removed in b445389b79

* [notice] move notice text into relevant source

* [dev/notice] Generate NOTICE.txt file

* [jenkins] verify that notice.txt is up to date in CI

* [tasks/notice] update test to use new NOTICE.txt file

* [dev/notice] update company name in NOTICE.txt

* [notice/cli] exit with 0 when --help requested

* [notice/cli] add helpful logging

* [notice/cli] use --validate flag name instead

* [notice/cli] simplify NEWLINE_RE, ignore obscure line endings

* [utils/decode_geo_hash] fixup comment

* [utils/decode_geo_hash] remove useless comment
2018-04-04 11:52:58 -07:00
Jen Huang
c0b715dde7
Add aria-label attributes to indexed fields table, and use EuiIconTip (#17427) (#17436)
* Add aria-label attributes to indexed fields table, and use EuiIconTip
* Use EUI 0.0.35
* Add `Apache License, Version 2.0` to list
2018-03-28 11:26:43 -07:00
Rashmi Kulkarni
54f3a803a8
Large fileds 6.x (#17404)
* adding large_string_test (#17312)

* adding large_string_test

* removed a failing test, modified the existing one

* new line at the end of mappings.json

* removed the data.json file and also removed the navigateTo() and clickKibanaIndices() as createIndexPattern() takes care of it

* more modifications

* Test for Large number of Fields in Kibana.  (#16237)

* test huge data

* new file for testing large number of fields
*  testing large fields
* large_fields_test
* add the unload of es_archiver
* incorporated the changes in kibana.yml
* Revert "incorporated the changes in kibana.yml"
This reverts commit 8682121678.
* cleanup
* code simplification
* removed commented code
2018-03-26 13:29:39 -07:00
Tyler Smalley
ffd2fe83e3
[kbn-es] Package for managing Elasticsearch during dev and testing (#17168) (#17273)
Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
2018-03-21 17:48:49 -07:00
Lukas Olson
12246483d6 Create grunt task to generate parsers from peg files (#17069)
* Create grunt task to generate parsers from peg files

* Leave comment

* Move grunt config to config/
2018-03-21 16:56:18 -07:00
Spencer
3ba95d2bff
[yarn] upgrade sha.js pre-emptively due to license changes (#17292) (#17293) 2018-03-20 16:32:33 -07:00
Tyler Smalley
9f16b6af66 Adds additional CC licenses (#16969)
Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
2018-03-16 16:41:25 -07:00
Jonathan Budzenski
209c4df1c0
[build] Turn on optimizeBuild logging (#16205) 2018-03-15 12:34:49 -05:00
archana
aa81248d5a Move proc_runner from x-pack-kibana into kibana (#17120)
* [tests] add proc_runner from x-pack-kibana

* [tests] implement proc_runner deps

* [tests] fix proc_runner dep

* [packages] move proc_runner into kbn-proc-runner

* [kbn-proc-runner] Package it

* [kbn-proc-runner] Chalk it up

* [kbn-proc-runner] Package.json

* Both kbn-proc-runner and kbn-utils depending on review. Sigh.

* Rename to kbn-dev-util, remove kbn-proc-runner

* Test proc-runner

* Add babel

* [proc-runner] build fixes

* Recreate yarn.locks, add mocha tests to simplemocha config
2018-03-15 01:59:22 -05:00
Spencer
2013bb986d
[@kbn/ui-framework] move ui-framework to a package (#17085) (#17128)
* [@kbn/ui-framework] move ui-framework to a package

* [@kbn/ui-framework] restore doc_site index.html and fix build task names

* [jest] always ignore modules in target dirs
2018-03-13 12:54:05 -07:00
Jonathan Budzenski
1def6ed78f
[6.x][license csv report] Support directory flag (#17075)
* [license csv report] Support directory flag (#17070)

* [license report] support directory flag

* override png-js

* override eslint-plugin-kibana-custom

* remove eslint-plugin-kibana-custom override
2018-03-09 16:53:39 -06:00
Spencer
2197cdab12
[kbn-pm] rename from kbn-build (#16739) (#16742) 2018-02-14 11:51:40 -07:00
Kim Joar Bekkelund
352966720e
Production package example: datemath (#16531) (#16719) 2018-02-13 23:58:49 +01:00
Spencer
acd74a2b6b
[6.x] Condense build task (#16687) (#16689)
* [build] don't copy unwanted files

* [build] condense mkdir/touch tasks

* [i18n] verifyTranslations task has nothing to do with the build, just run in tests
2018-02-12 17:46:12 -07:00
Spencer
73ad7e0545
[6.x] Babel preset package (#16479) (#16511)
* [babel-preset] turn into a package

* switch to @kbn namespace

* [babel] pin babel-preset-env to 1.4.0, newer versions don't shim symbols

* [yarn] update lockfile
2018-02-05 08:49:10 -07:00
Kim Joar Bekkelund
96d8995315
Build multiple Kibana packages for production (#16313) (#16496)
* Build packages before running ESLint on CI

* Add production task to kbn-build

* Ensure packages are bootstrapped before running the build

* Run ESLint on kbn-build
2018-02-02 22:47:18 +01:00
CJ Cenizal
7bd9876453
Extract fatal notification into fatalError service, add support for EuiToast notifications (#15749) (#16330)
* Reorganize notify/lib files. Extract fatal notification into a fatalError service.
* Convert notify/lib tests to use Jest.
* Add ToastNotifications, GlobalToastList, and documentation.
* Remove notify.info method.
* Add createFirstIndexPatternPrompt.
* Update testSubjects.exists to accept a timeout argument.
* Skip some flaky tests.
2018-01-27 18:00:51 -08:00
Court Ewing
9f76635fdf
Remove angular-translate (#13066) (#16015)
* remove angular translate

* remove angular-translate deps from yarn.lock
2018-01-27 10:47:35 -08:00
Kim Joar Bekkelund
9c38fae1e2
Upgrade license checker (#16147) (#16149) 2018-01-19 09:46:46 +01:00
Kim Joar Bekkelund
9b3524d5a7
Licenses csv overrides (#16136) (#16138)
* Actually override licenses when writing csv

* Cleaner overrides

* Remove all the unnecessary overrides
2018-01-18 22:42:44 +01:00
Tyler Smalley
1a79309a2e
[optimizer] More aggressive chunking of common/vendor code (#15907) (#16051)
Previously, we were not aggressive in combining common code which resulted in duplicates included in the bundles.

As an example `node_modules/elasticsearch-browser/elasticsearch.angular.js` is present in the following chunks:

* kibana.bundle.js
* dashboardViewer.bundle.js
* apm.bundle.js
* monitoring.bundle.js
* ml.bundle.js
* timelion.bundle.js
* graph.bundle.js

Vendored code (anything inside node_modules) is placed in vendors.bundle.js while everything else with more than two references is placed in commons.bundle.js.

This has a couple positive side-effects (numbers are with x-pack & canvas):

* Decreased build time. Seeing builds go from 475.76 seconds to 274.72.
* Decreased memory overhead. Uses roughly 1/3 the memory overhead.
* Decreased bundle size. A 68% reduction in overall bundle size. Going from 66.16 MB to 21.13 MB.

Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
2018-01-15 12:38:19 -08:00
Kim Joar Bekkelund
a817517574
[6.x] Switch to Yarn (#15485) (#15955)
* Switch to Yarn (#15485)

* switch to yarn

* cleanup misc references to npm

* [yarn] loosen dependency ranges so yarn will merge more deps

* fix linting error now that moment uses ESM

* [licenses] font-awesome changed the format of its license id

* Use local yarn

* Misc fixes

* eslintignore built yarn file

* Remove mkdir which doesn't do what it should do

* Check build without upgrading lots of versions

* Fix license check

* too many moments

* Better description

* Review fixes

* Lock to angular@1.6.5

* More specific version locks

* Revert "More specific version locks"

This reverts commit 11ef81102e.

* Revert "Lock to angular@1.6.5"

This reverts commit 3ade68c14c.

* rm yarn.lock; yarn

* Forcing a specific version of React, Angular, Moment

* Using vendored version of yarn in ci

* Use --frozen-lockfile

* fixes

* Update lockfile
2018-01-10 16:54:20 +01:00
Spencer
ccb794980a
[6.x] [optimizer] run webpack compilation ASAP (no more laziness) (#15795) (#15917)
* [optimizer] run webpack compilation ASAP (no more laziness)

* [optimize] fix variable reference
2018-01-09 10:09:44 -07:00
Court Ewing
73eced9e52
Revert "[optimizer] More aggressive chunking of common/vendor code (#15816)" (#15878) (#15879)
This reverts commit 92b373b304.
2018-01-07 09:31:15 -05:00
Tyler Smalley
303f98a25a [optimizer] More aggressive chunking of common/vendor code (#15816)
Previously, we were not aggressive in combining common code which resulted in duplicates included in the bundles.

As an example `node_modules/elasticsearch-browser/elasticsearch.angular.js` is present in the following chunks:

* kibana.bundle.js
* dashboardViewer.bundle.js
* apm.bundle.js
* monitoring.bundle.js
* ml.bundle.js
* timelion.bundle.js
* graph.bundle.js

Vendor code (anything inside Kibana's node_modules) is placed in vendors.bundle.js while everything else with more than two references is placed in commons.bundle.js.

This has a couple positive side-effects (numbers are with x-pack & canvas):

* Decreased build time. Seeing builds go from 475.76 seconds to 274.72.
* Decreased memory overhead. Uses roughly 1/3 the memory overhead.
* Decreased bundle size. A 68% reduction in overall bundle size. Going from 66.16 MB to 21.13 MB.

Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
2018-01-05 10:13:06 -08:00
CJ Cenizal
d67d6206e6
EUI: Reset CSS #2 (#15657) (#15676)
* Add EUI v0.0.7 as a dependency.
- Add support for using dark theme EUI CSS in Dashboard.
- Set light theme as the default.
- Add comments to chrome.jade about role of theme node.
- Add (WTFPL OR MIT) to acceptable licenses.

* Remove old reset CSS.
- Remove naked element selectors from base.less.
- Remove Bootstrap resets.
- Remove UI Framework reset.
- Remove unused reset styles from UI Framework.

* Fix CSS regressions caused by removal of CSS reset.
- Replace usage of sr-only with euiScreenReaderOnly.
- Apply euiButtonEmpty classes to the 'Add a filter' button.
- Fix Notification padding and layout.
- Apply euiTabs styles to Timepicker mode tabs.
- Fix layout of Available Fields heading in Discover.
- Add padding to Popular Fields container in Discover.
- Push down Selected Fields heading in Discover sidebar.
- Fix appearance of links in Discover sidebar.
- Fix height of pills in Filter Bar.

* Fix timepicker tests.
- Remove kbn-accessible-click from timepicker buttons.

* Fix functional tests.
- Use byCssSelector inside of testSubjects.find.
- Delete flaky view_edit.js test: 'when time changed is stored with dashboard'.
- Delete flaky view_edit.js test: 'and preserves edits on cancel > when time changed is stored with dashboard'.
- Delete flake Gauge Chart tests. EUI changed the font size, and the text within the gauges doesn't render when the window is too small.
2017-12-18 17:39:06 -08:00
Spencer
b4bd640a17
[6.x] [CI] Produce junit test reports (#15281) (#15437)
* [mocha] use custom reporter for legible results in jenkins

* [jest] use custom result processor for legible results in jenkins

* [karma] enable junit output on CI

* [mocha/junitReporter] accept rootDirectory as configuration

* [jest/reporter] use reporters option added in jest 20

* [toolingLog] remove black/white specific colors

* [dev/mocha/junit] no reason for junit to be a "reporter"

* typos

* [dev/mocha/junit] use else if

* [karma/junit] use string#replace for explicitness

* [junit] use test file path as "classname"

* [ftr/mocha] no longer a "console" specific reporter
2017-12-05 18:21:38 -07:00
Spencer
466fb4b010
[6.x] [savedObjects] Use index template (#14271) (#15103)
* [es][savedObjects/index] put template on each savedObject write

The elasticsearch plugin currently checks for the Kibana index on each iteration of the healthCheck, and creates it if it does not exist. This removes that step from the healthCheck and instead, before each savedObject is written to elasticsearch, ensures that Elasticsearch has the necessary index template should the write result in index creation.

The healthCheck still has the `patchKibanaIndex()` logic, which checks the type in the Kibana index and adds any missing types. This step now does nothing when the Kibana index does not exist, and does what it has always done when it does.

* [ftr] remove unused kibanaIndex service

(cherry picked from commit b1ef897dafeb6d43fe279776e44a9d793a389dc3)

* [savedObjects/integration] create now creates kibana index

* [es/healthCheck] remove use of format()

* [es/healthCheck/tests] use sinon assertions

* [es/patchKibanaIndex] test for kibana index missing behavior

* [savedObjects/errors] add tests for EsAutoCreateIndexError

* [savedObjects/config] deprecate and remove savedObjects.indexCheckTimeout config

* use dangling commas consistently

* [ui/error_auto_create_index] fix class names

* [ui/savedObjectsClient] no need to specify basePath

* [eslint] fix linting issue
2017-11-21 18:26:29 -07:00
Spencer
09e582f82d
[6.x] [precommit hook] add dev script (#14890) (#15065)
* [precommitHook] move to dev script

* [eslint] fix lint error

* [dev/eslint] do simply boolean checks first

* [dev] use shared REPO_ROOT constant

* [dev/File] precompute relative/ext of path

* [dev/eslint] fix relative import

* [dev/eslint] fix typos

* [grunt] remove unused run:eslintStaged config

* [dev/run] only create log if we are going to use it

* [dev/run/isFailError] ensure return value is Boolean

* [dev/precommitHook] use less intermediate vars
2017-11-20 17:00:37 -07:00