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
Ability to disable reconciliation for a single resource, or an entire namespace #795
Comments
@sthomson-wyn We just added a new feature in the latest 1.102.0 release. I believe you can set the reconcile interval to 0 for selected resources, which should achieve the same purpose. You can give it a try and let us know if it works. |
@diviner524 Awesome, I'll give it a shot and close this if it works as expected. Thanks! |
@diviner524 unfortunately that does not work. I've set it to 0, changed the labels on a bucket & a configuration setting, and config connector has reconciled the bucket within a few hours |
@sthomson-wyn have you made changes to the bucket resource in the K8s cluster? Setting the value to 0 does not disable reconciliation completely, it only disables the periodic polling. Reconciliation will still be triggered if changes are made to the corresponding KRM resource. |
@diviner524 I did not make any changes to the resource manually, and argocd is recording the last sync as over 1 day ago, so no change there. The "generation" field of the resource hasn't changed either, so I don't think that a change was made to the corresponding KRM resource |
@sthomson-wyn I see, thanks for confirming.
https://cloud.google.com/config-connector/docs/troubleshooting#check-controller-logs
|
I will create a repro & get the logs |
@diviner524 I believe I've found the culprit. It reconciles after restarting the cnrm-controller-manager-0 pod. So that annotation is only respected for the lifetime of the pod |
For posterity, a repro:
After the resource is created & reconciled, go into the UI and modify the labels (or any setting) After waiting for any amount of time & observing no reconciliation (as desired), restart the cnrm-controller-manager-0 pod. After the pod goes through the CRs, the tag on the bucket will match what is in the cluster |
Thanks @sthomson-wyn for sharing the details! Yes we are able to reproduce the same. We will work on a fix. |
This is fixed in v1.104.0 |
Describe your question
I know that we can disable reconciliation for all resources in a cluster by simply scaling down the config connector pods.
But is there a way to disable reconciliation for a single resource, or a single namespace? For context, we split up the config connector resources with 1 namespace per project.
The use-case here would be disabling reconciliation in a single project for emergency manual intervention without needing to stop reconciliation accross all projects that are managed by config connector.
The text was updated successfully, but these errors were encountered: