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

kubeflow v1.1/1.2 upstream changes to jupyter-apis component #42

Closed
saffaalvi opened this issue Nov 16, 2020 · 7 comments
Closed

kubeflow v1.1/1.2 upstream changes to jupyter-apis component #42

saffaalvi opened this issue Nov 16, 2020 · 7 comments
Assignees
Labels
size/M 2-3 days

Comments

@saffaalvi
Copy link
Contributor

Summary of upstream changes that we may have to integrate into the jupyter-apis component when upgrading to v1.1/1.2.

@saffaalvi saffaalvi self-assigned this Nov 16, 2020
@saffaalvi saffaalvi changed the title kf v1.1/1.2 upstream changes to jupyter-apis component kubeflow v1.1/1.2 upstream changes to jupyter-apis component Nov 16, 2020
@saffaalvi
Copy link
Contributor Author

saffaalvi commented Nov 16, 2020

Kubeflow v1.1

Overall, it has been difficult to find a comprehensive list of all the new features Kubeflow v1.1 has introduced. The changes mentioned below are what I've noticed from v1.1 branch commits in the jupyter-web-app component.

This blog post talks more in detail about the changes in v1.1. I think the jupyter-web-app component didn't have as many changes in this upgrade.

Notebooks Table

Volume (Resource Form)

@saffaalvi
Copy link
Contributor Author

saffaalvi commented Nov 17, 2020

Kubeflow v1.2

After Kubeflow v1.1 was released, the major change was a new directory for web apps that shared common code (includes Jupyter, Tensorboard, and Volumes UI). There are still commits being made to both the old jupyter-web-app component as well as the new crud-web-apps/jupyter component. I described all the changes made to both below but tried to keep them separate to avoid confusion.

There is more information for what v1.2 will have in their release description https://github.com/kubeflow/kfctl/releases/tag/v1.2-rc.0 and this roadmap issue kubeflow/kubeflow#5224.

Some features mentioned below were found from the following PRs:
Not merged: kubeflow/kubeflow#5280
Merged: kubeflow/kubeflow#5332

Old jupyter-web-app Component

New Directory for Common Web Apps (crud-web-apps)

@saffaalvi
Copy link
Contributor Author

saffaalvi commented Nov 17, 2020

MiniKF

When running MiniKF, these are some changes I've seen that I'm not sure have been/will be implemented in v1.1 or v1.2:

Notebooks Table

  • Can now interact more with notebook servers: start, stop, or delete (options menu instead of trash icon)
    • When stop/delete is selected, a dialog appears to warn user and confirm action

Volumes Table

While we have the volumes table underneath the notebook servers table, the new kubeflow version in MiniKF has it as an extra menu option in the left sidebar. This table has additional features such as:

  • Displaying Access Mode and Storage Class
  • Allowing user to browse volume contents: view, download, open, upload, etc.
  • Creating a new volume or cloning an existing snapshot right from the volumes table (don't have to create a notebook server first)

volumes
volumes2

@saffaalvi saffaalvi added the size/M 2-3 days label Nov 18, 2020
@ca-scribner
Copy link
Contributor

@sylus @zachomedia @brendangadd @blairdrummond ^

What is/isn't in 1.2 for the jupyter web app is hella confusing, but Saffa's got a solid summary if anyone needs a good place to start for figuring it out.

@saffaalvi
Copy link
Contributor Author

saffaalvi commented Nov 30, 2020

v1.1 - Manifest Tags

Compared using the v1.1.0 release commits.
FEB 6 - Delete dead code for releasing and updating images
TAG PRESENT IN:

jupyter/jupyter-web-app/base/kustomization.yaml

  • name: gcr.io/kubeflow-images-public/jupyter-web-app
    newName: gcr.io/kubeflow-images-public/jupyter-web-app
    newTag: vmaster-gd9be4b9e

jupyter/jupyter-web-app/base_v3/kustomization.yaml

  • name: gcr.io/kubeflow-images-public/jupyter-web-app
    newName: gcr.io/kubeflow-images-public/jupyter-web-app
    newTag: vmaster-gd9be4b9e

stacks/ibm/application/jupyter-web-app/base/kustomization.yaml

  • name: gcr.io/kubeflow-images-public/jupyter-web-app
    newName: gcr.io/kubeflow-images-public/jupyter-web-app
    newTag: vmaster-gd9be4b9e

FEB 25 - [CentralDashboard][Testing] End-to-end testing added
TAG PRESENT IN:

jupyter/notebook-controller/base/kustomization.yaml

  • name: gcr.io/kubeflow-images-public/notebook-controller
    newName: gcr.io/kubeflow-images-public/notebook-controller
    newTag: vmaster-gf39279c0

jupyter/notebook-controller/base_v3/kustomization.yaml

  • name: gcr.io/kubeflow-images-public/notebook-controller
    newName: gcr.io/kubeflow-images-public/notebook-controller
    newTag: vmaster-gf39279c0

@saffaalvi
Copy link
Contributor Author

saffaalvi commented Nov 30, 2020

v1.2 - Manifest Tags
AUG 7 - Fix #5111: Trim whitespace from custom images
TAG PRESENT IN:

jupyter/jupyter-web-app/base/kustomization.yaml

  • name: gcr.io/kubeflow-images-public/jupyter-web-app
    newName: gcr.io/kubeflow-images-public/jupyter-web-app
    newTag: vmaster-g845af298

jupyter/jupyter-web-app/base_v3/kustomization.yaml

  • name: gcr.io/kubeflow-images-public/jupyter-web-app
    newName: gcr.io/kubeflow-images-public/jupyter-web-app
    newTag: vmaster-g845af298

stacks/ibm/application/jupyter-web-app/base/kustomization.yaml

  • name: gcr.io/kubeflow-images-public/jupyter-web-app
    newName: gcr.io/kubeflow-images-public/jupyter-web-app
    newTag: vmaster-g845af298

SEP 29 - Refactor the JWA backend to utilize common code
TAG PRESENT IN:

jupyter/notebook-controller/base/kustomization.yaml

  • name: gcr.io/kubeflow-images-public/notebook-controller
    newName: gcr.io/kubeflow-images-public/notebook-controller
    newTag: vmaster-g6eb007d0

jupyter/notebook-controller/base_v3/kustomization.yaml

  • name: gcr.io/kubeflow-images-public/notebook-controller
    newName: gcr.io/kubeflow-images-public/notebook-controller
    newTag: vmaster-g6eb007d0

@wg102
Copy link
Contributor

wg102 commented Nov 30, 2020

The manifest released the v1.2.0 tag on November 20th.

As it currently was on November 28th, The back end part – notebook-controller - was updated with the image kubeflow/kubeflow@6eb007d to refactor the JWA backend to utilize common code. On Nov 4th, an auto PR updated the notebook-controller tag to the one mentioned above, vmaster-g6eb007d0 (kubeflow/manifests@0f673cf).

In the release, the latest there was a PR to update some of the images in manifest two weeks ago, aka nov 16th kubeflow/manifests#1645, but they updated with rather old tags. (See details for V1.2 in the comment above)

  • AUG 7 - Fix #5111: Trim whitespace from custom images
  • Sep 29 - Refactor the JWA backend to utilize common code (#5316)

The front-end crud web app changes have not yet been implemented in the V1.2 release commits since we couldn’t find the commit tag anywhere in the manifest. The latest tag is vmaster-g845af298 which has the commit of AUG 7 - Fix #5111: Trim whitespace from custom images (kubeflow/kubeflow@845af29)
As of now, there are still changes being made to both crud-web-app and jupyter-web-app in the kubeflow/kubeflow repository.

To summarize, v1.2 has the commit that contained the crud-web-app backend using common code, however maybe because it is still being worked on, the frontend for crud web apps has not been updated in the manifest.
The commit to initialize the jupyter web app frontend is kubeflow/kubeflow@89b1395 and was made on Oct 27 in the kubeflow/kubeflow repository but it’s commit tag is nowhere to be found in the manifest.

Things to keep an eye on:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
size/M 2-3 days
Projects
None yet
Development

No branches or pull requests

4 participants