-
-
Notifications
You must be signed in to change notification settings - Fork 286
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
Create APIResource
from ApiResource
for extension an APIService
#1194
Comments
clux
added
help wanted
Not immediately prioritised, please help!
good first issue
Good for newcomers
core
generic apimachinery style work
labels
Apr 8, 2023
clux
changed the title
Simplify creation of
Create Apr 8, 2023
APIResource
from Resource
for extension an APIService
APIResource
from ApiResource
for extension an APIService
Turns out we can't do this cleanly yet because we'd actually need to do that into impl from the pair There is an ongoing (but bitrotted) PR that aims to consolidate these structs, but need to fix that up first. |
clux
added
blocked
awaiting upstream work
and removed
help wanted
Not immediately prioritised, please help!
labels
Apr 9, 2023
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
What problem are you trying to solve?
Reading this blog post:
https://metalbear.co/blog/writing-a-kubernetes-operator/
on how to set up an extension apiservice with kube, most of how this is done looks reasonably easy.
However, there's awkward step where it's necessary to convert our
Resource
to anAPIResource
.That bit is basically what you see in their source here:
https://github.com/metalbear-co/farm-operator/blob/f7ae23f61daff4bdc9b9063796bc49057c20e914/example/step-3/src/main.rs#L14-L36
i.e. manually converting between the two:
This came up in kube-rs/website#34 (comment)
Describe the solution you'd like
The example above is converting using the
Resource
trait, but that is actually insufficient (hence the manually suppliedverbs
).The only place that has all that information for us is the
ApiResource
.This feels like a simple
Into<APIResource> for ApiResource
impl.If anyone wants to do this, it should be an easy one.
Note that CRD users via
kube-derive
will have access to their ownApiResource
without going through discovery (which crucially they can't do as they are the apiserver for this resource) by usingCustomResourceExt::api_resource
. So from there, a converter will fill in the rest.Target crate for feature
kube-core
The text was updated successfully, but these errors were encountered: