⚠️ Add native SSA support#3253
Conversation
|
Skipping CI for Draft Pull Request. |
|
/lgtm /hold @alvaroaleman Anyone else you wanted to review this? |
|
LGTM label has been added. DetailsGit tree hash: b54b367b4cffcc758941308fee6ef0743c0ce46a |
|
Yeah. I'll take a look once I get around to it |
This change adds native server-side apply support to the client by extending it with an `Apply` method that takes an `runtime.ApplyConfiguration`.
This reverts commit ad1966a. This doesn't work, the server will always error on additional fields when using SSA, even when fieldValiation=None is configured.
|
Thank you very much! Very nice! /lgtm @JoelSpeed do you want to take another look? |
|
LGTM label has been added. DetailsGit tree hash: 688c855c2d4653a12882dff29f1d7574ce02061d |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: alvaroaleman, sbueringer The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
/hold cancel All good my side |
Replace Create+AlreadyExists pattern with SSA for ResourceQuota, PDB, and workload deployment in debug_session_reconciler.go. Add ApplyTypedObject helper that converts typed k8s objects to unstructured for SSA. This is cleaner than Create+AlreadyExists and provides proper create-or-update semantics. Note: API Creates (BreakglassSession, DebugSession) are kept as-is: - AddBreakglassSession uses GenerateName (SSA needs known name) - CreateDebugSession needs AlreadyExists detection for 409 response Refs: kubernetes-sigs/controller-runtime#2981 Refs: kubernetes-sigs/controller-runtime#3321 Refs: kubernetes-sigs/controller-runtime#3253
Replace Create+AlreadyExists pattern with SSA for ResourceQuota, PDB, and workload deployment in debug_session_reconciler.go. Add ApplyTypedObject helper that converts typed k8s objects to unstructured for SSA. This is cleaner than Create+AlreadyExists and provides proper create-or-update semantics. Note: API Creates (BreakglassSession, DebugSession) are kept as-is: - AddBreakglassSession uses GenerateName (SSA needs known name) - CreateDebugSession needs AlreadyExists detection for 409 response Refs: kubernetes-sigs/controller-runtime#2981 Refs: kubernetes-sigs/controller-runtime#3321 Refs: kubernetes-sigs/controller-runtime#3253
This change adds native server-side apply support to the client by extending it with an
Applymethod that takes aruntime.ApplyConfiguration.Ref #3183