Skip to content

2024.2.4.0-b36

@Jethro-M Jethro-M tagged this 28 May 15:05
Summary:
Majority of the changes were skipped over when running `arc land` because arc detected those changes were part of a revision that was already closed. This diff includes all the changes that got removed from this commit: 4e9c332f6bab49d243a8776e4265c03d23248e0a

[PLAT-14899] Add UI support for pushing node agent to legacy nodes

This diff adds support for pushing node agent to legacy nodes.
On the universe action menu, it adds an "more" submenu which has a new "Install Node Agent" action.
 - The menu item displays "Install Node Agent" when the universe has node agent installation pending and "Reinstall Node Agent" if it already has attempted node agent installation.
    This is determined by the `installNodeAgent` field in the universeDetails returned from the backend. If `installNodeAgent` = true, then it means we still need to install node agent.
We also moved the following universe actions under the "more" submenu:
  - edit ysql/ycql configuration
  - edit postgres compatibility
  - edit connection pooling
  - disable backup
  - edit security
This is done to reduce the vertical height of the universe actions menu through grouping the less commonly used actions under
a submenu.

On the universe dashboard, it adds a collapsible but non-dismissable banner if any node agent for a running universe has errors and
the global runtime config `yb.node_agent.enabler.scan_interval` being greater than 0 minutes.
This diff adds a localStorage key `isInstallNodeAgentReminderBannerExpanded` which persists the expand/collapse state of the banner.
This is done so users don't need to close the banner every time they visit that page if they've already acknowledged the content.

On the node agent page, for each node agent row also we add a install node agent action.
Both the universe action menu item and the per node action item from the /nodeagent page open the same
'Install Node Agent' modal.
In both cases, the user is present with a choice to either install node agent for all nodes in the same universe,
or a specific node. If the modal was opened from the node agent page, then the specific node is restricted to the
node from which the modal was opened (see screenshot in test plan).

[PLAT-160407] Update text on YBA UI for node agent

This diff contains simply text updates and corrections for the YBA node agent UI.

[PLAT-16611][PLAT-16625] Text update for failed node agent installation banner on YBA UI

This diff updates the text on the failed node agent installation reminder banner on YBA UI.
The text update helps clarify the action that the user should take to resolve the failed installations.

This diff also updates the error labels for node agents. If the universe is paused, then the node agents under
that universe will be marked with `Universe Paused` if it has any error.

This diff also enables sorting for several columns that previously could not be sorted.

The `Delete` node agent action is renamed to `Unregister node agent` in order to maintain consistency with the term used in YBA documentation.
This action is no longer disabled for non-manually provisioned on-prem providers as we support this use case.

The `Reinstall node agent` action is now disabled for manually provisioned on-prem providers. This is because SSH access might not be available in this case and also any existing node-agent config will be wiped out when reinstalling.

The diff also changes the unregister node agent modal text to include the node name instead of the provider name as it is more relevant.

[PLAT-16625] Update node agent status prop in on-prem node list

The NodeAgentStatus component accepts a nodeAgent prop instead of status and
isReachable.

This diff fixes the OnPremNodesList so it passes the correct prop.

[PLAT-16625] Fix node agent status styling and error code label

The node agent status styling was being defaulted to the red/error style as it was switching on `status`
instead of `nodeAgent.state`.
Also, the lastError label needs to select error code part of the translation key instead of passing the whole object.

This diff fixes the issue by correcting the switch statement and selecting the string error code to pass to the translation key.

Test Plan:
Verify the user is able to (re)install node agent for a universe from the universe action menu.
{F319049}
{F319112}
{F319114}

Verify the user is able to (re)install node agent for a particular node from the node agent page.
{F319115}
Verify the universe dashboard warning appears as expected when the conditions are met.
{F319319}
{F319320}

Verify the UI toggle for `yb.node_agent.client_enabled` runtime config also comes with a warning message
informing the user about future YBA upgrade requirements.
{F319426}
{F319427}

Verify the updated text is as expected.
{F323448}
{F323449}
{F323450}
{F323453}

Verify the text on the failed node agent installation banner is as expected.
{F329423}
{F329756}
{F329807}
{F329817}

Verify the on-prem nodes list can be rendered when the node agent status column is
shown.
{F330791}

Verify agent status styling is applied correctly different node agent statuses.
{F332291}
Verify agent error labels show up as expected.
{F332298}

Reviewers: rmadhavan, nsingh, mkazerooni, ghodge, kkannan, lsangappa

Reviewed By: nsingh

Subscribers: yugaware

Differential Revision: https://phorge.dev.yugabyte.com/D44310
Assets 2
Loading