manager icon indicating copy to clipboard operation
manager copied to clipboard

upcoming: [M3-7580] - Add list view for Linode Clone/Backup

Open hkhalil-akamai opened this issue 1 year ago โ€ข 4 comments

Description ๐Ÿ“

Introduces a list view for selecting linodes to clone/restore from in the create UI.

This is the final PR of the Linode Clone UI Updates.

Changes ๐Ÿ”„

  • Introduces a new list view for large-screen (mdUp) devices
  • List view displays Linode label, status, image, plan and region
  • Includes inline "Power Off" action button for running linodes.

Preview ๐Ÿ“ท

Before After
Clone Linode
Screenshot 2024-02-13 at 4 28 38 PM Screenshot 2024-02-13 at 4 28 02 PM
Backups
Screenshot 2024-02-13 at 4 28 47 PM Screenshot 2024-02-13 at 4 28 23 PM

How to test ๐Ÿงช

Prerequisites

  • Ensure "Linode Clone UI Changes" feature flag is turned on

Verification steps

  • Enter the Linode Create flow, either through the "Create" menu on the top-left corner of the app or by selecting "Clone" in the action menu for a linode
  • In both the "Clone Linode" and "Backups" tabs:
    • Linode label, status, image, plan and region are displayed
    • Sorting works as expected for all fields
    • For running Linodes: Power Off button is displayed and clicking it displays a confirmation dialog
    • For small displays, list reverts back to the original cards view
  • In the "Clone Linode" tab only:
    • Selecting a linode populates the region, plan selection and label fields
  • In the "Backups" tab only:
    • Selecting a linode displays all available backups for that linode

As an Author I have considered ๐Ÿค”

Check all that apply

  • [x] ๐Ÿ‘€ Doing a self review
  • [x] โ” Our contribution guidelines
  • [x] ๐Ÿค Splitting feature into small PRs
  • [x] โž• Adding a changeset
  • [x] ๐Ÿงช Providing/Improving test coverage
  • [x] ๐Ÿ” Removing all sensitive information from the code and PR description
  • [x] ๐Ÿšฉ Using a feature flag to protect the release
  • [x] ๐Ÿ‘ฃ Providing comprehensive reproduction steps
  • [x] ๐Ÿ“‘ Providing or updating our documentation
  • [x] ๐Ÿ•› Scheduling a pair reviewing session
  • [x] ๐Ÿ“ฑ Providing mobile support
  • [x] โ™ฟ Providing accessibility support

hkhalil-akamai avatar Feb 12 '24 21:02 hkhalil-akamai

@hkhalil-akamai you also need to trigger the code coverage and e2e suite with another commit. I wonder if the e2e suite is going to trip or keep testing the old UI (if it is covered at all, which I think it is) - either way you will need to mock the flag to test the new UI

abailly-akamai avatar Feb 14 '24 14:02 abailly-akamai

@hkhalil-akamai you also need to trigger the code coverage and e2e suite with another commit. I wonder if the e2e suite is going to trip or keep testing the old UI (if it is covered at all, which I think it is) - either way you will need to mock the flag to test the new UI

Ooh I didn't think about this, does the test environment use development flags? (I believe the flag is enabled in dev).

hkhalil-akamai avatar Feb 14 '24 20:02 hkhalil-akamai

@hkhalil-akamai

does the test environment use development flags

you can mock those. ex: https://github.com/linode/manager/blob/develop/packages/manager/cypress/e2e/core/account/account-login-history.spec.ts#L44-L48

You can mock the flag off for now so it passes for this PR, but you need a follow up ticket to handle the new flow before the flag is turned on in any environment (if you get failures)

abailly-akamai avatar Feb 14 '24 20:02 abailly-akamai

Coverage Report: โœ…
Base Coverage: 81.32%
Current Coverage: 81.34%

github-actions[bot] avatar Feb 15 '24 23:02 github-actions[bot]

Changed notices to use bullet points as suggested by @abailly-akamai:

Before After
Clone Linode
Screenshot 2024-02-21 at 6 32 36 PM Screenshot 2024-02-21 at 6 30 34 PM
Backups
Screenshot 2024-02-21 at 6 32 41 PM Screenshot 2024-02-21 at 6 30 21 PM

hkhalil-akamai avatar Feb 21 '24 23:02 hkhalil-akamai

Verified all E2E tests pass locally with feature flag enabled.

hkhalil-akamai avatar Feb 22 '24 21:02 hkhalil-akamai