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

upcoming: [DI-21811] - Post processing of missing timestamp data across dimensions in ACLP charts #11225

Merged
merged 10 commits into from
Nov 7, 2024

Conversation

venkymano-akamai
Copy link
Contributor

@venkymano-akamai venkymano-akamai commented Nov 7, 2024

Description 📝

When the charts of ACLP for DBaaS has multiple dimensions some of the timestamps are missing across dimensions and charts are plotted wrong. Fixed by adding missing timestamps across dimensions with null value

Changes 🔄

List any change relevant to the reviewer.

  1. Identify missing timestamps across dimensions data and add null value for those in each dimension

Target release date 🗓️

12-11-2024

Preview 📷

Hover showing two data for gapped plots Hover showing correct data
Screenshot 2024-11-07 at 6 04 58 PM Screenshot 2024-11-07 at 6 05 14 PM

How to test 🧪

  1. Login a mock user
  2. Navigate to monitor page
  3. Select dashboard and required filters
  4. Even after post processing data should be visible correctly
  5. Now replace the /metrics response constant in serverHandler.ts with the following
const response = {
      "data": {
        "result": [
          {
            "metric": {
              "cluster_id": "13418",
              "node_id": "primary-2"
            },
            "values": [
              [
                1730378400,
                "1.9846498107367672"
              ],
              [
                1730378700,
                "1.9490296676332808"
              ],
              [
                1730379000,
                "2.0869928900041823"
              ],
              [
                1730379300,
                "1.9540595252036872"
              ],
              [
                1730379600,
                "1.91288829401595"
              ],
              [
                1730379900,
                "2.0290340124670543"
              ],
              [
                1730380200,
                "1.9769679056409113"
              ],
            ]
          },
          {
            "metric": {
              "cluster_id": "13418",
              "node_id": "primary-4"
            },
            "values": [
              [
                1730895300,
                "1.4555706379868436"
              ],
              [
                1730895600,
                "0.8093735390369332"
              ],
              [
                1730895900,
                "0.6355631598714684"
              ],
              [
                1730896200,
                "0.5127285167168687"
              ],
              [
                1730896500,
                "0.5039695949469535"
              ],
              [
                1730896800,
                "0.5102423964287203"
              ],
              [
                1730897100,
                "0.5102125955344925"
              ],
            ]
          }
        ],
        "resultType": "matrix"
      },
      "isPartial": false,
      "stats": {
        "executionTimeMsec": 22,
        "seriesFetched": "78"
      },
      "status": "success"
    };

After this you can see two plats with gaps correctly displayed, same data in develop branch without post processing has issues

As an Author I have considered 🤔

Check all that apply

  • 👀 Doing a self review
  • ❔ Our contribution guidelines
  • 🤏 Splitting feature into small PRs
  • ➕ Adding a changeset
  • 🧪 Providing/Improving test coverage
  • 🔐 Removing all sensitive information from the code and PR description
  • 🚩 Using a feature flag to protect the release
  • 👣 Providing comprehensive reproduction steps
  • 📑 Providing or updating our documentation
  • 🕛 Scheduling a pair reviewing session
  • 📱 Providing mobile support
  • ♿ Providing accessibility support

@venkymano-akamai venkymano-akamai changed the base branch from develop to release-v1.132.0 November 7, 2024 13:43
@jaalah-akamai
Copy link
Contributor

I ok'd this after speaking with the CP team - this is needed for DBaaS GA. It's not actually an issue with Recharts which is what they're planning to migrate over to by the next release.

@jaalah-akamai jaalah-akamai marked this pull request as ready for review November 7, 2024 15:30
@jaalah-akamai jaalah-akamai requested a review from a team as a code owner November 7, 2024 15:30
@jaalah-akamai jaalah-akamai requested review from bnussman-akamai and abailly-akamai and removed request for a team November 7, 2024 15:30
* @returns The list of dimension data filled with null values for missing timestamps
*/
export const fillMissingTimeStampsAcrossDimensions = (...arraysToBeFilled: [number, number | null][][]): [number, number | null][][] => {
// Step 1: Collect all unique keys from all arrays
Copy link
Contributor

Choose a reason for hiding this comment

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

What happens if arraysToBeFilled is empty? Do we need to have a base case for that where we return early?

if (arraysToBeFilled.length === 0) return [];

// Step 3: Synchronize the arrays to have null values for all missing timestamps
return arraysToBeFilled.map(array => {
// Step 3.1: Convert the array into a map for fast lookup
const map = new Map(array.map(([key, value]) => [key, value]));
Copy link
Contributor

Choose a reason for hiding this comment

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

I wonder if this (or similar) could be a bit more efficient:

return arraysToBeFilled.map(array => {
  const valuesByTimestamp: { [key: number]: number | null } = Object.fromEntries(array);

  // Map each timestamp to its value or null if missing
  return sortedTimestamps.map(timestamp => 
    [timestamp, valuesByTimestamp[timestamp] ?? null]
  );
});

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@abailly-akamai , thanks for the suggestion, the existing approach using map itself efficient / faster for data retrieval since sometimes number of timestamps will be huge. Lets use the existing approach for now

/**
* This method handles the existing issue in chart JS, and it will deleted when the recharts migration is completed
* @param arraysToBeFilled The list of dimension data to be filled
* @returns The list of dimension data filled with null values for missing timestamps
Copy link
Contributor

Choose a reason for hiding this comment

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

Not sure if CloudPulse as a TODO pattern, but it's helpful for finding/not missing small tech debt like this
ex: // TODO: CloudPulse - delete when recharts migration completed

Copy link
Contributor Author

Choose a reason for hiding this comment

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

done

@linode-gh-bot
Copy link
Collaborator

Cloud Manager UI test results

🎉 445 passing tests on test run #9 ↗︎

❌ Failing✅ Passing↪️ Skipped🕐 Duration
0 Failing445 Passing2 Skipped88m 29s

@jaalah-akamai jaalah-akamai added the For Release Apply this label if the release branch has already been cut. label Nov 7, 2024
Copy link

github-actions bot commented Nov 7, 2024

Coverage Report:
Base Coverage: 87.46%
Current Coverage: 87.46%

@jaalah-akamai jaalah-akamai merged commit ea8b449 into linode:release-v1.132.0 Nov 7, 2024
23 checks passed
santoshp210-akamai added a commit to santoshp210-akamai/manager that referenced this pull request Nov 13, 2024
* feat: [UIE-8194] - DBaaS major and minor upgrades - 4 (linode#11199)

* feat: [M3-8831] - New GPUv2 egress transfer display (linode#11209)

* Add new gpuV2 egress transferlogic

* light cleanup

* adjust e2e s

* Added changeset: New GPUv2 egress transfer helpers

* feedback @coliu-akamai @hkhalil-akamai

* feedback @coliu-akamai @jaalah-akamai

* feedback optimization

* change: [M3-8806] - Disable unsupported images for distributed regions (linode#11206)

## Description 📝
In the Linode Create flow, when a distributed region is selected, images & distros that do not support distributed regions should be disabled

Note: It looks like the distributions are now sorted alphabetically. I don't see any issues with this but just wanted to point that out in case anyone did

## Changes  🔄
List any change relevant to the reviewer.
- Disable unsupported images/distros for distributed regions in Linode Create
- Removed the distributed icon & associated icon text
- Removed the word `currently` in the Add-Ons warning notice for distributed regions
- Added a new generic `ListItemOption` component and refactored `ImageOption`, `PlacementGroupSelectOption`, and `RegionOption` to use new generic component

## Target release date 🗓️
11/12

## How to test 🧪

### Prerequisites
(How to setup test environment)
- Ensure your account has the `new-dc-testing`, `new-dc-testing-gecko`, `edge_testing` and `edge_compute` customer tags

### Verification steps
(How to verify changes)
- Go to the Linode Create page and verify the following on the `OS` tab and `Images` tab:
  - Select a core region -> No Images/distributions should be disabled
  - Select a distributed region -> Images/distributions that do not support distributed regions should be disabled
- There should be no regressions in the components that were refactored
- Ensure unit tests and e2e tests are passing locally/remotely

* fix: [UIE-8246] - DBaaS provisioning 2 node clusters (linode#11218)

* feat : [M3-8528] - Include Object Storage buckets in Support tickets' dropdown (linode#11178)

* feat: [M3-8528] - Include Object Storage in Support Tickets

* query change

* Added changeset: Include Object Storage buckets in Support tickets dropdown

* added link support for object storage

* removed redundant query

* query updation and restructuring request payload

* Added changeset

* Initial Changelog

* refactor: [M3-8646] – Migrate `Divider` to `ui` package  (linode#11205)

* refactor: [M3-8646] – Migrate `Divider` to `ui` package

* Added changeset: Migrate Divider to ui package

* migrating all  imports

* removing redundant hook imports

* updated the import for omittedProps

* UIE-8247: Conditionally give the new docs as the link on database landing page (linode#11227)

* fix: [M3-8764] - Kubernetes UI issues (linode#11217)

* initial clean up

* save progress

* add changeset

* fix type error

* feedback @mjac0bs

* a few more small fixes

* a few more small fixes

---------

Co-authored-by: Banks Nussman <banks@nussman.us>

* upcoming: [DI-21811] - Post processing of missing timestamp data across dimensions in ACLP charts (linode#11225)

* upcoming: [DI-18419] - chart post processing for missing timestamps

* upcoming: [DI-21811] - Code corrections and refactoring

* upcoming: [DI-21811] - Code corrections and refactoring

* upcoming: [DI-21811] - Code corrections and refactoring

* upcoming: [DI-21811] - Added changeset

* upcoming: [DI-21811] - comment updates

* upcoming: [DI-21811] - comment updates

* upcoming: [DI-21811] - comment updates

* upcoming: [DI-21811] - comment updates

* upcoming: [DI-21811] - early returns for empty array

---------

Co-authored-by: vmangalr <vmangalr@akamai.com>

* Update changelog

* refactor: [M3-8650] - Migrate Stack to `@linode/ui` package (linode#11228)

* migrate stack, update organization for divider/icon button

* Added changeset: `Stack` component to `ui` package

* refactor: [M3-8710] - Move `Notice` & `Tooltip` components to UI package and update imports (linode#11174)

* Move Notice to UI package and update imports

* Add test imports

* Add renderWithTheme and other changes to make tests pass

* Fix broken icon imports

* Added changeset: Move `Notice` and `Tooltip` components to UI package

* Feedback @dwiley-akamai: consolidate imports and rename icon exports

* change: [M3-7337] - change Linode Details Summary VPC IPv4 Text to Copy Object. (linode#11172)

* change: [M3-7337] - change Linode Details Summary VPC IPv4 Text to Copy Object.

* Added changeset: change Linode Details Summary VPC IPv4 Text to Copy Object.

* Update changeset description

Co-authored-by: Purvesh Makode <pmakode@akamai.com>

* remove optional chaining

* change Text from "Subnets" to "Subnet"

* remove extra borderTop

* refactor: [M3-7337] - change Linode Details Summary VPC IPv4 Text to Copy Object

* Add descriptive variable name

---------

Co-authored-by: Purvesh Makode <pmakode@akamai.com>

* upcoming: [DI-21814] - ACLP UI - DBaaS instances order by label (linode#11226)

* upcoming: [DI-21814] - DBaaS instances order by label

* upcoming: [DI-21814] - Added changeset

* DI-21814: use map for better readability and optimisations

---------

Co-authored-by: vmangalr <vmangalr@akamai.com>

* UIE-8254: Add tooltip for ipv6 for new db clusters (linode#11231)

* feat: [UIE-8193] - Usable Storage Tooltip for Create/Resize Database table (linode#11232)

* feat: [UIE-8193] - Tooltip for Create/Resize Database table

* feat: [UIE-8193] - Tooltip context for small screens

* feat: [UIE-8193] - Tooltip for Create/Resize Database table (linode#11223)

* feat: [UIE-8193] - Tooltip for Create/Resize Database table

* Added changeset: Tooltip for 'Usable Storage' in Create/Resize Database Table

* feat: [UIE-8193] - Tooltip context for small screens

* DBaaS additions

* GPU egress transfer copy update (linode#11235)

* default behavior when creating new child clusters should match what existed before we enabled IPACL (in other words: disabled by default) (linode#11234)

Co-authored-by: Talmai Oliveira <toliveir@akamai.com>

* Update PULL_REQUEST_TEMPLATE.md (linode#11219)

* change: [M3-8860] - Update unit testing docs to prefer `userEvent` over `fireEvent` (linode#11221)

* Update 08-testing.md for userEvent

* Fix typo

* Address feedback; also further clean up linting issues the doc

* Fix a bad test that was not following good practices

* Added changeset: Update developer docs on unit testing user events

* Update changelog

* Fix LKE create ACL tests (linode#11237)

* feat: [M3-8665] - add option to copy token in LKE details page. (linode#11179)

* feat: [M3-8665] - add option to copy token in LKE details page.

* Added changeset: option to copy token in LKE details page

* Change the "Copy Token" button to use asynchronous functionality

* remove extra styling

* refactor: [M3-8665] - add option to copy token in LKE details page.

* Change cypress test for LKE update spec

* fix: sx styling for Textfield component (linode#11246)

* spread containerProps sx

* spread props.sx as well whoops

* fix: [M3-8894] - Linode Create crash when selected a Linode with a `type` that is `null` (linode#11247)

* don't fetch when `type` is an empty string

* fix and changelog entry

---------

Co-authored-by: Banks Nussman <banks@nussman.us>

* change: [M3-8857] - Update PULL_REQUEST_TEMPLATE (Part 2) (linode#11236)

* Make updates discussed to PR template during retro

* Add changeset

---------

Co-authored-by: corya-akamai <136115382+corya-akamai@users.noreply.github.com>
Co-authored-by: Alban Bailly <130582365+abailly-akamai@users.noreply.github.com>
Co-authored-by: Hana Xu <115299789+hana-akamai@users.noreply.github.com>
Co-authored-by: Harsh Shankar Rao <hrao@akamai.com>
Co-authored-by: Jaalah Ramos <jaalah.ramos@gmail.com>
Co-authored-by: rodonnel-akamai <rodonnel@akamai.com>
Co-authored-by: Banks Nussman <115251059+bnussman-akamai@users.noreply.github.com>
Co-authored-by: Banks Nussman <banks@nussman.us>
Co-authored-by: venkatmano-akamai <chk-Venkatesh@outlook.com>
Co-authored-by: vmangalr <vmangalr@akamai.com>
Co-authored-by: Connie Liu <139280159+coliu-akamai@users.noreply.github.com>
Co-authored-by: Hussain Khalil <122488130+hkhalil-akamai@users.noreply.github.com>
Co-authored-by: hasyed-akamai <hasyed@akamai.com>
Co-authored-by: Purvesh Makode <pmakode@akamai.com>
Co-authored-by: ankitaakamai <ankitaan@akamai.com>
Co-authored-by: mpolotsk-akamai <157619599+mpolotsk-akamai@users.noreply.github.com>
Co-authored-by: Talmai Oliveira <to@talm.ai>
Co-authored-by: Talmai Oliveira <toliveir@akamai.com>
Co-authored-by: John Callahan <114753608+jcallahan-akamai@users.noreply.github.com>
Co-authored-by: Mariah Jacobs <114685994+mjac0bs@users.noreply.github.com>
Co-authored-by: jdamore-linode <97627410+jdamore-linode@users.noreply.github.com>
Co-authored-by: Hana Xu <hxu@akamai.com>
santoshp210-akamai added a commit to santoshp210-akamai/manager that referenced this pull request Nov 13, 2024
* feat: [UIE-8194] - DBaaS major and minor upgrades - 4 (linode#11199)

* feat: [M3-8831] - New GPUv2 egress transfer display (linode#11209)

* Add new gpuV2 egress transferlogic

* light cleanup

* adjust e2e s

* Added changeset: New GPUv2 egress transfer helpers

* feedback @coliu-akamai @hkhalil-akamai

* feedback @coliu-akamai @jaalah-akamai

* feedback optimization

* change: [M3-8806] - Disable unsupported images for distributed regions (linode#11206)

## Description 📝
In the Linode Create flow, when a distributed region is selected, images & distros that do not support distributed regions should be disabled

Note: It looks like the distributions are now sorted alphabetically. I don't see any issues with this but just wanted to point that out in case anyone did

## Changes  🔄
List any change relevant to the reviewer.
- Disable unsupported images/distros for distributed regions in Linode Create
- Removed the distributed icon & associated icon text
- Removed the word `currently` in the Add-Ons warning notice for distributed regions
- Added a new generic `ListItemOption` component and refactored `ImageOption`, `PlacementGroupSelectOption`, and `RegionOption` to use new generic component

## Target release date 🗓️
11/12

## How to test 🧪

### Prerequisites
(How to setup test environment)
- Ensure your account has the `new-dc-testing`, `new-dc-testing-gecko`, `edge_testing` and `edge_compute` customer tags

### Verification steps
(How to verify changes)
- Go to the Linode Create page and verify the following on the `OS` tab and `Images` tab:
  - Select a core region -> No Images/distributions should be disabled
  - Select a distributed region -> Images/distributions that do not support distributed regions should be disabled
- There should be no regressions in the components that were refactored
- Ensure unit tests and e2e tests are passing locally/remotely

* fix: [UIE-8246] - DBaaS provisioning 2 node clusters (linode#11218)

* feat : [M3-8528] - Include Object Storage buckets in Support tickets' dropdown (linode#11178)

* feat: [M3-8528] - Include Object Storage in Support Tickets

* query change

* Added changeset: Include Object Storage buckets in Support tickets dropdown

* added link support for object storage

* removed redundant query

* query updation and restructuring request payload

* Added changeset

* Initial Changelog

* refactor: [M3-8646] – Migrate `Divider` to `ui` package  (linode#11205)

* refactor: [M3-8646] – Migrate `Divider` to `ui` package

* Added changeset: Migrate Divider to ui package

* migrating all  imports

* removing redundant hook imports

* updated the import for omittedProps

* UIE-8247: Conditionally give the new docs as the link on database landing page (linode#11227)

* fix: [M3-8764] - Kubernetes UI issues (linode#11217)

* initial clean up

* save progress

* add changeset

* fix type error

* feedback @mjac0bs

* a few more small fixes

* a few more small fixes

---------

Co-authored-by: Banks Nussman <banks@nussman.us>

* upcoming: [DI-21811] - Post processing of missing timestamp data across dimensions in ACLP charts (linode#11225)

* upcoming: [DI-18419] - chart post processing for missing timestamps

* upcoming: [DI-21811] - Code corrections and refactoring

* upcoming: [DI-21811] - Code corrections and refactoring

* upcoming: [DI-21811] - Code corrections and refactoring

* upcoming: [DI-21811] - Added changeset

* upcoming: [DI-21811] - comment updates

* upcoming: [DI-21811] - comment updates

* upcoming: [DI-21811] - comment updates

* upcoming: [DI-21811] - comment updates

* upcoming: [DI-21811] - early returns for empty array

---------

Co-authored-by: vmangalr <vmangalr@akamai.com>

* Update changelog

* refactor: [M3-8650] - Migrate Stack to `@linode/ui` package (linode#11228)

* migrate stack, update organization for divider/icon button

* Added changeset: `Stack` component to `ui` package

* refactor: [M3-8710] - Move `Notice` & `Tooltip` components to UI package and update imports (linode#11174)

* Move Notice to UI package and update imports

* Add test imports

* Add renderWithTheme and other changes to make tests pass

* Fix broken icon imports

* Added changeset: Move `Notice` and `Tooltip` components to UI package

* Feedback @dwiley-akamai: consolidate imports and rename icon exports

* change: [M3-7337] - change Linode Details Summary VPC IPv4 Text to Copy Object. (linode#11172)

* change: [M3-7337] - change Linode Details Summary VPC IPv4 Text to Copy Object.

* Added changeset: change Linode Details Summary VPC IPv4 Text to Copy Object.

* Update changeset description

Co-authored-by: Purvesh Makode <pmakode@akamai.com>

* remove optional chaining

* change Text from "Subnets" to "Subnet"

* remove extra borderTop

* refactor: [M3-7337] - change Linode Details Summary VPC IPv4 Text to Copy Object

* Add descriptive variable name

---------

Co-authored-by: Purvesh Makode <pmakode@akamai.com>

* upcoming: [DI-21814] - ACLP UI - DBaaS instances order by label (linode#11226)

* upcoming: [DI-21814] - DBaaS instances order by label

* upcoming: [DI-21814] - Added changeset

* DI-21814: use map for better readability and optimisations

---------

Co-authored-by: vmangalr <vmangalr@akamai.com>

* UIE-8254: Add tooltip for ipv6 for new db clusters (linode#11231)

* feat: [UIE-8193] - Usable Storage Tooltip for Create/Resize Database table (linode#11232)

* feat: [UIE-8193] - Tooltip for Create/Resize Database table

* feat: [UIE-8193] - Tooltip context for small screens

* feat: [UIE-8193] - Tooltip for Create/Resize Database table (linode#11223)

* feat: [UIE-8193] - Tooltip for Create/Resize Database table

* Added changeset: Tooltip for 'Usable Storage' in Create/Resize Database Table

* feat: [UIE-8193] - Tooltip context for small screens

* DBaaS additions

* GPU egress transfer copy update (linode#11235)

* default behavior when creating new child clusters should match what existed before we enabled IPACL (in other words: disabled by default) (linode#11234)

Co-authored-by: Talmai Oliveira <toliveir@akamai.com>

* Update PULL_REQUEST_TEMPLATE.md (linode#11219)

* change: [M3-8860] - Update unit testing docs to prefer `userEvent` over `fireEvent` (linode#11221)

* Update 08-testing.md for userEvent

* Fix typo

* Address feedback; also further clean up linting issues the doc

* Fix a bad test that was not following good practices

* Added changeset: Update developer docs on unit testing user events

* Update changelog

* Fix LKE create ACL tests (linode#11237)

* feat: [M3-8665] - add option to copy token in LKE details page. (linode#11179)

* feat: [M3-8665] - add option to copy token in LKE details page.

* Added changeset: option to copy token in LKE details page

* Change the "Copy Token" button to use asynchronous functionality

* remove extra styling

* refactor: [M3-8665] - add option to copy token in LKE details page.

* Change cypress test for LKE update spec

* fix: sx styling for Textfield component (linode#11246)

* spread containerProps sx

* spread props.sx as well whoops

* fix: [M3-8894] - Linode Create crash when selected a Linode with a `type` that is `null` (linode#11247)

* don't fetch when `type` is an empty string

* fix and changelog entry

---------

Co-authored-by: Banks Nussman <banks@nussman.us>

* change: [M3-8857] - Update PULL_REQUEST_TEMPLATE (Part 2) (linode#11236)

* Make updates discussed to PR template during retro

* Add changeset

* refactor: [M3-8900] - Move `RadioGroup` to `@linode/ui` package (linode#11254)

* Move RadioGroup to ui package

* Added changeset: Move `RadioGroup` from `manager` to `ui` package

---------

Co-authored-by: corya-akamai <136115382+corya-akamai@users.noreply.github.com>
Co-authored-by: Alban Bailly <130582365+abailly-akamai@users.noreply.github.com>
Co-authored-by: Hana Xu <115299789+hana-akamai@users.noreply.github.com>
Co-authored-by: Harsh Shankar Rao <hrao@akamai.com>
Co-authored-by: Jaalah Ramos <jaalah.ramos@gmail.com>
Co-authored-by: rodonnel-akamai <rodonnel@akamai.com>
Co-authored-by: Banks Nussman <115251059+bnussman-akamai@users.noreply.github.com>
Co-authored-by: Banks Nussman <banks@nussman.us>
Co-authored-by: venkatmano-akamai <chk-Venkatesh@outlook.com>
Co-authored-by: vmangalr <vmangalr@akamai.com>
Co-authored-by: Connie Liu <139280159+coliu-akamai@users.noreply.github.com>
Co-authored-by: Hussain Khalil <122488130+hkhalil-akamai@users.noreply.github.com>
Co-authored-by: hasyed-akamai <hasyed@akamai.com>
Co-authored-by: Purvesh Makode <pmakode@akamai.com>
Co-authored-by: ankitaakamai <ankitaan@akamai.com>
Co-authored-by: mpolotsk-akamai <157619599+mpolotsk-akamai@users.noreply.github.com>
Co-authored-by: Talmai Oliveira <to@talm.ai>
Co-authored-by: Talmai Oliveira <toliveir@akamai.com>
Co-authored-by: John Callahan <114753608+jcallahan-akamai@users.noreply.github.com>
Co-authored-by: Mariah Jacobs <114685994+mjac0bs@users.noreply.github.com>
Co-authored-by: jdamore-linode <97627410+jdamore-linode@users.noreply.github.com>
Co-authored-by: Hana Xu <hxu@akamai.com>
jaalah-akamai pushed a commit that referenced this pull request Nov 18, 2024
…ts for the Create Alert Definition Form (#11255)

* Upcoming : [DI:21546] - Added the create button and name,description,severity components from General Information for the Create Alert Definition form

* Upcoming: [DI:21456] - Added unit test for AlertSeverity component, changed the naming of properties in the Alert type, updated the url of endpoint

* Upcoming: [DI:21546] - Added the unit test for CreateAlertDefinition component

* upcoming: [DI:21546] - Added the onChange for the tabs

* Upcoming: [DI-21546] - Removed unneccessary components and made changes to the Create Alert forma and Severity Select component

* Upcoming: [DI-21694] - Modified the changes with Severity component, modified and added appropriate types

* Upcoming: [DI-21694] - Added null as empty value for the Severity component, Fixed the Unit Tests for Severity component, fixed styling between components in Create Alert Form

* Merging latest develop changes  (#23)

* feat: [UIE-8194] - DBaaS major and minor upgrades - 4 (#11199)

* feat: [M3-8831] - New GPUv2 egress transfer display (#11209)

* Add new gpuV2 egress transferlogic

* light cleanup

* adjust e2e s

* Added changeset: New GPUv2 egress transfer helpers

* feedback @coliu-akamai @hkhalil-akamai

* feedback @coliu-akamai @jaalah-akamai

* feedback optimization

* change: [M3-8806] - Disable unsupported images for distributed regions (#11206)

## Description 📝
In the Linode Create flow, when a distributed region is selected, images & distros that do not support distributed regions should be disabled

Note: It looks like the distributions are now sorted alphabetically. I don't see any issues with this but just wanted to point that out in case anyone did

## Changes  🔄
List any change relevant to the reviewer.
- Disable unsupported images/distros for distributed regions in Linode Create
- Removed the distributed icon & associated icon text
- Removed the word `currently` in the Add-Ons warning notice for distributed regions
- Added a new generic `ListItemOption` component and refactored `ImageOption`, `PlacementGroupSelectOption`, and `RegionOption` to use new generic component

## Target release date 🗓️
11/12

## How to test 🧪

### Prerequisites
(How to setup test environment)
- Ensure your account has the `new-dc-testing`, `new-dc-testing-gecko`, `edge_testing` and `edge_compute` customer tags

### Verification steps
(How to verify changes)
- Go to the Linode Create page and verify the following on the `OS` tab and `Images` tab:
  - Select a core region -> No Images/distributions should be disabled
  - Select a distributed region -> Images/distributions that do not support distributed regions should be disabled
- There should be no regressions in the components that were refactored
- Ensure unit tests and e2e tests are passing locally/remotely

* fix: [UIE-8246] - DBaaS provisioning 2 node clusters (#11218)

* feat : [M3-8528] - Include Object Storage buckets in Support tickets' dropdown (#11178)

* feat: [M3-8528] - Include Object Storage in Support Tickets

* query change

* Added changeset: Include Object Storage buckets in Support tickets dropdown

* added link support for object storage

* removed redundant query

* query updation and restructuring request payload

* Added changeset

* Initial Changelog

* refactor: [M3-8646] – Migrate `Divider` to `ui` package  (#11205)

* refactor: [M3-8646] – Migrate `Divider` to `ui` package

* Added changeset: Migrate Divider to ui package

* migrating all  imports

* removing redundant hook imports

* updated the import for omittedProps

* UIE-8247: Conditionally give the new docs as the link on database landing page (#11227)

* fix: [M3-8764] - Kubernetes UI issues (#11217)

* initial clean up

* save progress

* add changeset

* fix type error

* feedback @mjac0bs

* a few more small fixes

* a few more small fixes

---------

Co-authored-by: Banks Nussman <banks@nussman.us>

* upcoming: [DI-21811] - Post processing of missing timestamp data across dimensions in ACLP charts (#11225)

* upcoming: [DI-18419] - chart post processing for missing timestamps

* upcoming: [DI-21811] - Code corrections and refactoring

* upcoming: [DI-21811] - Code corrections and refactoring

* upcoming: [DI-21811] - Code corrections and refactoring

* upcoming: [DI-21811] - Added changeset

* upcoming: [DI-21811] - comment updates

* upcoming: [DI-21811] - comment updates

* upcoming: [DI-21811] - comment updates

* upcoming: [DI-21811] - comment updates

* upcoming: [DI-21811] - early returns for empty array

---------

Co-authored-by: vmangalr <vmangalr@akamai.com>

* Update changelog

* refactor: [M3-8650] - Migrate Stack to `@linode/ui` package (#11228)

* migrate stack, update organization for divider/icon button

* Added changeset: `Stack` component to `ui` package

* refactor: [M3-8710] - Move `Notice` & `Tooltip` components to UI package and update imports (#11174)

* Move Notice to UI package and update imports

* Add test imports

* Add renderWithTheme and other changes to make tests pass

* Fix broken icon imports

* Added changeset: Move `Notice` and `Tooltip` components to UI package

* Feedback @dwiley-akamai: consolidate imports and rename icon exports

* change: [M3-7337] - change Linode Details Summary VPC IPv4 Text to Copy Object. (#11172)

* change: [M3-7337] - change Linode Details Summary VPC IPv4 Text to Copy Object.

* Added changeset: change Linode Details Summary VPC IPv4 Text to Copy Object.

* Update changeset description

Co-authored-by: Purvesh Makode <pmakode@akamai.com>

* remove optional chaining

* change Text from "Subnets" to "Subnet"

* remove extra borderTop

* refactor: [M3-7337] - change Linode Details Summary VPC IPv4 Text to Copy Object

* Add descriptive variable name

---------

Co-authored-by: Purvesh Makode <pmakode@akamai.com>

* upcoming: [DI-21814] - ACLP UI - DBaaS instances order by label (#11226)

* upcoming: [DI-21814] - DBaaS instances order by label

* upcoming: [DI-21814] - Added changeset

* DI-21814: use map for better readability and optimisations

---------

Co-authored-by: vmangalr <vmangalr@akamai.com>

* UIE-8254: Add tooltip for ipv6 for new db clusters (#11231)

* feat: [UIE-8193] - Usable Storage Tooltip for Create/Resize Database table (#11232)

* feat: [UIE-8193] - Tooltip for Create/Resize Database table

* feat: [UIE-8193] - Tooltip context for small screens

* feat: [UIE-8193] - Tooltip for Create/Resize Database table (#11223)

* feat: [UIE-8193] - Tooltip for Create/Resize Database table

* Added changeset: Tooltip for 'Usable Storage' in Create/Resize Database Table

* feat: [UIE-8193] - Tooltip context for small screens

* DBaaS additions

* GPU egress transfer copy update (#11235)

* default behavior when creating new child clusters should match what existed before we enabled IPACL (in other words: disabled by default) (#11234)

Co-authored-by: Talmai Oliveira <toliveir@akamai.com>

* Update PULL_REQUEST_TEMPLATE.md (#11219)

* change: [M3-8860] - Update unit testing docs to prefer `userEvent` over `fireEvent` (#11221)

* Update 08-testing.md for userEvent

* Fix typo

* Address feedback; also further clean up linting issues the doc

* Fix a bad test that was not following good practices

* Added changeset: Update developer docs on unit testing user events

* Update changelog

* Fix LKE create ACL tests (#11237)

* feat: [M3-8665] - add option to copy token in LKE details page. (#11179)

* feat: [M3-8665] - add option to copy token in LKE details page.

* Added changeset: option to copy token in LKE details page

* Change the "Copy Token" button to use asynchronous functionality

* remove extra styling

* refactor: [M3-8665] - add option to copy token in LKE details page.

* Change cypress test for LKE update spec

* fix: sx styling for Textfield component (#11246)

* spread containerProps sx

* spread props.sx as well whoops

* fix: [M3-8894] - Linode Create crash when selected a Linode with a `type` that is `null` (#11247)

* don't fetch when `type` is an empty string

* fix and changelog entry

---------

Co-authored-by: Banks Nussman <banks@nussman.us>

* change: [M3-8857] - Update PULL_REQUEST_TEMPLATE (Part 2) (#11236)

* Make updates discussed to PR template during retro

* Add changeset

---------

Co-authored-by: corya-akamai <136115382+corya-akamai@users.noreply.github.com>
Co-authored-by: Alban Bailly <130582365+abailly-akamai@users.noreply.github.com>
Co-authored-by: Hana Xu <115299789+hana-akamai@users.noreply.github.com>
Co-authored-by: Harsh Shankar Rao <hrao@akamai.com>
Co-authored-by: Jaalah Ramos <jaalah.ramos@gmail.com>
Co-authored-by: rodonnel-akamai <rodonnel@akamai.com>
Co-authored-by: Banks Nussman <115251059+bnussman-akamai@users.noreply.github.com>
Co-authored-by: Banks Nussman <banks@nussman.us>
Co-authored-by: venkatmano-akamai <chk-Venkatesh@outlook.com>
Co-authored-by: vmangalr <vmangalr@akamai.com>
Co-authored-by: Connie Liu <139280159+coliu-akamai@users.noreply.github.com>
Co-authored-by: Hussain Khalil <122488130+hkhalil-akamai@users.noreply.github.com>
Co-authored-by: hasyed-akamai <hasyed@akamai.com>
Co-authored-by: Purvesh Makode <pmakode@akamai.com>
Co-authored-by: ankitaakamai <ankitaan@akamai.com>
Co-authored-by: mpolotsk-akamai <157619599+mpolotsk-akamai@users.noreply.github.com>
Co-authored-by: Talmai Oliveira <to@talm.ai>
Co-authored-by: Talmai Oliveira <toliveir@akamai.com>
Co-authored-by: John Callahan <114753608+jcallahan-akamai@users.noreply.github.com>
Co-authored-by: Mariah Jacobs <114685994+mjac0bs@users.noreply.github.com>
Co-authored-by: jdamore-linode <97627410+jdamore-linode@users.noreply.github.com>
Co-authored-by: Hana Xu <hxu@akamai.com>

* Revert "Merging latest develop changes  (#23)" (#24)

This reverts commit 2887f18.

* Merging latest changes develop (#25)

* feat: [UIE-8194] - DBaaS major and minor upgrades - 4 (#11199)

* feat: [M3-8831] - New GPUv2 egress transfer display (#11209)

* Add new gpuV2 egress transferlogic

* light cleanup

* adjust e2e s

* Added changeset: New GPUv2 egress transfer helpers

* feedback @coliu-akamai @hkhalil-akamai

* feedback @coliu-akamai @jaalah-akamai

* feedback optimization

* change: [M3-8806] - Disable unsupported images for distributed regions (#11206)

## Description 📝
In the Linode Create flow, when a distributed region is selected, images & distros that do not support distributed regions should be disabled

Note: It looks like the distributions are now sorted alphabetically. I don't see any issues with this but just wanted to point that out in case anyone did

## Changes  🔄
List any change relevant to the reviewer.
- Disable unsupported images/distros for distributed regions in Linode Create
- Removed the distributed icon & associated icon text
- Removed the word `currently` in the Add-Ons warning notice for distributed regions
- Added a new generic `ListItemOption` component and refactored `ImageOption`, `PlacementGroupSelectOption`, and `RegionOption` to use new generic component

## Target release date 🗓️
11/12

## How to test 🧪

### Prerequisites
(How to setup test environment)
- Ensure your account has the `new-dc-testing`, `new-dc-testing-gecko`, `edge_testing` and `edge_compute` customer tags

### Verification steps
(How to verify changes)
- Go to the Linode Create page and verify the following on the `OS` tab and `Images` tab:
  - Select a core region -> No Images/distributions should be disabled
  - Select a distributed region -> Images/distributions that do not support distributed regions should be disabled
- There should be no regressions in the components that were refactored
- Ensure unit tests and e2e tests are passing locally/remotely

* fix: [UIE-8246] - DBaaS provisioning 2 node clusters (#11218)

* feat : [M3-8528] - Include Object Storage buckets in Support tickets' dropdown (#11178)

* feat: [M3-8528] - Include Object Storage in Support Tickets

* query change

* Added changeset: Include Object Storage buckets in Support tickets dropdown

* added link support for object storage

* removed redundant query

* query updation and restructuring request payload

* Added changeset

* Initial Changelog

* refactor: [M3-8646] – Migrate `Divider` to `ui` package  (#11205)

* refactor: [M3-8646] – Migrate `Divider` to `ui` package

* Added changeset: Migrate Divider to ui package

* migrating all  imports

* removing redundant hook imports

* updated the import for omittedProps

* UIE-8247: Conditionally give the new docs as the link on database landing page (#11227)

* fix: [M3-8764] - Kubernetes UI issues (#11217)

* initial clean up

* save progress

* add changeset

* fix type error

* feedback @mjac0bs

* a few more small fixes

* a few more small fixes

---------

Co-authored-by: Banks Nussman <banks@nussman.us>

* upcoming: [DI-21811] - Post processing of missing timestamp data across dimensions in ACLP charts (#11225)

* upcoming: [DI-18419] - chart post processing for missing timestamps

* upcoming: [DI-21811] - Code corrections and refactoring

* upcoming: [DI-21811] - Code corrections and refactoring

* upcoming: [DI-21811] - Code corrections and refactoring

* upcoming: [DI-21811] - Added changeset

* upcoming: [DI-21811] - comment updates

* upcoming: [DI-21811] - comment updates

* upcoming: [DI-21811] - comment updates

* upcoming: [DI-21811] - comment updates

* upcoming: [DI-21811] - early returns for empty array

---------

Co-authored-by: vmangalr <vmangalr@akamai.com>

* Update changelog

* refactor: [M3-8650] - Migrate Stack to `@linode/ui` package (#11228)

* migrate stack, update organization for divider/icon button

* Added changeset: `Stack` component to `ui` package

* refactor: [M3-8710] - Move `Notice` & `Tooltip` components to UI package and update imports (#11174)

* Move Notice to UI package and update imports

* Add test imports

* Add renderWithTheme and other changes to make tests pass

* Fix broken icon imports

* Added changeset: Move `Notice` and `Tooltip` components to UI package

* Feedback @dwiley-akamai: consolidate imports and rename icon exports

* change: [M3-7337] - change Linode Details Summary VPC IPv4 Text to Copy Object. (#11172)

* change: [M3-7337] - change Linode Details Summary VPC IPv4 Text to Copy Object.

* Added changeset: change Linode Details Summary VPC IPv4 Text to Copy Object.

* Update changeset description

Co-authored-by: Purvesh Makode <pmakode@akamai.com>

* remove optional chaining

* change Text from "Subnets" to "Subnet"

* remove extra borderTop

* refactor: [M3-7337] - change Linode Details Summary VPC IPv4 Text to Copy Object

* Add descriptive variable name

---------

Co-authored-by: Purvesh Makode <pmakode@akamai.com>

* upcoming: [DI-21814] - ACLP UI - DBaaS instances order by label (#11226)

* upcoming: [DI-21814] - DBaaS instances order by label

* upcoming: [DI-21814] - Added changeset

* DI-21814: use map for better readability and optimisations

---------

Co-authored-by: vmangalr <vmangalr@akamai.com>

* UIE-8254: Add tooltip for ipv6 for new db clusters (#11231)

* feat: [UIE-8193] - Usable Storage Tooltip for Create/Resize Database table (#11232)

* feat: [UIE-8193] - Tooltip for Create/Resize Database table

* feat: [UIE-8193] - Tooltip context for small screens

* feat: [UIE-8193] - Tooltip for Create/Resize Database table (#11223)

* feat: [UIE-8193] - Tooltip for Create/Resize Database table

* Added changeset: Tooltip for 'Usable Storage' in Create/Resize Database Table

* feat: [UIE-8193] - Tooltip context for small screens

* DBaaS additions

* GPU egress transfer copy update (#11235)

* default behavior when creating new child clusters should match what existed before we enabled IPACL (in other words: disabled by default) (#11234)

Co-authored-by: Talmai Oliveira <toliveir@akamai.com>

* Update PULL_REQUEST_TEMPLATE.md (#11219)

* change: [M3-8860] - Update unit testing docs to prefer `userEvent` over `fireEvent` (#11221)

* Update 08-testing.md for userEvent

* Fix typo

* Address feedback; also further clean up linting issues the doc

* Fix a bad test that was not following good practices

* Added changeset: Update developer docs on unit testing user events

* Update changelog

* Fix LKE create ACL tests (#11237)

* feat: [M3-8665] - add option to copy token in LKE details page. (#11179)

* feat: [M3-8665] - add option to copy token in LKE details page.

* Added changeset: option to copy token in LKE details page

* Change the "Copy Token" button to use asynchronous functionality

* remove extra styling

* refactor: [M3-8665] - add option to copy token in LKE details page.

* Change cypress test for LKE update spec

* fix: sx styling for Textfield component (#11246)

* spread containerProps sx

* spread props.sx as well whoops

* fix: [M3-8894] - Linode Create crash when selected a Linode with a `type` that is `null` (#11247)

* don't fetch when `type` is an empty string

* fix and changelog entry

---------

Co-authored-by: Banks Nussman <banks@nussman.us>

* change: [M3-8857] - Update PULL_REQUEST_TEMPLATE (Part 2) (#11236)

* Make updates discussed to PR template during retro

* Add changeset

* refactor: [M3-8900] - Move `RadioGroup` to `@linode/ui` package (#11254)

* Move RadioGroup to ui package

* Added changeset: Move `RadioGroup` from `manager` to `ui` package

---------

Co-authored-by: corya-akamai <136115382+corya-akamai@users.noreply.github.com>
Co-authored-by: Alban Bailly <130582365+abailly-akamai@users.noreply.github.com>
Co-authored-by: Hana Xu <115299789+hana-akamai@users.noreply.github.com>
Co-authored-by: Harsh Shankar Rao <hrao@akamai.com>
Co-authored-by: Jaalah Ramos <jaalah.ramos@gmail.com>
Co-authored-by: rodonnel-akamai <rodonnel@akamai.com>
Co-authored-by: Banks Nussman <115251059+bnussman-akamai@users.noreply.github.com>
Co-authored-by: Banks Nussman <banks@nussman.us>
Co-authored-by: venkatmano-akamai <chk-Venkatesh@outlook.com>
Co-authored-by: vmangalr <vmangalr@akamai.com>
Co-authored-by: Connie Liu <139280159+coliu-akamai@users.noreply.github.com>
Co-authored-by: Hussain Khalil <122488130+hkhalil-akamai@users.noreply.github.com>
Co-authored-by: hasyed-akamai <hasyed@akamai.com>
Co-authored-by: Purvesh Makode <pmakode@akamai.com>
Co-authored-by: ankitaakamai <ankitaan@akamai.com>
Co-authored-by: mpolotsk-akamai <157619599+mpolotsk-akamai@users.noreply.github.com>
Co-authored-by: Talmai Oliveira <to@talm.ai>
Co-authored-by: Talmai Oliveira <toliveir@akamai.com>
Co-authored-by: John Callahan <114753608+jcallahan-akamai@users.noreply.github.com>
Co-authored-by: Mariah Jacobs <114685994+mjac0bs@users.noreply.github.com>
Co-authored-by: jdamore-linode <97627410+jdamore-linode@users.noreply.github.com>
Co-authored-by: Hana Xu <hxu@akamai.com>

* upcoming:  [DI-21694] - Added changesets

* upcoming : [DI-21694] - Addressed the review comments

* upcoming: [DI-21694] - Fixed the type safety issue for the AlertSeveritySelect component

* upcoming: [DI-21694] - Fixed the dependency if Button component that was failing the test

---------

Co-authored-by: corya-akamai <136115382+corya-akamai@users.noreply.github.com>
Co-authored-by: Alban Bailly <130582365+abailly-akamai@users.noreply.github.com>
Co-authored-by: Hana Xu <115299789+hana-akamai@users.noreply.github.com>
Co-authored-by: Harsh Shankar Rao <hrao@akamai.com>
Co-authored-by: Jaalah Ramos <jaalah.ramos@gmail.com>
Co-authored-by: rodonnel-akamai <rodonnel@akamai.com>
Co-authored-by: Banks Nussman <115251059+bnussman-akamai@users.noreply.github.com>
Co-authored-by: Banks Nussman <banks@nussman.us>
Co-authored-by: venkatmano-akamai <chk-Venkatesh@outlook.com>
Co-authored-by: vmangalr <vmangalr@akamai.com>
Co-authored-by: Connie Liu <139280159+coliu-akamai@users.noreply.github.com>
Co-authored-by: Hussain Khalil <122488130+hkhalil-akamai@users.noreply.github.com>
Co-authored-by: hasyed-akamai <hasyed@akamai.com>
Co-authored-by: Purvesh Makode <pmakode@akamai.com>
Co-authored-by: ankitaakamai <ankitaan@akamai.com>
Co-authored-by: mpolotsk-akamai <157619599+mpolotsk-akamai@users.noreply.github.com>
Co-authored-by: Talmai Oliveira <to@talm.ai>
Co-authored-by: Talmai Oliveira <toliveir@akamai.com>
Co-authored-by: John Callahan <114753608+jcallahan-akamai@users.noreply.github.com>
Co-authored-by: Mariah Jacobs <114685994+mjac0bs@users.noreply.github.com>
Co-authored-by: jdamore-linode <97627410+jdamore-linode@users.noreply.github.com>
Co-authored-by: Hana Xu <hxu@akamai.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Cloud Pulse For Release Apply this label if the release branch has already been cut.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants