canonical / kfp-operators

Kubeflow Pipelines Operators
Apache License 2.0
2 stars 11 forks source link

Reference the kfp-operators bundle in Charmed Kubeflow #233

Open DnPlas opened 1 year ago

DnPlas commented 1 year ago

The kfp-operators repository contains a bundle file that groups all KFP components, their dependencies, charm configurations, and relations. This information is then duplicated in the canonical/bundle-kubeflow bundle files. This can potentially cause issues with mismatching configurations and outdated information.

Proposal

To use the kfp-operators bundle file to build and publish a bundle that can be referenced when deploying Charmed Kubeflow.

Potenial tasks

ca-scribner commented 1 year ago

This is an interesting idea!

Are you thinking of:

  1. kfp bundle is published to charmhub, then charmed kubeflow's bundle.yaml deploys kfp rather than [kfp-api, kfp-ui, ...]
  2. kfp-bundle.yaml is in this repo, and charmed kubeflow aggregates that bundle file into the main kubeflow-bundle.yaml
  3. something else

Conceptually I like (1), but I don't know if it lets you get the relations correct. How would you establish relations between pieces of the kfp bundle to things in the kubeflow bundle (like kfp-ui to kubeflow-dashboard)? I don't think the syntax allows for it.

At a previous company we had a similar problem with dockerfiles, and ended up making a sort of mixin solution where the lower level pieces defined their own parts of the dockerfile and then a top level script aggregated them. It wouldn't be hard to do the same here where a generate-kubeflow-bundle.py script pulled from a few source bundle.yaml files and created the kubeflow-bundle.yaml