kubernetes-sigs / kubernetes-sigs/controller-runtime

Support non-CRUD subresources (like pod logs)

Open
#452 23 comments 52 reactions 0 assignees View on GitHub
help wanted kind/design kind/feature lifecycle/frozen priority/backlog
Dominant language
Go
Stars
3k
Forks
1.3k
Avg merge
2d 5h
Merged PRs (30d)
14

Description

Hi I am one of the maintainers @kubeflow

We are using kubebuilder to implement some CRDs for Machine Learning/Deep Learning workloads. We meet some problems with the client in controller-runtime.

We need to get the logs of pods using the client, But It seems that controller-runtime client has a higher level abstraction on top of Kubernetes client. Do we have a plan to support expansion (e.g. https://github.com/kubernetes/client-go/blob/master/kubernetes/typed/core/v1/pod_expansion.go) for the client? Or is there any suggestion to do it with controller-runtime client?

Now we have to create a Kubernetes client and use this to get pod logs.

I'd appreciate it if anyone could help me.

Thanks :clinking_glasses: :beers:

Contributor guide

Open the contributing guide

Research direction

Start by reading Kubernetes client-go's pod_expansion.go and the controller-runtime client abstraction to understand how non-CRUD operations are represented. Define the scope for supporting pod logs and similar subresources, then confirm that callers can use the controller-runtime client without creating a separate Kubernetes client.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
api
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.