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

Further consolidate and expand resource methods #3973

Closed
shawkins opened this issue Mar 15, 2022 · 0 comments
Closed

Further consolidate and expand resource methods #3973

shawkins opened this issue Mar 15, 2022 · 0 comments
Milestone

Comments

@shawkins
Copy link
Contributor

Is your task related to a problem? Please describe

There are quite a few places where getting a hold of a Resource makes sense, we should do this as consistently as possible.

Describe the solution you'd like

Instead of Itemable.withItem, we'll use resource. Everywhere else that uses Nameable (except for pod and node metrics) could also use a resource method:

client.configMaps().resource(item) - instead of client.configMaps().withItem(item)
client.configMaps().resource(name) - instead of client.configMaps().withName(name)

For lists:

client.configMaps().resources() - instead of client.configMaps().list().getItems().stream()
client.resourceList(list).resources() - instead of client.resourceList(list).getResources()

From @manusa -
client.configMaps()...stream() or similar (vanilla or Reactive library specific return type), which might pave the way for a future async implementation
- Blocking impl: list().getItems().stream() / Multi.createFrom / Observable.create / …
- Non-blocking impl: watch/inform -> stream / reactive fwk specific streaming impl

Unfortunately inform will still be blocking. The first operation it needs to do is a list. A list could be non-blocking, but the result parsing will be tricky as non-blocking as the root object is a KubernetesList. A watch could be non-blocking, but you won't know when the initial add events are done.

Describe alternatives you've considered

No response

Additional context

No response

@shawkins shawkins added this to the 6.0.0 milestone Mar 15, 2022
shawkins added a commit to shawkins/kubernetes-client that referenced this issue Mar 23, 2022
shawkins added a commit to shawkins/kubernetes-client that referenced this issue Mar 23, 2022
shawkins added a commit to shawkins/kubernetes-client that referenced this issue Mar 23, 2022
shawkins added a commit to shawkins/kubernetes-client that referenced this issue Mar 24, 2022
shawkins added a commit to shawkins/kubernetes-client that referenced this issue Mar 25, 2022
@manusa manusa closed this as completed in bb9a613 Mar 25, 2022
shawkins added a commit to shawkins/kubernetes-client that referenced this issue Dec 8, 2022
…ialization

The methods accepting parameters have been deprecated
Support for Parameterizable has been removed - it should have been
rarely used.
shawkins added a commit to shawkins/kubernetes-client that referenced this issue Dec 14, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant