Skip to content

Script for automating the upgrade to the dashboard v2 components from kubeflow/kubeflow #154

@kimwnasptd

Description

@kimwnasptd

Checks

Motivation

Since we'll also be doing some changes to component names (ptal in #118 (comment)) and also be using the v2.0.0 tag for the dashboard components this will introduce some friction for users that will want to upgrade between the components of V1 that were hosted in kubeflow/kubeflow and the components hosted in this GH repo.

To alleviate this friction we could do the following:

  1. Have a dedicated folder here regarding the needed artifacts for the upgrade
  2. Create a script that will:
    1. Scale down resources of V1
    2. Apply the resources of this repo
    3. Delete the resources from V1
  3. Create a dedicated README.md in the above folder, documenting how users can use the above script and how it works

With this we'll make it simpler for users to migrate between V1 and V2

Implementation

The main items to discuss are:

  1. What folder to use
  2. More details on the logic of the script above

Regarding the folder name, one approach is to use /hack like KServe has. I personally am not in favor of this name as it can tip users off, if we have the upgrade process in a hack folder. Another approach would be to have a dedicated /upgrade or /migration folder and put those files in.

Regarding the scripts logic, an initial brainstorm of ideas and attention points I could think of are:

  1. We need to not delete any CRDs, as this will result in deleting the CRs in user namespaces as well
  2. We will need to delete the older resources with labels, and need to ensure this is possible without deleting objects from V2

I'll be posting more updates on this as I'll be looking deeper into our existing manifests

Are you willing & able to help?

  • I am able to submit a PR!
  • I can help test the feature!

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions