elastic / kibana

Your window into the Elastic Stack
https://www.elastic.co/products/kibana
Other
19.81k stars 8.2k forks source link

Add rolling upgrade interstitials to UA #111808

Closed cjcenizal closed 3 years ago

cjcenizal commented 3 years ago

Background

Per the Stack upgrade instructions, users will first upgrade ES and then Kibana, which means at some point Kibana will be on 7.16 and ES will be on 8. Originally, Upgrade Assistant handled this case by implementing interstitial states that would replace the standard UI (https://github.com/elastic/kibana/pull/31309, https://github.com/elastic/kibana/pull/34762). They looked like this:

image image

The original code implemented this by checking the /status API endpoint and setting some local state appropriately.

Goal

Similar to the original implementation, we want to detect when the cluster is in the middle of a rolling upgrade or has completed a rolling upgrade, block access to the standard UI, and reflect this state in the UI instead.

To do this we should:

Other considerations

Note that there's currently client-side logic for surfacing rolling upgrade state in the UI but only for the ES deprecation issues panel and ES deprecation issues table (grep for partially_upgraded_error and upgraded_error). As part of this work we can remove this logic.

As part of this work we should also either add API integration tests to verify we're getting back the ES responses we expect when the cluster is in the middle of a rolling upgrade or add steps to the README for manual testing.

elasticmachine commented 3 years ago

Pinging @elastic/kibana-stack-management (Team:Stack Management)

cjcenizal commented 3 years ago

Closed by https://github.com/elastic/kibana/pull/112907