knative / knative/client

[48h Knative] KServe plugin

Open
#1,866 4 comments 1 reaction 2 assignees Assigned to @rhuss View on GitHub
knative48h triage/accepted
Dominant language
Go
Stars
387
Forks
274
Avg merge
1d 6h
Merged PRs (30d)
8

Description

_We are still in the progress of setting up the hackathon, so we are still working on the concrete format. This issue is a prototype, feel free to comment on the format, too, below in the comments_

👋 Hello awesome contributor!

This is a mini-project for the upcoming 48-hour Knative hackathon designed to boost contributions to the Knative Client project. For more details, check out [Issue #1842](https://github.com/knative/client/issues/1842).

## 🎯 Why and What

Welcome to Knative, a platform for serverless computing on Kubernetes. The Knative CLI, known as `kn`, simplifies the management of Knative resources. [KServe](https://kserve.github.io/website) is an AI model inference layer on top of Kubernetes and Knative. The objective of this mini-project is to start a `kn` plugin to simplify the management of KServe's [`InferenceService`](https://kserve.github.io/website/0.11/get_started/first_isvc/).

This project aims to fill a gap in the Knative and KServe ecosystem that allows a _typed_ user experience for working with KServe from the CLI. The immediate goal for this hackathon is to create the basic structure of the plugin and implement at least one operational command, such as `kn kserve iservice create`. Please take a look at the comments below for more details.

## 🛠 Difficulty Level
Intermediate

## 👥 Recommended Team Size
1-3

## 🎉 Expected Outcome
Success is defined as the ability to create a working`InferenceService` on an existing KServe setup using the new `kn` plugin.

## 🎓 Your Key Takeaways

In addition to gaining hands-on experience with `kn` and learning how to scaffold a new CLI plugin for it, you'll also acquire the skills to set up a Knative development environment on your own machine. This project will provide exposure to various areas relevant to Knative.

## 🤝 Mentor

@rhuss

## 🎥 5-Minute Video Pitch
TBD

## 📝 Additional Information
Some experience with Go programming is required, and a basic understanding of Knative and Kubernetes is beneficial.

## 🌐 Entrypoints
1. Clone the sample `kn` plugin from [GitHub](https://github.com/knative-extensions/kn-plugin-sample).
2. Use the [kn-box repository](https://github.com/matzew/kn-box) to set up Knative and Istio on Minikube or Kind.
3. Familiarize yourself with the [KServe documentation](https://kserve.github.io/website/0.11/) to understand the essentials of `InferenceService`.

---

### 📋 Organizer Checklist

- [X] Added to [Project Board](https://github.com/orgs/knative/projects/68)
- [ ] Proposal Reviewed
- [X] Assigned a Mentor
- [ ] Expected Outcome defined

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.