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

chore: update node in crud-web-apps from 12 to 16 #7637

Merged
merged 5 commits into from
Nov 26, 2024

Conversation

tariq-hasan
Copy link
Contributor

@tariq-hasan tariq-hasan commented Aug 23, 2024

Motivation

This PR is an offshoot from kubeflow/katib#2384 in kubeflow/katib.

kubeflow/katib#2384 attempts to resolve errors in e2e tests for cypress in Katib UI and requires that the node version be upgraded from 12 to 16 for kubeflow/kubeflow.

What does this PR do?

This PR therefore addresses the version upgrade for node from 12 to 16 for kubeflow/kubeflow as well as the following dependent components:

  • jupyter
  • tensorboards
  • volumes
  • centraldashboard-angular

Test Plan

All the Github Action workflows have been run and tested on my fork: https://github.com/tariq-hasan/kubeflow/actions.

Copy link
Member

@andreyvelich andreyvelich left a comment

Choose a reason for hiding this comment

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

Thank you so much for this effort!
It will finally unblock the broken Katib UI CI/CD, since we can't merge any PRs since April.
Please take a look at this change.

/assign @kimwnasptd @orfeas-k @ederign
/ok-to-test

@andreyvelich
Copy link
Member

/cc @kubeflow/wg-training-leads

Copy link

@andreyvelich: GitHub didn't allow me to request PR reviews from the following users: kubeflow/wg-training-leads.

Note that only kubeflow members and repo collaborators can review this PR, and authors cannot review their own PRs.

In response to this:

/cc @kubeflow/wg-training-leads

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@ederign
Copy link
Member

ederign commented Aug 27, 2024

@andreyvelich, I'll probably have time to look at this by the end of this week! I'll keep everyone posted!

@andreyvelich
Copy link
Member

@andreyvelich, I'll probably have time to look at this by the end of this week! I'll keep everyone posted!

Thank you for much for your time!
@kubeflow/wg-notebooks-leads Please can you trigger the GitHub actions ?

@andreyvelich
Copy link
Member

cc @james-jwu @zijianjoy I think, you also should be able to trigger GitHub actions.

@andreyvelich
Copy link
Member

Hi @kimwnasptd @orfeas-k @ederign are we ready to merge this PR to unblock Katib E2Es ?

@andreyvelich
Copy link
Member

@tariq-hasan Please can you check why Cypress tests fails ?

@tariq-hasan
Copy link
Contributor Author

I am looking into it.

@tariq-hasan
Copy link
Contributor Author

tariq-hasan commented Sep 7, 2024

The JWA Frontend Tests failed when @rimolive triggered Github Actions for this PR but when I ran the same test in a copy of the branch in my fork it succeeded: https://github.com/tariq-hasan/kubeflow/actions/runs/10748617448.

If we can re-trigger the Github Actions for this PR perhaps we can understand the issue better.

@thesuperzapper
Copy link
Member

I triggered them just now @tariq-hasan

@andreyvelich
Copy link
Member

@tariq-hasan It looks like the cypress tests are failing with this error:

1 failing
  1) New notebook form
       should auto update mount value when name change:
     AssertionError: Timed out retrying after 4000ms: Expected to find element: `.last[data-cy="data volumes"]`, but never found it.
      at Context.eval (webpack://frontend/./cypress/e2e/form-page.cy.ts:[49](https://github.com/kubeflow/kubeflow/actions/runs/10748577742/job/29933500341#step:6:50):7)

When you get a chance, please can you try to debug it locally ?

Any thoughts @kimwnasptd @ederign ?

@tariq-hasan
Copy link
Contributor Author

tariq-hasan commented Sep 15, 2024

Is the issue occurring due to test flakiness?

If so, do you have any suggestion on how to remove the error? @kimwnasptd @ederign

It looks to be that the element to be clicked is detached from the DOM.

@tariq-hasan tariq-hasan force-pushed the fix-katib-ui-tests branch 3 times, most recently from 58c1cb2 to 8a74e01 Compare September 15, 2024 18:57
@tariq-hasan
Copy link
Contributor Author

tariq-hasan commented Sep 15, 2024

@thesuperzapper For jupyter I upgraded Cypress to 13.14.0 instead of 13.13.3: 8a74e01#diff-9f86874cf004f00e992b404d1a7469dca7d5a93f3def85ab82c7b1e998ccd38cL68.

I was wondering if you would be able to trigger the workflow again.

@tariq-hasan
Copy link
Contributor Author

This is actually odd behavior. The tests happen to succeed or fail at random when running on my local or on a copy of the branch in Github Actions.

@tariq-hasan
Copy link
Contributor Author

I have replaced Cypress with Playwright for the e2e tests in Jupyter. Can you please re-run the workflows? @thesuperzapper

@tariq-hasan
Copy link
Contributor Author

Thanks for running the workflows.

JWA Frontend Tests have passed finally!

Can we re-run CentralDashboard-angular Frontend Tests? I have not seen this fail before.

@tariq-hasan
Copy link
Contributor Author

All the tests have passed. Thanks @andreyvelich and @thesuperzapper.

Please review and let me know if anything needs to be changed @kimwnasptd @thesuperzapper @orfeas-k.

@andreyvelich
Copy link
Member

Thank you for this effort @tariq-hasan!
@ederign @thesuperzapper @kimwnasptd @Griffin-Sullivan Please can you /lgtm this PR since it will unblock the Katib UI development.
/lgtm

@andreyvelich
Copy link
Member

@tariq-hasan Did you get a chance to deploy your Docker images to verify that all WebApps (Jupyter WebApp, TensorBoard, Volumes WebApp) are working ?

@tariq-hasan
Copy link
Contributor Author

Hi @andreyvelich I am deploying the Docker images to verify that all WebApps (Jupyter WebApp, TensorBoard, Volumes WebApp) are working. I will update here shortly.

@thesuperzapper thesuperzapper changed the title Upgrade node from 12 to 16 chore: update node in crud-web-apps from 12 to 16 Nov 19, 2024
@google-oss-prow google-oss-prow bot removed the lgtm label Nov 24, 2024
Signed-off-by: tariq-hasan <mmtariquehsn@gmail.com>
Signed-off-by: tariq-hasan <mmtariquehsn@gmail.com>
Signed-off-by: tariq-hasan <mmtariquehsn@gmail.com>
Signed-off-by: tariq-hasan <mmtariquehsn@gmail.com>
Signed-off-by: tariq-hasan <mmtariquehsn@gmail.com>
@tariq-hasan
Copy link
Contributor Author

There was a flag removed from the build scripts that I have added back in. All the web apps - Jupyter, TensorBoards and Volumes - are functional from my local now when deployed through built Docker images.

Kubeflow Home
Kubeflow Notebooks
Kubeflow TensorBoards
Kubeflow Volumes
Kubeflow Katib Experiments
Kubeflow KServe Endpoints
Kubeflow Manage Contributors

Copy link
Member

@andreyvelich andreyvelich left a comment

Choose a reason for hiding this comment

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

Thank you for all of these tests @tariq-hasan!
We should be fine to merge this and unblock the Katib UI CI/CD.
@kimwnasptd @juliusvonkohout @thesuperzapper @ederign Can you /lgtm this please ?
/lgtm

@google-oss-prow google-oss-prow bot added the lgtm label Nov 25, 2024
@juliusvonkohout
Copy link
Member

Thank you for all of these tests @tariq-hasan!
We should be fine to merge this and unblock the Katib UI CI/CD.
@kimwnasptd @juliusvonkohout @thesuperzapper @ederign Can you /lgtm this please ?
/lgtm

/lgtm

Since we definitely need this to reduce CVEs as well. We should even go to node 22 in follow up prs https://nodejs.org/en/about/previous-releases#release-schedule

@juliusvonkohout
Copy link
Member

juliusvonkohout commented Nov 26, 2024

/assign @thesuperzapper

Since I do not have approver rights for this repository.

Copy link
Member

@andreyvelich andreyvelich left a comment

Choose a reason for hiding this comment

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

Thanks for this great contribution @tariq-hasan!
/lgtm
/approve

Copy link

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: andreyvelich

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@google-oss-prow google-oss-prow bot merged commit 78969ee into kubeflow:master Nov 26, 2024
24 checks passed
@tariq-hasan tariq-hasan deleted the fix-katib-ui-tests branch November 26, 2024 18:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants