Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Stack monitoring] Remove angular #115063

Merged

Conversation

estermv
Copy link
Contributor

@estermv estermv commented Oct 14, 2021

Summary

Closes #115207 by removing Angular and the basic files of the Angular code.

NOTE
The parent issue contains a list of tasks the will be done in follow-up PRs.

@estermv
Copy link
Contributor Author

estermv commented Oct 15, 2021

@elasticmachine merge upstream

@kibanamachine
Copy link
Contributor

merge conflict between base and head

@estermv estermv added auto-backport Deprecated - use backport:version if exact versions are needed Epic: Stack Monitoring de-angularization Feature:Stack Monitoring release_note:skip Skip the PR/issue when compiling release notes Team:Infra Monitoring UI - DEPRECATED DEPRECATED - Label for the Infra Monitoring UI team. Use Team:obs-ux-infra_services v7.16.0 v8.0.0 labels Oct 15, 2021
@estermv estermv marked this pull request as ready for review October 15, 2021 14:57
@estermv estermv requested a review from a team as a code owner October 15, 2021 14:57
@estermv estermv requested review from a team October 15, 2021 14:57
@elasticmachine
Copy link
Contributor

Pinging @elastic/logs-metrics-ui (Team:logs-metrics-ui)

@@ -9,37 +9,21 @@ import React from 'react';
import { render } from 'react-dom';
import { get, includes } from 'lodash';
import { i18n } from '@kbn/i18n';
import { HttpStart, IHttpFetchError } from 'kibana/public';
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Changes in this file are because x-pack/plugins/monitoring/public/application/setup_mode/setup_mode.tsx has been moved here

@simianhacker
Copy link
Member

I added @phillipb and @neptunian as reviewers as well. I think it would be good to get a few eyeballs on this one.

@matschaffer
Copy link
Contributor

@elasticmachine merge upstream

@matschaffer
Copy link
Contributor

Testing (docker-testing-cluster)

Standalone

On a whim I decided to check the standalone cluster that pops up in our config here (I think maybe due to a weird logstash behavior).

I managed to get stuck down in the pipelines view. The error seemed to break the URL handling as well so I eneded up needing a page refresh after clicking on the left "Stack Monitoring" nav.

Screen_Shot_2021-10-18_at_11_10_17

It's possible this is a prior issue since I haven't seen a lot of testing for the "Standalone" case.

ES

The shard activity node links don't seem to actually navigate anywhere. Guessing this might be a prior bug though.

Stack_Monitoring_-_Elasticsearch_-_Elastic

Kibana

This setup mode N/A for the stopped docker kibana was a little curious. But I can't have your PR (8.0 base) running along side 7.15 anymore due to a migration error. So it's possible this is expected for stopped kibanas that were previously getting metricbeat monitoring data.

Stack_Monitoring_-_Kibana_-_Instances_-_Elastic

Things looked fine otherwise

Logstash

Breadcrumbs aren't getting updated. This was especially noticeable after reaching a pipeilne page since there wasn't a good way to get back the logstash overview.

Screenshot_2021_10_18_11_24

Beats

No issue. Checked brush->back flow and worked as expected too. Nice to have that fixed :)

APM

No issues here

Other

I tried hitting "Create Default Rules" - on my first try I didn't get a confirmation, so I clicked it again and then had duplicate rules. I wasn't able to reproduce. Seems like you have to get the "Create" request fired off twice before the confirmation gets back, otherwise it knows to correctly only create one rule set.

Also doesn't seem react-specific.

One other oddity that might be react/routing related is that if you create the rules then "Manage rules" right after, the drop down follows you over to the stack monitoring UI. A refresh will clear it, and it only seems to happen if you've just used the create function.

Here's a recording. First without using "Create" (dropdown doesn't follow), then with (Dropdown follows), then refesh (dropdown clears out).

Copy link
Contributor

@matschaffer matschaffer left a comment

Choose a reason for hiding this comment

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

Seems to work pretty well overall. I had a couple of comments on stuff that wasn't just wholesale removal.

Also, should we remove the render_react_app config definition or do you plan to do that as a followup PR?

@@ -73,7 +73,7 @@ export const AlertsBadge: React.FC<Props> = (props: Props) => {
const groupByType = GROUP_BY_NODE;
const panels = showByNode
? getAlertPanelsByNode(PANEL_TITLE, alerts, stateFilter)
: getAlertPanelsByCategory(PANEL_TITLE, inSetupMode, alerts, stateFilter);
: getAlertPanelsByCategory(PANEL_TITLE, !!inSetupMode, alerts, stateFilter);
Copy link
Contributor

Choose a reason for hiding this comment

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

Curious when this wouldn't be a boolean that required the !!

Copy link
Contributor Author

Choose a reason for hiding this comment

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

It's because of this line. In React, we default to the isInSetupMode that it's in the global state, that is marked as optional.
Should it be optional? Probably no, but I guess because of the progressive migration it didn't exist until we migrated the setup mode related stuff, so when we put it in the global state we put it as optional to not break anything that already exists.

Since, in this case, when it's undefined, we should treat it as false, I think is good enough to make the conversion here.

@@ -83,7 +83,7 @@ function waitForSetupModeData() {
return new Promise((resolve) => process.nextTick(resolve));
}

describe('setup_mode', () => {
xdescribe('setup_mode', () => {
Copy link
Contributor

Choose a reason for hiding this comment

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

.skip seems to be more common (I had to google what the x prefix did)

Suggested change
xdescribe('setup_mode', () => {
describe.skip('setup_mode', () => {

Should we have a comment on why we're skipping it?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I don't think is needed, It's already a task in the parent task #109791, and my plan was to fix them as soon as this PR is closed, together with all the other clean up tasks.

@@ -18516,7 +18514,6 @@
"xpack.monitoring.logstash.node.advanced.pageTitle": "Logstash 节点:{nodeName}",
"xpack.monitoring.logstash.node.advanced.routeTitle": "Logstash - {nodeName} - 高级",
"xpack.monitoring.logstash.node.pageTitle": "Logstash 节点:{nodeName}",
"xpack.monitoring.logstash.node.pipelines.notAvailableDescription": "仅 Logstash 版本 6.0.0 或更高版本提供管道监测功能。此节点正在运行版本 {logstashVersion}。",
Copy link
Contributor

Choose a reason for hiding this comment

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

This appears to be just a translation cleanup. Unless it helps the angular removal cause I'd be inclined to do this in a separate PR.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

If we don't do the clean-up one step of the ci fails because these strings don't exist anymore.

Copy link
Member

Choose a reason for hiding this comment

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

CI is already passing but running node scripts/i18n_check --fix will update this file automatically

@kibanamachine
Copy link
Contributor

💛 Build succeeded, but was flaky


Test Failures

Kibana Pipeline / general / Chrome X-Pack UI Functional Tests.x-pack/test/functional/apps/ml/stack_management_jobs/manage_spaces·ts.machine learning stack management jobs manage spaces assign to all spaces should display original job only in assigned spaces

Link to Jenkins

Standard Out

Failed Tests Reporter:
  - Test has not failed recently on tracked branches

[00:00:00]     │
[00:00:00]       └-: machine learning
[00:00:00]         └-> "before all" hook in "machine learning"
[00:00:00]         └-: 
[00:00:00]           └-> "before all" hook in ""
[00:00:00]           └-> "before all" hook in ""
[00:00:00]             │ debg creating role ft_ml_source
[00:00:00]             │ info [o.e.x.s.a.r.TransportPutRoleAction] [node-01] added role [ft_ml_source]
[00:00:00]             │ debg creating role ft_ml_source_readonly
[00:00:00]             │ info [o.e.x.s.a.r.TransportPutRoleAction] [node-01] added role [ft_ml_source_readonly]
[00:00:00]             │ debg creating role ft_ml_dest
[00:00:00]             │ info [o.e.x.s.a.r.TransportPutRoleAction] [node-01] added role [ft_ml_dest]
[00:00:00]             │ debg creating role ft_ml_dest_readonly
[00:00:00]             │ info [o.e.x.s.a.r.TransportPutRoleAction] [node-01] added role [ft_ml_dest_readonly]
[00:00:00]             │ debg creating role ft_ml_ui_extras
[00:00:00]             │ info [o.e.x.s.a.r.TransportPutRoleAction] [node-01] added role [ft_ml_ui_extras]
[00:00:00]             │ debg creating role ft_default_space_ml_all
[00:00:00]             │ info [o.e.x.s.a.r.TransportPutRoleAction] [node-01] added role [ft_default_space_ml_all]
[00:00:00]             │ debg creating role ft_default_space1_ml_all
[00:00:00]             │ info [o.e.x.s.a.r.TransportPutRoleAction] [node-01] added role [ft_default_space1_ml_all]
[00:00:00]             │ debg creating role ft_all_spaces_ml_all
[00:00:00]             │ info [o.e.x.s.a.r.TransportPutRoleAction] [node-01] added role [ft_all_spaces_ml_all]
[00:00:00]             │ debg creating role ft_default_space_ml_read
[00:00:00]             │ info [o.e.x.s.a.r.TransportPutRoleAction] [node-01] added role [ft_default_space_ml_read]
[00:00:00]             │ debg creating role ft_default_space1_ml_read
[00:00:00]             │ info [o.e.x.s.a.r.TransportPutRoleAction] [node-01] added role [ft_default_space1_ml_read]
[00:00:00]             │ debg creating role ft_all_spaces_ml_read
[00:00:00]             │ info [o.e.x.s.a.r.TransportPutRoleAction] [node-01] added role [ft_all_spaces_ml_read]
[00:00:00]             │ debg creating role ft_default_space_ml_none
[00:00:00]             │ info [o.e.x.s.a.r.TransportPutRoleAction] [node-01] added role [ft_default_space_ml_none]
[00:00:00]             │ debg creating user ft_ml_poweruser
[00:00:00]             │ info [o.e.x.s.a.u.TransportPutUserAction] [node-01] added user [ft_ml_poweruser]
[00:00:00]             │ debg created user ft_ml_poweruser
[00:00:00]             │ debg creating user ft_ml_poweruser_spaces
[00:00:00]             │ info [o.e.x.s.a.u.TransportPutUserAction] [node-01] added user [ft_ml_poweruser_spaces]
[00:00:00]             │ debg created user ft_ml_poweruser_spaces
[00:00:00]             │ debg creating user ft_ml_poweruser_space1
[00:00:00]             │ info [o.e.x.s.a.u.TransportPutUserAction] [node-01] added user [ft_ml_poweruser_space1]
[00:00:00]             │ debg created user ft_ml_poweruser_space1
[00:00:00]             │ debg creating user ft_ml_poweruser_all_spaces
[00:00:00]             │ info [o.e.x.s.a.u.TransportPutUserAction] [node-01] added user [ft_ml_poweruser_all_spaces]
[00:00:00]             │ debg created user ft_ml_poweruser_all_spaces
[00:00:00]             │ debg creating user ft_ml_viewer
[00:00:01]             │ info [o.e.x.s.a.u.TransportPutUserAction] [node-01] added user [ft_ml_viewer]
[00:00:01]             │ debg created user ft_ml_viewer
[00:00:01]             │ debg creating user ft_ml_viewer_spaces
[00:00:01]             │ info [o.e.x.s.a.u.TransportPutUserAction] [node-01] added user [ft_ml_viewer_spaces]
[00:00:01]             │ debg created user ft_ml_viewer_spaces
[00:00:01]             │ debg creating user ft_ml_viewer_space1
[00:00:01]             │ info [o.e.x.s.a.u.TransportPutUserAction] [node-01] added user [ft_ml_viewer_space1]
[00:00:01]             │ debg created user ft_ml_viewer_space1
[00:00:01]             │ debg creating user ft_ml_viewer_all_spaces
[00:00:01]             │ info [o.e.x.s.a.u.TransportPutUserAction] [node-01] added user [ft_ml_viewer_all_spaces]
[00:00:01]             │ debg created user ft_ml_viewer_all_spaces
[00:00:01]             │ debg creating user ft_ml_unauthorized
[00:00:01]             │ info [o.e.x.s.a.u.TransportPutUserAction] [node-01] added user [ft_ml_unauthorized]
[00:00:01]             │ debg created user ft_ml_unauthorized
[00:00:01]             │ debg creating user ft_ml_unauthorized_spaces
[00:00:01]             │ info [o.e.x.s.a.u.TransportPutUserAction] [node-01] added user [ft_ml_unauthorized_spaces]
[00:00:01]             │ debg created user ft_ml_unauthorized_spaces
[00:05:21]           └-: stack management jobs
[00:05:21]             └-> "before all" hook in "stack management jobs"
[00:06:10]             └-: manage spaces
[00:06:10]               └-> "before all" hook in "manage spaces"
[00:06:10]               └-> "before all" hook in "manage spaces"
[00:06:10]                 │ info [x-pack/test/functional/es_archives/ml/farequote] Loading "mappings.json"
[00:06:10]                 │ info [x-pack/test/functional/es_archives/ml/farequote] Loading "data.json.gz"
[00:06:10]                 │ info [x-pack/test/functional/es_archives/ml/farequote] Skipped restore for existing index "ft_farequote"
[00:06:11]                 │ info [x-pack/test/functional/es_archives/ml/ihp_outlier] Loading "mappings.json"
[00:06:11]                 │ info [x-pack/test/functional/es_archives/ml/ihp_outlier] Loading "data.json.gz"
[00:06:11]                 │ info [x-pack/test/functional/es_archives/ml/ihp_outlier] Skipped restore for existing index "ft_ihp_outlier"
[00:06:11]                 │ debg Searching for 'index-pattern' with title 'ft_farequote'...
[00:06:11]                 │ debg  > Found '79feab20-2fb2-11ec-8216-93a26cab7f0e'
[00:06:11]                 │ debg Index pattern with title 'ft_farequote' already exists. Nothing to create.
[00:06:11]                 │ debg Searching for 'index-pattern' with title 'ft_ihp_outlier'...
[00:06:11]                 │ debg  > Not found
[00:06:11]                 │ debg Creating index pattern with title 'ft_ihp_outlier' and time field '@timestamp'
[00:06:12]                 │ debg Waiting up to 5000ms for index-pattern with title 'ft_ihp_outlier' to exist...
[00:06:12]                 │ debg Searching for 'index-pattern' with title 'ft_ihp_outlier'...
[00:06:12]                 │ debg  > Found '1425dd40-2fb3-11ec-8216-93a26cab7f0e'
[00:06:12]                 │ debg  > Created with id '1425dd40-2fb3-11ec-8216-93a26cab7f0e'
[00:06:12]                 │ debg applying update to kibana config: {"dateFormat:tz":"UTC"}
[00:06:13]                 │ debg SecurityPage.forceLogout
[00:06:13]                 │ debg Find.existsByDisplayedByCssSelector('.login-form') with timeout=100
[00:06:13]                 │ debg --- retry.tryForTime error: .login-form is not displayed
[00:06:13]                 │ debg Redirecting to /logout to force the logout
[00:06:13]                 │ debg Waiting on the login form to appear
[00:06:13]                 │ debg Waiting for Login Page to appear.
[00:06:13]                 │ debg Waiting up to 100000ms for login page...
[00:06:13]                 │ debg browser[INFO] http://localhost:61231/logout?_t=1634520674822 281 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:06:13]                 │
[00:06:13]                 │ debg browser[INFO] http://localhost:61231/bootstrap.js 41:19 "^ A single error about an inline script not firing due to content security policy is expected!"
[00:06:13]                 │ debg Find.existsByDisplayedByCssSelector('.login-form') with timeout=2500
[00:06:16]                 │ debg browser[INFO] http://localhost:61231/login?msg=LOGGED_OUT 281 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:06:16]                 │
[00:06:16]                 │ debg browser[INFO] http://localhost:61231/bootstrap.js 41:19 "^ A single error about an inline script not firing due to content security policy is expected!"
[00:06:16]                 │ debg --- retry.tryForTime error: .login-form is not displayed
[00:06:16]                 │ warn browser[SEVERE] http://localhost:61231/api/licensing/info - Failed to load resource: the server responded with a status of 401 (Unauthorized)
[00:06:17]                 │ debg Find.existsByDisplayedByCssSelector('.login-form') with timeout=2500
[00:06:17]                 │ debg TestSubjects.exists(loginForm)
[00:06:17]                 │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="loginForm"]') with timeout=2500
[00:06:17]                 │ debg Waiting for Login Form to appear.
[00:06:17]                 │ debg Waiting up to 100000ms for login form...
[00:06:17]                 │ debg TestSubjects.exists(loginForm)
[00:06:17]                 │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="loginForm"]') with timeout=2500
[00:06:17]                 │ debg TestSubjects.setValue(loginUsername, ft_ml_poweruser)
[00:06:17]                 │ debg TestSubjects.click(loginUsername)
[00:06:17]                 │ debg Find.clickByCssSelector('[data-test-subj="loginUsername"]') with timeout=10000
[00:06:17]                 │ debg Find.findByCssSelector('[data-test-subj="loginUsername"]') with timeout=10000
[00:06:17]                 │ debg TestSubjects.setValue(loginPassword, mlp001)
[00:06:17]                 │ debg TestSubjects.click(loginPassword)
[00:06:17]                 │ debg Find.clickByCssSelector('[data-test-subj="loginPassword"]') with timeout=10000
[00:06:17]                 │ debg Find.findByCssSelector('[data-test-subj="loginPassword"]') with timeout=10000
[00:06:17]                 │ debg TestSubjects.click(loginSubmit)
[00:06:17]                 │ debg Find.clickByCssSelector('[data-test-subj="loginSubmit"]') with timeout=10000
[00:06:17]                 │ debg Find.findByCssSelector('[data-test-subj="loginSubmit"]') with timeout=10000
[00:06:18]                 │ debg Waiting for login result, expected: chrome.
[00:06:18]                 │ debg Find.findByCssSelector('[data-test-subj="userMenuAvatar"]') with timeout=20000
[00:06:18]                 │ proc [kibana] [2021-10-18T01:31:18.991+00:00][INFO ][plugins.security.routes] Logging in with provider "basic" (basic)
[00:06:20]                 │ debg browser[INFO] http://localhost:61231/app/home 281 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:06:20]                 │
[00:06:20]                 │ debg browser[INFO] http://localhost:61231/bootstrap.js 41:19 "^ A single error about an inline script not firing due to content security policy is expected!"
[00:06:20]                 │ debg Finished login process currentUrl = http://localhost:61231/app/home#/
[00:06:20]                 │ debg Waiting up to 20000ms for logout button visible...
[00:06:20]                 │ debg TestSubjects.exists(userMenuButton)
[00:06:20]                 │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="userMenuButton"]') with timeout=2500
[00:06:20]                 │ debg TestSubjects.exists(userMenu)
[00:06:20]                 │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="userMenu"]') with timeout=2500
[00:06:22]                 │ debg --- retry.tryForTime error: [data-test-subj="userMenu"] is not displayed
[00:06:23]                 │ debg TestSubjects.click(userMenuButton)
[00:06:23]                 │ debg Find.clickByCssSelector('[data-test-subj="userMenuButton"]') with timeout=10000
[00:06:23]                 │ debg Find.findByCssSelector('[data-test-subj="userMenuButton"]') with timeout=10000
[00:06:23]                 │ debg TestSubjects.exists(userMenu)
[00:06:23]                 │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="userMenu"]') with timeout=120000
[00:06:23]                 │ debg TestSubjects.exists(userMenu > logoutLink)
[00:06:23]                 │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="userMenu"] [data-test-subj="logoutLink"]') with timeout=2500
[00:06:23]                 │ debg creating space
[00:06:24]                 │ debg created space
[00:08:43]               └-: assign to all spaces
[00:08:43]                 └-> "before all" hook for "should display original job only in assigned spaces"
[00:08:43]                 └-> "before all" hook for "should display original job only in assigned spaces"
[00:08:43]                   │ debg Creating anomaly detection job with id 'ad_job_3_1634520300077' in space 'space1' ...
[00:08:43]                   │ debg Waiting up to 5000ms for 'ad_job_3_1634520300077' to exist...
[00:08:43]                   │ debg > AD job created.
[00:08:43]                   │ debg Creating data frame analytic job with id 'dfa_job_3_1634520300077' in space 'space1' ...
[00:08:44]                   │ debg Waiting up to 5000ms for 'dfa_job_3_1634520300077' to exist...
[00:08:44]                   │ debg Fetching data frame analytics job 'dfa_job_3_1634520300077'...
[00:08:44]                   │ debg > DFA job fetched.
[00:08:44]                   │ debg > DFA job created.
[00:08:44]                 └-> should display original job only in assigned spaces
[00:08:44]                   └-> "before each" hook: global before each for "should display original job only in assigned spaces"
[00:08:44]                   │ debg === TEST STEP === AD job ad_job_3_1634520300077 and DFA job dfa_job_3_1634520300077 should not be displayed in space default
[00:08:44]                   │ debg openSpacesNav()
[00:08:44]                   │ debg TestSubjects.click(spacesNavSelector)
[00:08:44]                   │ debg Find.clickByCssSelector('[data-test-subj="spacesNavSelector"]') with timeout=10000
[00:08:44]                   │ debg Find.findByCssSelector('[data-test-subj="spacesNavSelector"]') with timeout=10000
[00:08:45]                   │ debg TestSubjects.click(default-gotoSpace)
[00:08:45]                   │ debg Find.clickByCssSelector('[data-test-subj="default-gotoSpace"]') with timeout=10000
[00:08:45]                   │ debg Find.findByCssSelector('[data-test-subj="default-gotoSpace"]') with timeout=10000
[00:08:45]                   │ debg expectRoute(default, /app/home#/)
[00:08:45]                   │ debg Find.findByCssSelector('[data-test-subj="kibanaChrome"] nav:not(.ng-hide) ') with timeout=20000
[00:08:45]                   │ debg browser[INFO] http://localhost:61231/app/home 281 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:08:45]                   │
[00:08:45]                   │ debg browser[INFO] http://localhost:61231/bootstrap.js 41:19 "^ A single error about an inline script not firing due to content security policy is expected!"
[00:08:47]                   │ debg click "Machine Learning" app link
[00:08:47]                   │ debg TestSubjects.exists(collapsibleNav)
[00:08:47]                   │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="collapsibleNav"]') with timeout=2500
[00:08:49]                   │ debg --- retry.tryForTime error: [data-test-subj="collapsibleNav"] is not displayed
[00:08:50]                   │ debg TestSubjects.click(toggleNavButton)
[00:08:50]                   │ debg Find.clickByCssSelector('[data-test-subj="toggleNavButton"]') with timeout=10000
[00:08:50]                   │ debg Find.findByCssSelector('[data-test-subj="toggleNavButton"]') with timeout=10000
[00:08:50]                   │ debg TestSubjects.find(collapsibleNav)
[00:08:50]                   │ debg Find.findByCssSelector('[data-test-subj="collapsibleNav"]') with timeout=10000
[00:08:50]                   │ debg Find.existsByCssSelector('[data-test-subj=collapsibleNav] > button') with timeout=2500
[00:08:53]                   │ debg TestSubjects.exists(mlApp)
[00:08:53]                   │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="mlApp"]') with timeout=2000
[00:08:53]                   │ debg TestSubjects.click(~mlMainTab & ~anomalyDetection)
[00:08:53]                   │ debg Find.clickByCssSelector('[data-test-subj~="mlMainTab"][data-test-subj~="anomalyDetection"]') with timeout=10000
[00:08:53]                   │ debg Find.findByCssSelector('[data-test-subj~="mlMainTab"][data-test-subj~="anomalyDetection"]') with timeout=10000
[00:08:53]                   │ debg TestSubjects.exists(~mlMainTab & ~anomalyDetection & ~selected)
[00:08:53]                   │ debg Find.existsByDisplayedByCssSelector('[data-test-subj~="mlMainTab"][data-test-subj~="anomalyDetection"][data-test-subj~="selected"]') with timeout=120000
[00:08:53]                   │ debg TestSubjects.exists(mlPageJobManagement)
[00:08:53]                   │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="mlPageJobManagement"]') with timeout=120000
[00:08:53]                   │ debg TestSubjects.exists(~mlJobListTable)
[00:08:53]                   │ debg Find.existsByDisplayedByCssSelector('[data-test-subj~="mlJobListTable"]') with timeout=60000
[00:08:53]                   │ debg TestSubjects.exists(mlJobListTable loaded)
[00:08:53]                   │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="mlJobListTable loaded"]') with timeout=30000
[00:08:54]                   │ debg TestSubjects.find(mlJobListSearchBar)
[00:08:54]                   │ debg Find.findByCssSelector('[data-test-subj="mlJobListSearchBar"]') with timeout=10000
[00:08:54]                   │ debg TestSubjects.find(~mlJobListTable)
[00:08:54]                   │ debg Find.findByCssSelector('[data-test-subj~="mlJobListTable"]') with timeout=10000
[00:08:54]                   │ debg TestSubjects.click(~mlMainTab & ~dataFrameAnalytics)
[00:08:54]                   │ debg Find.clickByCssSelector('[data-test-subj~="mlMainTab"][data-test-subj~="dataFrameAnalytics"]') with timeout=10000
[00:08:54]                   │ debg Find.findByCssSelector('[data-test-subj~="mlMainTab"][data-test-subj~="dataFrameAnalytics"]') with timeout=10000
[00:08:54]                   │ debg TestSubjects.exists(~mlMainTab & ~dataFrameAnalytics & ~selected)
[00:08:54]                   │ debg Find.existsByDisplayedByCssSelector('[data-test-subj~="mlMainTab"][data-test-subj~="dataFrameAnalytics"][data-test-subj~="selected"]') with timeout=120000
[00:08:55]                   │ debg TestSubjects.exists(mlPageDataFrameAnalytics)
[00:08:55]                   │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="mlPageDataFrameAnalytics"]') with timeout=120000
[00:08:55]                   │ debg TestSubjects.exists(mlNoDataFrameAnalyticsFound)
[00:08:55]                   │ debg Find.existsByDisplayedByCssSelector('[data-test-subj="mlNoDataFrameAnalyticsFound"]') with timeout=1000
[00:08:56]                   │ debg --- retry.tryForTime error: [data-test-subj="mlNoDataFrameAnalyticsFound"] is not displayed
[00:08:56]                   │ debg TestSubjects.exists(~mlAnalyticsTable)
[00:08:56]                   │ debg Find.existsByDisplayedByCssSelector('[data-test-subj~="mlAnalyticsTable"]') with timeout=60000
[00:08:59]                   │ debg --- retry.tryForTime error: [data-test-subj~="mlAnalyticsTable"] is not displayed
[00:09:02]                   │ debg --- retry.tryForTime failed again with the same message...
[00:09:05]                   │ debg --- retry.tryForTime failed again with the same message...
[00:09:08]                   │ debg --- retry.tryForTime failed again with the same message...
[00:09:11]                   │ debg --- retry.tryForTime failed again with the same message...
[00:09:14]                   │ debg --- retry.tryForTime failed again with the same message...
[00:09:17]                   │ debg --- retry.tryForTime failed again with the same message...
[00:09:20]                   │ debg --- retry.tryForTime failed again with the same message...
[00:09:23]                   │ debg --- retry.tryForTime failed again with the same message...
[00:09:26]                   │ debg --- retry.tryForTime failed again with the same message...
[00:09:29]                   │ debg --- retry.tryForTime failed again with the same message...
[00:09:32]                   │ debg --- retry.tryForTime failed again with the same message...
[00:09:35]                   │ debg --- retry.tryForTime failed again with the same message...
[00:09:38]                   │ debg --- retry.tryForTime failed again with the same message...
[00:09:41]                   │ debg --- retry.tryForTime failed again with the same message...
[00:09:44]                   │ debg --- retry.tryForTime failed again with the same message...
[00:09:47]                   │ debg --- retry.tryForTime failed again with the same message...
[00:09:50]                   │ debg --- retry.tryForTime failed again with the same message...
[00:09:53]                   │ debg --- retry.tryForTime failed again with the same message...
[00:09:56]                   │ debg --- retry.tryForTime failed again with the same message...
[00:09:57]                   │ info Taking screenshot "/dev/shm/workspace/parallel/23/kibana/x-pack/test/functional/screenshots/failure/machine learning  stack management jobs manage spaces assign to all spaces should display original job only in assigned spaces.png"
[00:09:57]                   │ info Current URL is: http://localhost:61231/app/ml/data_frame_analytics?_g=(refreshInterval%3A(pause%3A!f%2Cvalue%3A30000))
[00:09:57]                   │ info Saving page source to: /dev/shm/workspace/parallel/23/kibana/x-pack/test/functional/failure_debug/html/machine learning  stack management jobs manage spaces assign to all spaces should display original job only in assigned spaces.html
[00:09:57]                   └- ✖ fail: machine learning  stack management jobs manage spaces assign to all spaces should display original job only in assigned spaces
[00:09:57]                   │      Error: expected testSubject(~mlAnalyticsTable) to exist
[00:09:57]                   │       at TestSubjects.existOrFail (/dev/shm/workspace/parallel/23/kibana/test/functional/services/common/test_subjects.ts:45:13)
[00:09:57]                   │       at AnalyticsTable.waitForAnalyticsToLoad (test/functional/services/ml/data_frame_analytics_table.ts:130:7)
[00:09:57]                   │       at AnalyticsTable.filterWithSearchString (test/functional/services/ml/data_frame_analytics_table.ts:181:7)
[00:09:57]                   │       at AnalyticsTable.assertAnalyticsJobDisplayedInTable (test/functional/services/ml/data_frame_analytics_table.ts:206:9)
[00:09:57]                   │       at assertJobsDisplayedInSpace (test/functional/apps/ml/stack_management_jobs/manage_spaces.ts:83:5)
[00:09:57]                   │       at Context.<anonymous> (test/functional/apps/ml/stack_management_jobs/manage_spaces.ts:160:13)
[00:09:57]                   │       at Object.apply (/dev/shm/workspace/parallel/23/kibana/node_modules/@kbn/test/target_node/functional_test_runner/lib/mocha/wrap_function.js:87:16)
[00:09:57]                   │ 
[00:09:57]                   │ 

Stack Trace

Error: expected testSubject(~mlAnalyticsTable) to exist
    at TestSubjects.existOrFail (/dev/shm/workspace/parallel/23/kibana/test/functional/services/common/test_subjects.ts:45:13)
    at AnalyticsTable.waitForAnalyticsToLoad (test/functional/services/ml/data_frame_analytics_table.ts:130:7)
    at AnalyticsTable.filterWithSearchString (test/functional/services/ml/data_frame_analytics_table.ts:181:7)
    at AnalyticsTable.assertAnalyticsJobDisplayedInTable (test/functional/services/ml/data_frame_analytics_table.ts:206:9)
    at assertJobsDisplayedInSpace (test/functional/apps/ml/stack_management_jobs/manage_spaces.ts:83:5)
    at Context.<anonymous> (test/functional/apps/ml/stack_management_jobs/manage_spaces.ts:160:13)
    at Object.apply (/dev/shm/workspace/parallel/23/kibana/node_modules/@kbn/test/target_node/functional_test_runner/lib/mocha/wrap_function.js:87:16)

Metrics [docs]

Module Count

Fewer modules leads to a faster build time

id before after diff
monitoring 667 524 -143

Async chunks

Total size of all lazy-loaded chunks that will be downloaded as the user navigates the app

id before after diff
monitoring 1.1MB 840.0KB -274.5KB

Page load bundle

Size of the bundles that are downloaded on every page load. Target size is below 100kb

id before after diff
monitoring 36.0KB 34.2KB -1.8KB
Unknown metric groups

async chunk count

id before after diff
monitoring 12 10 -2

History

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

@estermv
Copy link
Contributor Author

estermv commented Oct 18, 2021

Also, should we remove the render_react_app config definition or do you plan to do that as a followup PR?

It's also part of the follow-up. I tried to do only the essential here as a first step.

@estermv
Copy link
Contributor Author

estermv commented Oct 18, 2021

Testing (docker-testing-cluster)

@matschaffer if I'm not missing anything, all these issues are not related to deleting the code, these are bugs that already existed in React.

For example, I also noticed the Logstash breadcrumbs and opened an issue some days ago #114807

In my opinion, I think is better if we do the same for each one of the bugs you found to fix them in separate PRs. It would help also in prioritizing them.
This PR should be only to remove the essential Angular code.

Copy link
Contributor

@phillipb phillipb left a comment

Choose a reason for hiding this comment

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

LGTM

Copy link
Contributor

@matschaffer matschaffer left a comment

Choose a reason for hiding this comment

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

all these issues are not related to deleting the code, these are bugs that already existed in React.

Agreed.

Was noting them for posterity (like turning into discrete issues), not things I'd consider blocking merge. Let's do this thing.

@estermv estermv merged commit 3ebfb02 into elastic:master Oct 18, 2021
Copy link
Member

@simianhacker simianhacker left a comment

Choose a reason for hiding this comment

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

LGTM

kibanamachine added a commit to kibanamachine/kibana that referenced this pull request Oct 18, 2021
* Remove angular

* Fix translations

* convert insetupmode to boolean

* remove license service

Co-authored-by: Kibana Machine <[email protected]>
@kibanamachine
Copy link
Contributor

💚 Backport successful

Status Branch Result
7.x

This backport PR will be merged automatically after passing CI.

kibanamachine added a commit that referenced this pull request Oct 18, 2021
* Remove angular

* Fix translations

* convert insetupmode to boolean

* remove license service

Co-authored-by: Kibana Machine <[email protected]>

Co-authored-by: Ester Martí Vilaseca <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
auto-backport Deprecated - use backport:version if exact versions are needed Epic: Stack Monitoring de-angularization Feature:Stack Monitoring release_note:skip Skip the PR/issue when compiling release notes Team:Infra Monitoring UI - DEPRECATED DEPRECATED - Label for the Infra Monitoring UI team. Use Team:obs-ux-infra_services v7.16.0 v8.0.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Stack monitoring] Remove angular basic files
8 participants