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

Add first draft of model registry kserve custom storage initializer #25

Merged

Conversation

lampajr
Copy link
Member

@lampajr lampajr commented Feb 28, 2024

Fixes #24

Description

Provide a first draft of a possible Model Registry (KServe) Custom Storage Initializer based on https://github.com/lampajr/model-registry-storage-initializer PoC

TODOs:

  • Write README with development information
  • Write separate GET_STARTED guide
  • Add image build directive in the model registry root Makefile (re-using csi Makefile)
  • Set container image registry
  • Add some testing focusing on the MR interaction using testcontainers (mocking the download itself)

Possible improvements (for further iterations)

  • Use kiota to autogenerate the client, this will make the CSI less dependent on the internal model registry implementation (this will also make the CSI just tied to the openapi spec rather than MR version)

How Has This Been Tested?

Merge criteria:

  • The commits and have meaningful messages; the author will squash them after approval or will ask to merge with squash.
  • Testing instructions have been added in the PR body (for PRs involving changes that are not immediately obvious).
  • The developer has manually tested the changes and verified that the changes work

Signed-off-by: Andrea Lamparelli <a.lamparelli95@gmail.com>
@lampajr lampajr changed the title Add first draft of model registry custom storage initializer Add first draft of model registry kserve custom storage initializer Feb 28, 2024
@tarilabs
Copy link
Member

tarilabs commented Mar 1, 2024

thank you for sharing this draft @lampajr !

The way I would recommend to move forward is:

  • if you are progressing, you can keep draft
  • if someone is volunteering for the TODOs, it is worth it to merge it so easier to work on the git repo with

(if that volunteer is you reading this message, drop a comment below so we can coordinate!)

@tarilabs tarilabs added the good first issue Good for newcomers label Mar 1, 2024
@lampajr
Copy link
Member Author

lampajr commented Mar 1, 2024

thank you for sharing this draft @lampajr !

The way I would recommend to move forward is:

  • if you are progressing, you can keep draft
  • if someone is volunteering for the TODOs, it is worth it to merge it so easier to work on the git repo with

(if that volunteer is you reading this message, drop a comment below so we can coordinate!)

I agree with you, I could work on these two points:

  • Write README with development information
  • Write separate GET_STARTED guide

Such that there are enough information to try it (at least locally) then I think this PR could be considered as ready as it would be a good starting point.

All other TODOs I think could be done in followup PRs.

Wdyt?

@google-oss-prow google-oss-prow bot added size/XXL and removed size/XL labels Mar 1, 2024
@lampajr lampajr marked this pull request as ready for review March 1, 2024 11:19
@google-oss-prow google-oss-prow bot requested a review from rareddy March 1, 2024 11:19
@lampajr
Copy link
Member Author

lampajr commented Mar 1, 2024

As discussed, marking this as ready for review.

  • Write README with development information ✔️
  • Write separate GET_STARTED guide ✔️

The following TODOs can be done in a separate/followup PR

  • Add image build directive in the model registry root Makefile (re-using csi Makefile)
  • Set container image registry
  • Add some testing focusing on the MR interaction using testcontainers (mocking the download itself)

Copy link
Member

@tarilabs tarilabs left a comment

Choose a reason for hiding this comment

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

beyond minor/nit comment, I'd go ahead and merge this, as it provides already an helpful and pragmatic example of how other KF components/add-ons (in this case KServe) could integrate with Model Registry

csi/hack/install_modelregistry.sh Outdated Show resolved Hide resolved
@lampajr lampajr force-pushed the gh24_custom_storage_initializer branch from 46690b6 to e304943 Compare March 4, 2024 08:59
Signed-off-by: Andrea Lamparelli <a.lamparelli95@gmail.com>
@lampajr lampajr force-pushed the gh24_custom_storage_initializer branch from e304943 to 17eb714 Compare March 4, 2024 09:02
Copy link
Member

@tarilabs tarilabs left a comment

Choose a reason for hiding this comment

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

With reference to conversations in this PR, I'd go ahead and merge this, as it provides already an helpful and pragmatic example of how other KF components/add-ons (in this case KServe) could integrate with Model Registry

/approve
/lgtm

Copy link

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: lampajr, tarilabs

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 1bedfbd into kubeflow:main Mar 8, 2024
11 checks passed
@lampajr lampajr deleted the gh24_custom_storage_initializer branch March 8, 2024 10:00
openshift-merge-bot bot referenced this pull request in opendatahub-io/model-registry Mar 8, 2024
* build(deps): bump github.com/stretchr/testify from 1.8.4 to 1.9.0 (#27)

Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.8.4 to 1.9.0.
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](stretchr/testify@v1.8.4...v1.9.0)

---
updated-dependencies:
- dependency-name: github.com/stretchr/testify
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Add first draft of model registry kserve custom storage initializer (#25)

* Add first draft of model registry custom storage initializer

Signed-off-by: Andrea Lamparelli <a.lamparelli95@gmail.com>

* Add documentation and get started guide

Signed-off-by: Andrea Lamparelli <a.lamparelli95@gmail.com>

---------

Signed-off-by: Andrea Lamparelli <a.lamparelli95@gmail.com>

* fix: ensure consistency ns(omitted) for istio manifests (#31)

* fix: ensure consistency ns(omitted) for istio manifests

Signed-off-by: Matteo Mortari <matteo.mortari@gmail.com>

* add default ns to kustomization for consistency

with manifests/kustomize/overlays/{db} kustomizations

Signed-off-by: Matteo Mortari <matteo.mortari@gmail.com>

---------

Signed-off-by: Matteo Mortari <matteo.mortari@gmail.com>

* fix CVE-2024-21626 (#34)

see also: https://security.snyk.io/vuln/SNYK-GOLANG-GITHUBCOMCONTAINERDCONTAINERD-6219724

Signed-off-by: Matteo Mortari <matteo.mortari@gmail.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Andrea Lamparelli <a.lamparelli95@gmail.com>
Signed-off-by: Matteo Mortari <matteo.mortari@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Andrea Lamparelli <a.lamparelli95@gmail.com>
Co-authored-by: Matteo Mortari <matteo.mortari@gmail.com>
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.

Provide ModelRegistry Custom Storage Initializer
2 participants