Skip to content

[ILM] TS conversion of Index Management plugin extension#76517

Merged
yuliacech merged 5 commits intoelastic:masterfrom
yuliacech:ilm_index_management_ts
Sep 4, 2020
Merged

[ILM] TS conversion of Index Management plugin extension#76517
yuliacech merged 5 commits intoelastic:masterfrom
yuliacech:ilm_index_management_ts

Conversation

@yuliacech
Copy link
Copy Markdown
Contributor

@yuliacech yuliacech commented Sep 2, 2020

Summary

(replaces #76308)
This PR converts Index Management plugin extension to TypeScript as an ongoing effort of converting the ILM plugin #74271. No UI/UX changes were made in this PR. To test for any regression, navigate to Index Management plugin and check following features in the Indices tab:

  • Action button to retry a lifecycle policy (only shown if all indices in the list have a lifecycle phase error)
  • Action button to add a lifecycle policy (if the index is not managed already)
  • Action button to delete a lifecycle policy (if the index is managed)
  • A banner on top of the indices list if there is an index with a lifecycle phase error (an error can be created by setting non existent snapshot policy name in Delete phase, for example)
  • A section with lifecycle policy information in the Index details flyout (only shown if the index is managed)
  • A filter for lifecycle status and lifecycle phase

Todo

After this PR and policies table conversion PR #76006 are both merged, a follow-up PR will convert all the remaining js files, such as jest tests, services and helpers, also any remaining any types will be cleaned up to complete #74271

@yuliacech yuliacech marked this pull request as ready for review September 2, 2020 15:35
@yuliacech yuliacech requested a review from a team as a code owner September 2, 2020 15:35
@yuliacech yuliacech added release_note:skip Skip the PR/issue when compiling release notes Team:Kibana Management Dev Tools, Index Management, Upgrade Assistant, ILM, Ingest Node Pipelines, and more t// v7.10.0 v8.0.0 labels Sep 2, 2020
@elasticmachine
Copy link
Copy Markdown
Contributor

Pinging @elastic/es-ui (Team:Elasticsearch UI)

@yuliacech
Copy link
Copy Markdown
Contributor Author

@elasticmachine merge upstream

@yuliacech
Copy link
Copy Markdown
Contributor Author

@elasticmachine merge upstream

@yuliacech
Copy link
Copy Markdown
Contributor Author

Hi @alisonelizabeth ,
thank you for your review on my PR #76308. Here is a new branch where I added your suggestions. Specifically, I imported Index type and extended it in ILM. I couldn't import from server folder in IM to public folder in ILM, so I moved the type to common folder in IM. What do you think?

@kibanamachine
Copy link
Copy Markdown
Contributor

💛 Build succeeded, but was flaky


Test Failures

Accessibility Tests.test/accessibility/apps/discover·ts.Discover Load a new search from the panel

Link to Jenkins

Standard Out

Failed Tests Reporter:
  - Test has failed 3 times on tracked branches: https://github.com/elastic/kibana/issues/59975

[00:00:00]       │
[00:00:00]         └-: Discover
[00:00:00]           └-> "before all" hook
[00:00:00]           └-> "before all" hook
[00:00:00]             │ info [discover] Loading "mappings.json"
[00:00:00]             │ info [discover] Loading "data.json.gz"
[00:00:00]             │ info [o.e.c.m.MetadataDeleteIndexService] [kibana-ci-immutable-centos-tests-xxl-1599141036146802650] [.kibana_1/iTiO-HEoSZynBZqFICzvAw] deleting index
[00:00:00]             │ info [discover] Deleted existing index [".kibana_1"]
[00:00:00]             │ info [o.e.c.m.MetadataCreateIndexService] [kibana-ci-immutable-centos-tests-xxl-1599141036146802650] [.kibana] creating index, cause [api], templates [], shards [1]/[1]
[00:00:00]             │ info [discover] Created index ".kibana"
[00:00:00]             │ debg [discover] ".kibana" settings {"index":{"number_of_replicas":"1","number_of_shards":"1"}}
[00:00:00]             │ info [discover] Indexed 2 docs into ".kibana"
[00:00:00]             │ info [o.e.c.m.MetadataMappingService] [kibana-ci-immutable-centos-tests-xxl-1599141036146802650] [.kibana/W6fMXq_QQoagedjC6Dt1tA] update_mapping [_doc]
[00:00:00]             │ debg Migrating saved objects
[00:00:00]             │ proc [kibana]   log   [14:05:48.036] [info][savedobjects-service] Creating index .kibana_2.
[00:00:00]             │ info [o.e.c.m.MetadataCreateIndexService] [kibana-ci-immutable-centos-tests-xxl-1599141036146802650] [.kibana_2] creating index, cause [api], templates [], shards [1]/[1]
[00:00:00]             │ info [o.e.c.r.a.AllocationService] [kibana-ci-immutable-centos-tests-xxl-1599141036146802650] updating number_of_replicas to [0] for indices [.kibana_2]
[00:00:00]             │ proc [kibana]   log   [14:05:48.180] [info][savedobjects-service] Reindexing .kibana to .kibana_1
[00:00:00]             │ info [o.e.c.m.MetadataCreateIndexService] [kibana-ci-immutable-centos-tests-xxl-1599141036146802650] [.kibana_1] creating index, cause [api], templates [], shards [1]/[1]
[00:00:00]             │ info [o.e.c.r.a.AllocationService] [kibana-ci-immutable-centos-tests-xxl-1599141036146802650] updating number_of_replicas to [0] for indices [.kibana_1]
[00:00:01]             │ info [o.e.c.m.MetadataCreateIndexService] [kibana-ci-immutable-centos-tests-xxl-1599141036146802650] [.tasks] creating index, cause [auto(task api)], templates [], shards [1]/[1]
[00:00:01]             │ info [o.e.c.r.a.AllocationService] [kibana-ci-immutable-centos-tests-xxl-1599141036146802650] updating number_of_replicas to [0] for indices [.tasks]
[00:00:01]             │ info [o.e.t.LoggingTaskListener] [kibana-ci-immutable-centos-tests-xxl-1599141036146802650] 106 finished with response BulkByScrollResponse[took=132.3ms,timed_out=false,sliceId=null,updated=0,created=2,deleted=0,batches=1,versionConflicts=0,noops=0,retries=0,throttledUntil=0s,bulk_failures=[],search_failures=[]]
[00:00:01]             │ info [o.e.c.m.MetadataDeleteIndexService] [kibana-ci-immutable-centos-tests-xxl-1599141036146802650] [.kibana/W6fMXq_QQoagedjC6Dt1tA] deleting index
[00:00:01]             │ proc [kibana]   log   [14:05:49.026] [info][savedobjects-service] Migrating .kibana_1 saved objects to .kibana_2
[00:00:01]             │ info [o.e.c.m.MetadataMappingService] [kibana-ci-immutable-centos-tests-xxl-1599141036146802650] [.kibana_2/-YgyffnjQ6WQhuUWk7YuWw] update_mapping [_doc]
[00:00:01]             │ info [o.e.c.m.MetadataMappingService] [kibana-ci-immutable-centos-tests-xxl-1599141036146802650] [.kibana_2/-YgyffnjQ6WQhuUWk7YuWw] update_mapping [_doc]
[00:00:01]             │ proc [kibana]   log   [14:05:49.298] [info][savedobjects-service] Pointing alias .kibana to .kibana_2.
[00:00:02]             │ proc [kibana]   log   [14:05:49.441] [info][savedobjects-service] Finished in 1409ms.
[00:00:02]             │ debg applying update to kibana config: {"accessibility:disableAnimations":true,"dateFormat:tz":"UTC"}
[00:00:02]             │ info [o.e.c.m.MetadataMappingService] [kibana-ci-immutable-centos-tests-xxl-1599141036146802650] [.kibana_2/-YgyffnjQ6WQhuUWk7YuWw] update_mapping [_doc]
[00:00:03]             │ info [logstash_functional] Loading "mappings.json"
[00:00:03]             │ info [logstash_functional] Loading "data.json.gz"
[00:00:03]             │ info [o.e.c.m.MetadataCreateIndexService] [kibana-ci-immutable-centos-tests-xxl-1599141036146802650] [logstash-2015.09.22] creating index, cause [api], templates [], shards [1]/[0]
[00:00:03]             │ info [o.e.c.r.a.AllocationService] [kibana-ci-immutable-centos-tests-xxl-1599141036146802650] current.health="GREEN" message="Cluster health status changed from [YELLOW] to [GREEN] (reason: [shards started [[logstash-2015.09.22][0]]])." previous.health="YELLOW" reason="shards started [[logstash-2015.09.22][0]]"
[00:00:04]             │ info [logstash_functional] Created index "logstash-2015.09.22"
[00:00:04]             │ debg [logstash_functional] "logstash-2015.09.22" settings {"index":{"analysis":{"analyzer":{"url":{"max_token_length":"1000","tokenizer":"uax_url_email","type":"standard"}}},"number_of_replicas":"0","number_of_shards":"1"}}
[00:00:04]             │ info [o.e.c.m.MetadataCreateIndexService] [kibana-ci-immutable-centos-tests-xxl-1599141036146802650] [logstash-2015.09.20] creating index, cause [api], templates [], shards [1]/[0]
[00:00:04]             │ info [o.e.c.r.a.AllocationService] [kibana-ci-immutable-centos-tests-xxl-1599141036146802650] current.health="GREEN" message="Cluster health status changed from [YELLOW] to [GREEN] (reason: [shards started [[logstash-2015.09.20][0]]])." previous.health="YELLOW" reason="shards started [[logstash-2015.09.20][0]]"
[00:00:04]             │ info [logstash_functional] Created index "logstash-2015.09.20"
[00:00:04]             │ debg [logstash_functional] "logstash-2015.09.20" settings {"index":{"analysis":{"analyzer":{"url":{"max_token_length":"1000","tokenizer":"uax_url_email","type":"standard"}}},"number_of_replicas":"0","number_of_shards":"1"}}
[00:00:04]             │ info [o.e.c.m.MetadataCreateIndexService] [kibana-ci-immutable-centos-tests-xxl-1599141036146802650] [logstash-2015.09.21] creating index, cause [api], templates [], shards [1]/[0]
[00:00:04]             │ info [o.e.c.r.a.AllocationService] [kibana-ci-immutable-centos-tests-xxl-1599141036146802650] current.health="GREEN" message="Cluster health status changed from [YELLOW] to [GREEN] (reason: [shards started [[logstash-2015.09.21][0]]])." previous.health="YELLOW" reason="shards started [[logstash-2015.09.21][0]]"
[00:00:04]             │ info [logstash_functional] Created index "logstash-2015.09.21"
[00:00:04]             │ debg [logstash_functional] "logstash-2015.09.21" settings {"index":{"analysis":{"analyzer":{"url":{"max_token_length":"1000","tokenizer":"uax_url_email","type":"standard"}}},"number_of_replicas":"0","number_of_shards":"1"}}
[00:00:10]             │ info [o.e.m.j.JvmGcMonitorService] [kibana-ci-immutable-centos-tests-xxl-1599141036146802650] [gc][27] overhead, spent [306ms] collecting in the last [1s]
[00:00:13]             │ info progress: 2407
[00:00:23]             │ info progress: 12940
[00:00:24]             │ info [logstash_functional] Indexed 4633 docs into "logstash-2015.09.22"
[00:00:24]             │ info [logstash_functional] Indexed 4757 docs into "logstash-2015.09.20"
[00:00:24]             │ info [logstash_functional] Indexed 4614 docs into "logstash-2015.09.21"
[00:00:25]             │ debg applying update to kibana config: {"defaultIndex":"logstash-*"}
[00:00:25]             │ debg navigating to discover url: http://localhost:6171/app/discover#/
[00:00:25]             │ debg navigate to: http://localhost:6171/app/discover#/
[00:00:26]             │ debg browser[INFO] http://localhost:6171/app/discover?_t=1599141973372#/ 341 Refused to execute inline script because it violates the following Content Security Policy directive: "script-src 'unsafe-eval' 'self'". Either the 'unsafe-inline' keyword, a hash ('sha256-P5polb1UreUSOe5V/Pv7tc+yeZuJXiOi/3fqhGsU7BE='), or a nonce ('nonce-...') is required to enable inline execution.
[00:00:26]             │
[00:00:26]             │ debg browser[INFO] http://localhost:6171/bootstrap.js 42:19 "^ A single error about an inline script not firing due to content security policy is expected!"
[00:00:26]             │ debg ... sleep(700) start
[00:00:27]             │ debg ... sleep(700) end
[00:00:27]             │ debg returned from get, calling refresh
[00:00:30]             │ debg browser[INFO] http://localhost:6171/36026/bundles/kbn-ui-shared-deps/kbn-ui-shared-deps.js 467:106112 "INFO: 2020-09-03T14:06:16Z
[00:00:30]             │        Adding connection to http://localhost:6171/elasticsearch
[00:00:30]             │
[00:00:30]             │      "
[00:00:30]             │ERROR browser[SEVERE] http://localhost:6171/36026/bundles/core/core.entry.js 83:272044 TypeError: Failed to fetch
[00:00:30]             │ debg browser[INFO] http://localhost:6171/app/discover?_t=1599141973372#/ 341 Refused to execute inline script because it violates the following Content Security Policy directive: "script-src 'unsafe-eval' 'self'". Either the 'unsafe-inline' keyword, a hash ('sha256-P5polb1UreUSOe5V/Pv7tc+yeZuJXiOi/3fqhGsU7BE='), or a nonce ('nonce-...') is required to enable inline execution.
[00:00:30]             │
[00:00:30]             │ debg browser[INFO] http://localhost:6171/bootstrap.js 42:19 "^ A single error about an inline script not firing due to content security policy is expected!"
[00:00:30]             │ debg currentUrl = http://localhost:6171/app/discover#/
[00:00:30]             │          appUrl = http://localhost:6171/app/discover#/
[00:00:30]             │ debg TestSubjects.find(kibanaChrome)
[00:00:30]             │ debg Find.findByCssSelector('[data-test-subj="kibanaChrome"]') with timeout=60000
[00:00:34]             │ debg browser[INFO] http://localhost:6171/36026/bundles/kbn-ui-shared-deps/kbn-ui-shared-deps.js 467:106112 "INFO: 2020-09-03T14:06:21Z
[00:00:34]             │        Adding connection to http://localhost:6171/elasticsearch
[00:00:34]             │
[00:00:34]             │      "
[00:00:34]             │ debg ... sleep(501) start
[00:00:35]             │ debg ... sleep(501) end
[00:00:35]             │ debg in navigateTo url = http://localhost:6171/app/discover#/
[00:00:35]             │ debg TestSubjects.exists(statusPageContainer)
[00:00:35]             │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="statusPageContainer"]') with timeout=2500
[00:00:37]             │ debg --- retry.tryForTime error: [data-test-subj="statusPageContainer"] is not displayed
[00:00:38]             │ debg Setting absolute range to Sep 19, 2015 @ 06:31:44.000 to Sep 23, 2015 @ 18:31:44.000
[00:00:38]             │ debg TestSubjects.exists(superDatePickerToggleQuickMenuButton)
[00:00:38]             │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="superDatePickerToggleQuickMenuButton"]') with timeout=20000
[00:00:38]             │ debg TestSubjects.exists(superDatePickerShowDatesButton)
[00:00:38]             │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="superDatePickerShowDatesButton"]') with timeout=2500
[00:00:38]             │ debg TestSubjects.click(superDatePickerShowDatesButton)
[00:00:38]             │ debg Find.clickByCssSelector('[data-test-subj="superDatePickerShowDatesButton"]') with timeout=10000
[00:00:38]             │ debg Find.findByCssSelector('[data-test-subj="superDatePickerShowDatesButton"]') with timeout=10000
[00:00:38]             │ debg TestSubjects.exists(superDatePickerstartDatePopoverButton)
[00:00:38]             │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="superDatePickerstartDatePopoverButton"]') with timeout=2500
[00:00:38]             │ debg TestSubjects.click(superDatePickerendDatePopoverButton)
[00:00:38]             │ debg Find.clickByCssSelector('[data-test-subj="superDatePickerendDatePopoverButton"]') with timeout=10000
[00:00:38]             │ debg Find.findByCssSelector('[data-test-subj="superDatePickerendDatePopoverButton"]') with timeout=10000
[00:00:39]             │ debg Find.findByCssSelector('div.euiPopover__panel-isOpen') with timeout=10000
[00:00:39]             │ debg TestSubjects.click(superDatePickerAbsoluteTab)
[00:00:39]             │ debg Find.clickByCssSelector('[data-test-subj="superDatePickerAbsoluteTab"]') with timeout=10000
[00:00:39]             │ debg Find.findByCssSelector('[data-test-subj="superDatePickerAbsoluteTab"]') with timeout=10000
[00:00:39]             │ debg TestSubjects.click(superDatePickerAbsoluteDateInput)
[00:00:39]             │ debg Find.clickByCssSelector('[data-test-subj="superDatePickerAbsoluteDateInput"]') with timeout=10000
[00:00:39]             │ debg Find.findByCssSelector('[data-test-subj="superDatePickerAbsoluteDateInput"]') with timeout=10000
[00:00:39]             │ debg TestSubjects.setValue(superDatePickerAbsoluteDateInput, Sep 23, 2015 @ 18:31:44.000)
[00:00:39]             │ debg TestSubjects.click(superDatePickerAbsoluteDateInput)
[00:00:39]             │ debg Find.clickByCssSelector('[data-test-subj="superDatePickerAbsoluteDateInput"]') with timeout=10000
[00:00:39]             │ debg Find.findByCssSelector('[data-test-subj="superDatePickerAbsoluteDateInput"]') with timeout=10000
[00:00:40]             │ debg ... sleep(500) start
[00:00:41]             │ debg ... sleep(500) end
[00:00:41]             │ debg TestSubjects.click(superDatePickerstartDatePopoverButton)
[00:00:41]             │ debg Find.clickByCssSelector('[data-test-subj="superDatePickerstartDatePopoverButton"]') with timeout=10000
[00:00:41]             │ debg Find.findByCssSelector('[data-test-subj="superDatePickerstartDatePopoverButton"]') with timeout=10000
[00:00:41]             │ debg Find.waitForElementStale with timeout=10000
[00:00:41]             │ debg Find.findByCssSelector('div.euiPopover__panel-isOpen') with timeout=10000
[00:00:41]             │ debg TestSubjects.click(superDatePickerAbsoluteTab)
[00:00:41]             │ debg Find.clickByCssSelector('[data-test-subj="superDatePickerAbsoluteTab"]') with timeout=10000
[00:00:41]             │ debg Find.findByCssSelector('[data-test-subj="superDatePickerAbsoluteTab"]') with timeout=10000
[00:00:41]             │ debg TestSubjects.click(superDatePickerAbsoluteDateInput)
[00:00:41]             │ debg Find.clickByCssSelector('[data-test-subj="superDatePickerAbsoluteDateInput"]') with timeout=10000
[00:00:41]             │ debg Find.findByCssSelector('[data-test-subj="superDatePickerAbsoluteDateInput"]') with timeout=10000
[00:00:42]             │ debg TestSubjects.setValue(superDatePickerAbsoluteDateInput, Sep 19, 2015 @ 06:31:44.000)
[00:00:42]             │ debg TestSubjects.click(superDatePickerAbsoluteDateInput)
[00:00:42]             │ debg Find.clickByCssSelector('[data-test-subj="superDatePickerAbsoluteDateInput"]') with timeout=10000
[00:00:42]             │ debg Find.findByCssSelector('[data-test-subj="superDatePickerAbsoluteDateInput"]') with timeout=10000
[00:00:43]             │ debg TestSubjects.exists(superDatePickerApplyTimeButton)
[00:00:43]             │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="superDatePickerApplyTimeButton"]') with timeout=2500
[00:00:45]             │ debg --- retry.tryForTime error: [data-test-subj="superDatePickerApplyTimeButton"] is not displayed
[00:00:46]             │ debg TestSubjects.click(querySubmitButton)
[00:00:46]             │ debg Find.clickByCssSelector('[data-test-subj="querySubmitButton"]') with timeout=10000
[00:00:46]             │ debg Find.findByCssSelector('[data-test-subj="querySubmitButton"]') with timeout=10000
[00:00:46]             │ debg Find.waitForElementStale with timeout=10000
[00:00:47]             │ debg TestSubjects.exists(globalLoadingIndicator-hidden)
[00:00:47]             │ debg Find.existsByCssSelector('[data-test-subj="globalLoadingIndicator-hidden"]') with timeout=100000
[00:00:54]           └-> main view
[00:00:54]             └-> "before each" hook: global before each
[00:01:07]             └- ✓ pass  (13.6s) "Discover main view"
[00:01:07]           └-> Click save button
[00:01:07]             └-> "before each" hook: global before each
[00:01:07]             │ debg TestSubjects.click(discoverSaveButton)
[00:01:07]             │ debg Find.clickByCssSelector('[data-test-subj="discoverSaveButton"]') with timeout=10000
[00:01:07]             │ debg Find.findByCssSelector('[data-test-subj="discoverSaveButton"]') with timeout=10000
[00:01:10]             └- ✓ pass  (2.9s) "Discover Click save button"
[00:01:10]           └-> Save search panel
[00:01:10]             └-> "before each" hook: global before each
[00:01:10]             │ debg TestSubjects.setValue(savedObjectTitle, a11ySearch)
[00:01:10]             │ debg TestSubjects.click(savedObjectTitle)
[00:01:10]             │ debg Find.clickByCssSelector('[data-test-subj="savedObjectTitle"]') with timeout=10000
[00:01:10]             │ debg Find.findByCssSelector('[data-test-subj="savedObjectTitle"]') with timeout=10000
[00:01:12]             └- ✓ pass  (2.1s) "Discover Save search panel"
[00:01:12]           └-> Confirm saved search
[00:01:12]             └-> "before each" hook: global before each
[00:01:12]             │ debg TestSubjects.click(confirmSaveSavedObjectButton)
[00:01:12]             │ debg Find.clickByCssSelector('[data-test-subj="confirmSaveSavedObjectButton"]') with timeout=10000
[00:01:12]             │ debg Find.findByCssSelector('[data-test-subj="confirmSaveSavedObjectButton"]') with timeout=10000
[00:01:14]             └- ✓ pass  (2.1s) "Discover Confirm saved search"
[00:01:14]           └-> Click on new to clear the search
[00:01:14]             └-> "before each" hook: global before each
[00:01:14]             │ debg TestSubjects.click(discoverNewButton)
[00:01:14]             │ debg Find.clickByCssSelector('[data-test-subj="discoverNewButton"]') with timeout=10000
[00:01:14]             │ debg Find.findByCssSelector('[data-test-subj="discoverNewButton"]') with timeout=10000
[00:01:15]             │ debg isGlobalLoadingIndicatorVisible
[00:01:15]             │ debg TestSubjects.exists(globalLoadingIndicator)
[00:01:15]             │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="globalLoadingIndicator"]') with timeout=1500
[00:01:16]             │ debg TestSubjects.exists(globalLoadingIndicator-hidden)
[00:01:16]             │ debg Find.existsByCssSelector('[data-test-subj="globalLoadingIndicator-hidden"]') with timeout=100000
[00:01:26]             └- ✓ pass  (11.8s) "Discover Click on new to clear the search"
[00:01:26]           └-> Open load saved search panel
[00:01:26]             └-> "before each" hook: global before each
[00:01:26]             │ debg TestSubjects.exists(loadSearchForm)
[00:01:26]             │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="loadSearchForm"]') with timeout=2500
[00:01:29]             │ debg --- retry.tryForTime error: [data-test-subj="loadSearchForm"] is not displayed
[00:01:29]             │ debg Waiting up to 20000ms for saved search panel is opened...
[00:01:29]             │ debg TestSubjects.moveMouseTo(discoverOpenButton)
[00:01:29]             │ debg TestSubjects.find(discoverOpenButton)
[00:01:29]             │ debg Find.findByCssSelector('[data-test-subj="discoverOpenButton"]') with timeout=10000
[00:01:30]             │ debg TestSubjects.click(discoverOpenButton)
[00:01:30]             │ debg Find.clickByCssSelector('[data-test-subj="discoverOpenButton"]') with timeout=10000
[00:01:30]             │ debg Find.findByCssSelector('[data-test-subj="discoverOpenButton"]') with timeout=10000
[00:01:30]             │ debg isGlobalLoadingIndicatorVisible
[00:01:30]             │ debg TestSubjects.exists(globalLoadingIndicator)
[00:01:30]             │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="globalLoadingIndicator"]') with timeout=1500
[00:01:30]             │ debg --- retry.tryForTime error: [data-test-subj="globalLoadingIndicator"] is not displayed
[00:01:32]             │ debg --- retry.tryForTime failed again with the same message...
[00:01:33]             │ debg TestSubjects.exists(globalLoadingIndicator-hidden)
[00:01:33]             │ debg Find.existsByCssSelector('[data-test-subj="globalLoadingIndicator-hidden"]') with timeout=100000
[00:01:33]             │ debg TestSubjects.exists(loadSearchForm)
[00:01:33]             │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="loadSearchForm"]') with timeout=2500
[00:01:35]             │ debg TestSubjects.click(euiFlyoutCloseButton)
[00:01:35]             │ debg Find.clickByCssSelector('[data-test-subj="euiFlyoutCloseButton"]') with timeout=10000
[00:01:35]             │ debg Find.findByCssSelector('[data-test-subj="euiFlyoutCloseButton"]') with timeout=10000
[00:01:35]             └- ✓ pass  (8.9s) "Discover Open load saved search panel"
[00:01:35]           └-> Open inspector panel
[00:01:35]             └-> "before each" hook: global before each
[00:01:35]             │ debg Inspector.open
[00:01:35]             │ debg TestSubjects.exists(inspectorPanel)
[00:01:35]             │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="inspectorPanel"]') with timeout=2500
[00:01:38]             │ debg --- retry.tryForTime error: [data-test-subj="inspectorPanel"] is not displayed
[00:01:38]             │ debg TestSubjects.click(openInspectorButton)
[00:01:38]             │ debg Find.clickByCssSelector('[data-test-subj="openInspectorButton"]') with timeout=10000
[00:01:38]             │ debg Find.findByCssSelector('[data-test-subj="openInspectorButton"]') with timeout=10000
[00:01:39]             │ debg TestSubjects.exists(inspectorPanel)
[00:01:39]             │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="inspectorPanel"]') with timeout=2500
[00:01:41]             │ debg Close Inspector
[00:01:41]             │ debg TestSubjects.exists(inspectorPanel)
[00:01:41]             │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="inspectorPanel"]') with timeout=2500
[00:01:41]             │ debg Closing flyout inspectorPanel
[00:01:41]             │ debg TestSubjects.find(inspectorPanel)
[00:01:41]             │ debg Find.findByCssSelector('[data-test-subj="inspectorPanel"]') with timeout=10000
[00:01:41]             │ debg Waiting up to 20000ms for flyout closed...
[00:01:41]             │ debg TestSubjects.exists(inspectorPanel)
[00:01:41]             │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="inspectorPanel"]') with timeout=1000
[00:01:42]             │ debg --- retry.tryForTime error: [data-test-subj="inspectorPanel"] is not displayed
[00:01:42]             │ debg TestSubjects.exists(inspectorPanel)
[00:01:42]             │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="inspectorPanel"]') with timeout=2500
[00:01:45]             │ debg --- retry.tryForTime error: [data-test-subj="inspectorPanel"] is not displayed
[00:01:46]             └- ✓ pass  (10.4s) "Discover Open inspector panel"
[00:01:46]           └-> Open add filter
[00:01:46]             └-> "before each" hook: global before each
[00:01:46]             │ debg TestSubjects.click(addFilter)
[00:01:46]             │ debg Find.clickByCssSelector('[data-test-subj="addFilter"]') with timeout=10000
[00:01:46]             │ debg Find.findByCssSelector('[data-test-subj="addFilter"]') with timeout=10000
[00:01:48]             └- ✓ pass  (2.0s) "Discover Open add filter"
[00:01:48]           └-> Select values for a filter
[00:01:48]             └-> "before each" hook: global before each
[00:01:48]             │ debg TestSubjects.click(addFilter)
[00:01:48]             │ debg Find.clickByCssSelector('[data-test-subj="addFilter"]') with timeout=10000
[00:01:48]             │ debg Find.findByCssSelector('[data-test-subj="addFilter"]') with timeout=10000
[00:01:48]             │ debg comboBox.set, comboBoxSelector: filterFieldSuggestionList
[00:01:48]             │ debg TestSubjects.find(filterFieldSuggestionList)
[00:01:48]             │ debg Find.findByCssSelector('[data-test-subj="filterFieldSuggestionList"]') with timeout=10000
[00:01:48]             │ debg comboBox.setElement, value: extension.raw
[00:01:48]             │ debg comboBox.isOptionSelected, value: extension.raw
[00:01:50]             │ debg TestSubjects.exists(~comboBoxOptionsList)
[00:01:50]             │ debg Find.existsByDisplayedByCssSelector('[data-test-subj~="comboBoxOptionsList"]') with timeout=2500
[00:01:50]             │ debg Find.allByCssSelector('.euiFilterSelectItem[title^="extension.raw"]') with timeout=2500
[00:01:51]             │ debg TestSubjects.exists(~comboBoxOptionsList)
[00:01:51]             │ debg Find.existsByDisplayedByCssSelector('[data-test-subj~="comboBoxOptionsList"]') with timeout=2500
[00:01:53]             │ debg --- retry.tryForTime error: [data-test-subj~="comboBoxOptionsList"] is not displayed
[00:01:54]             │ debg comboBox.set, comboBoxSelector: filterOperatorList
[00:01:54]             │ debg TestSubjects.find(filterOperatorList)
[00:01:54]             │ debg Find.findByCssSelector('[data-test-subj="filterOperatorList"]') with timeout=10000
[00:01:54]             │ debg comboBox.setElement, value: is one of
[00:01:54]             │ debg comboBox.isOptionSelected, value: is one of
[00:01:57]             │ debg TestSubjects.exists(~comboBoxOptionsList)
[00:01:57]             │ debg Find.existsByDisplayedByCssSelector('[data-test-subj~="comboBoxOptionsList"]') with timeout=2500
[00:01:57]             │ debg Find.allByCssSelector('.euiFilterSelectItem[title^="is one of"]') with timeout=2500
[00:01:57]             │ debg TestSubjects.exists(~comboBoxOptionsList)
[00:01:57]             │ debg Find.existsByDisplayedByCssSelector('[data-test-subj~="comboBoxOptionsList"]') with timeout=2500
[00:02:00]             │ debg --- retry.tryForTime error: [data-test-subj~="comboBoxOptionsList"] is not displayed
[00:02:00]             │ debg TestSubjects.find(filterParams)
[00:02:00]             │ debg Find.findByCssSelector('[data-test-subj="filterParams"]') with timeout=10000
[00:02:00]             │ debg comboBox.setElement, value: jpg
[00:02:00]             │ debg comboBox.isOptionSelected, value: jpg
[00:02:03]             │ debg TestSubjects.exists(~comboBoxOptionsList)
[00:02:03]             │ debg Find.existsByDisplayedByCssSelector('[data-test-subj~="comboBoxOptionsList"]') with timeout=2500
[00:02:03]             │ debg Find.allByCssSelector('.euiFilterSelectItem[title^="jpg"]') with timeout=2500
[00:02:03]             │ debg TestSubjects.exists(~comboBoxOptionsList)
[00:02:03]             │ debg Find.existsByDisplayedByCssSelector('[data-test-subj~="comboBoxOptionsList"]') with timeout=2500
[00:02:03]             │ debg TestSubjects.click(saveFilter)
[00:02:03]             │ debg Find.clickByCssSelector('[data-test-subj="saveFilter"]') with timeout=10000
[00:02:03]             │ debg Find.findByCssSelector('[data-test-subj="saveFilter"]') with timeout=10000
[00:02:03]             │ debg TestSubjects.exists(globalLoadingIndicator-hidden)
[00:02:03]             │ debg Find.existsByCssSelector('[data-test-subj="globalLoadingIndicator-hidden"]') with timeout=100000
[00:02:18]             └- ✓ pass  (30.3s) "Discover Select values for a filter"
[00:02:18]           └-> Load a new search from the panel
[00:02:18]             └-> "before each" hook: global before each
[00:02:18]             │ debg TestSubjects.click(discoverSaveButton)
[00:02:18]             │ debg Find.clickByCssSelector('[data-test-subj="discoverSaveButton"]') with timeout=10000
[00:02:18]             │ debg Find.findByCssSelector('[data-test-subj="discoverSaveButton"]') with timeout=10000
[00:02:19]             │ debg TestSubjects.setValue(savedObjectTitle, filterSearch)
[00:02:19]             │ debg TestSubjects.click(savedObjectTitle)
[00:02:19]             │ debg Find.clickByCssSelector('[data-test-subj="savedObjectTitle"]') with timeout=10000
[00:02:19]             │ debg Find.findByCssSelector('[data-test-subj="savedObjectTitle"]') with timeout=10000
[00:02:20]             │ debg TestSubjects.click(confirmSaveSavedObjectButton)
[00:02:20]             │ debg Find.clickByCssSelector('[data-test-subj="confirmSaveSavedObjectButton"]') with timeout=10000
[00:02:20]             │ debg Find.findByCssSelector('[data-test-subj="confirmSaveSavedObjectButton"]') with timeout=10000
[00:02:20]             │ debg TestSubjects.exists(loadSearchForm)
[00:02:20]             │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="loadSearchForm"]') with timeout=2500
[00:02:23]             │ debg --- retry.tryForTime error: [data-test-subj="loadSearchForm"] is not displayed
[00:02:23]             │ debg Waiting up to 20000ms for saved search panel is opened...
[00:02:23]             │ debg TestSubjects.moveMouseTo(discoverOpenButton)
[00:02:23]             │ debg TestSubjects.find(discoverOpenButton)
[00:02:23]             │ debg Find.findByCssSelector('[data-test-subj="discoverOpenButton"]') with timeout=10000
[00:02:24]             │ debg TestSubjects.click(discoverOpenButton)
[00:02:24]             │ debg Find.clickByCssSelector('[data-test-subj="discoverOpenButton"]') with timeout=10000
[00:02:24]             │ debg Find.findByCssSelector('[data-test-subj="discoverOpenButton"]') with timeout=10000
[00:02:24]             │ debg isGlobalLoadingIndicatorVisible
[00:02:24]             │ debg TestSubjects.exists(globalLoadingIndicator)
[00:02:24]             │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="globalLoadingIndicator"]') with timeout=1500
[00:02:24]             │ debg TestSubjects.exists(globalLoadingIndicator-hidden)
[00:02:24]             │ debg Find.existsByCssSelector('[data-test-subj="globalLoadingIndicator-hidden"]') with timeout=100000
[00:02:26]             │ debg TestSubjects.exists(loadSearchForm)
[00:02:26]             │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="loadSearchForm"]') with timeout=2500
[00:02:26]             │ debg TestSubjects.exists(loadSearchForm)
[00:02:26]             │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="loadSearchForm"]') with timeout=2500
[00:02:26]             │ debg Find.byButtonText('filterSearch') with timeout=10000
[00:02:39]             │ debg --- retry.tryForTime error: stale element reference: element is not attached to the page document
[00:02:39]             │        (Session info: headless chrome=84.0.4147.135)
[00:02:39]             │ info Taking screenshot "/dev/shm/workspace/parallel/7/kibana/test/functional/screenshots/failure/Discover Load a new search from the panel.png"
[00:02:40]             │ info Current URL is: http://localhost:6171/app/discover#/view/e4845aa0-edee-11ea-9c19-b7f1a79ba3f9?_g=(filters:!(),refreshInterval:(pause:!t,value:0),time:(from:%272015-09-19T06:31:44.000Z%27,to:%272015-09-23T18:31:44.000Z%27))&_a=(columns:!(_source),filters:!((%27$state%27:(store:appState),meta:(alias:!n,disabled:!f,index:%27logstash-*%27,key:extension.raw,negate:!f,params:!(jpg),type:phrases,value:jpg),query:(bool:(minimum_should_match:1,should:!((match_phrase:(extension.raw:jpg))))))),index:%27logstash-*%27,interval:auto,query:(language:kuery,query:%27%27),sort:!())
[00:02:40]             │ info Saving page source to: /dev/shm/workspace/parallel/7/kibana/test/functional/failure_debug/html/Discover Load a new search from the panel.html
[00:02:40]             └- ✖ fail: Discover Load a new search from the panel
[00:02:40]             │      Error: retry.tryForTime timeout: StaleElementReferenceError: stale element reference: element is not attached to the page document
[00:02:40]             │   (Session info: headless chrome=84.0.4147.135)
[00:02:40]             │     at Object.throwDecodedError (/dev/shm/workspace/kibana/node_modules/selenium-webdriver/lib/error.js:550:15)
[00:02:40]             │     at parseHttpResponse (/dev/shm/workspace/kibana/node_modules/selenium-webdriver/lib/http.js:565:13)
[00:02:40]             │     at Executor.execute (/dev/shm/workspace/kibana/node_modules/selenium-webdriver/lib/http.js:491:26)
[00:02:40]             │     at process._tickCallback (internal/process/next_tick.js:68:7)
[00:02:40]             │       at onFailure (test/common/services/retry/retry_for_success.ts:28:9)
[00:02:40]             │       at retryForSuccess (test/common/services/retry/retry_for_success.ts:68:13)
[00:02:40]             │ 
[00:02:40]             │ 

Stack Trace

Error: retry.tryForTime timeout: StaleElementReferenceError: stale element reference: element is not attached to the page document
  (Session info: headless chrome=84.0.4147.135)
    at Object.throwDecodedError (/dev/shm/workspace/kibana/node_modules/selenium-webdriver/lib/error.js:550:15)
    at parseHttpResponse (/dev/shm/workspace/kibana/node_modules/selenium-webdriver/lib/http.js:565:13)
    at Executor.execute (/dev/shm/workspace/kibana/node_modules/selenium-webdriver/lib/http.js:491:26)
    at process._tickCallback (internal/process/next_tick.js:68:7)
    at onFailure (test/common/services/retry/retry_for_success.ts:28:9)
    at retryForSuccess (test/common/services/retry/retry_for_success.ts:68:13)

Build metrics

async chunks size

id value diff baseline
indexManagement 1.5MB -13.9KB 1.6MB

page load bundle size

id value diff baseline
indexLifecycleManagement 232.1KB +1.8KB 230.3KB
indexManagement 263.2KB +15.1KB 248.0KB
total +16.9KB

History

To update your PR or re-run it, just comment with:
@elasticmachine merge upstream

Copy link
Copy Markdown
Contributor

@alisonelizabeth alisonelizabeth left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great work @yuliacech! I did not retest, but latest changes LGTM.

I couldn't import from server folder in IM to public folder in ILM, so I moved the type to common folder in IM. What do you think?

👍 Makes sense

@yuliacech yuliacech merged commit 70b4b89 into elastic:master Sep 4, 2020
yuliacech added a commit that referenced this pull request Sep 4, 2020
…6757)

* [ILM] TS conversion of Index Management plugin extension

* [ILM] Implement review suggestions

* [ILM] Fix jest test

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
@yuliacech yuliacech deleted the ilm_index_management_ts branch October 7, 2020 12:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Feature:ILM release_note:skip Skip the PR/issue when compiling release notes Team:Kibana Management Dev Tools, Index Management, Upgrade Assistant, ILM, Ingest Node Pipelines, and more t// v7.10.0 v8.0.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants