Comments (3)
/kind feature
I think that some sort of Ensure
method could be useful -- pass an object to Ensure
, and we ensure that it's either created or up-to-date. Not sure of the precise design, but I'd be happy to review PRs and such, if you've got time to submit one.
from controller-runtime.
I would be glad to attempt a PR, but there are some design issues to address first.
Sometimes you need the eventually existing object first from the apiserver so that you can update/sync only some fields. In order to do this, you need to call the Get
method, so this CreateOrUpdate
won't fit in any interfaces (Reader
or Writer
).
One workaround I'm employing right now is that I manually implement CreateOrUpdate
right into the reconciler (see https://github.com/presslabs/wordpress-operator/blob/51ece534c606a998807d7049a942e5c9de701646/pkg/controller/wordpress/wordpress_controller.go#L89).
What are your thoughts about this?
from controller-runtime.
it could probably be a helper method in utils that takes in a Reader/Writer.
from controller-runtime.
Related Issues (20)
- Multi Cluster Example / Pattern HOT 9
- Panic in `runnableGroup`'s `Add` and `StopAndWait` due to a data race HOT 1
- Cannot run / install specific versions of setup-envtest due to missing submodule tag HOT 2
- Data race during manager shutdown HOT 2
- Add a validation script to verify go.mod is in sync with k/k HOT 3
- Enhancement of Authentication and Authorization Filters to Allow Custom Configurations and Stability Improvements HOT 4
- Data race with various client APIs HOT 3
- Allow to ignore globalPredicates for specific resources HOT 1
- Undefined SwitchMetric Error with client-go 0.30.0 in Go Vet HOT 8
- Use setup-envtest from (test) code HOT 18
- Semantic version is incorrect for setup-envtest HOT 3
- Default Liveness and Readiness endpoints return 404
- Optimize patches returned by Defaulter
- DefaultLabelSelector overrides ByObject.Label in DefaultNamespaces
- Does controller-runtime support that multiple controllers share one Manager and use different clients(RBAC)? HOT 6
- Add a way to grab the controller name out of the reconcile context HOT 1
- failed to install setup-envtest HOT 1
- How to change DefaultNamespaces at runtime HOT 3
- Reconcile is triggered after status update HOT 4
- Upgrade problem (v0.15.2->v0.17.3): configuring namespace HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from controller-runtime.