Skip to content

Fix: kapp-controller silently drops errors when pushing CA certs/proxy settings to its sidecarexec container - #1850

Open
himsngh wants to merge 1 commit into
carvel-dev:developfrom
himsngh:fix/config-reconciler-swallowed-osconfig-errors
Open

Fix: kapp-controller silently drops errors when pushing CA certs/proxy settings to its sidecarexec container#1850
himsngh wants to merge 1 commit into
carvel-dev:developfrom
himsngh:fix/config-reconciler-swallowed-osconfig-errors

Conversation

@himsngh

@himsngh himsngh commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

What this PR does / why we need it:

Propagate config reconciler errors so sidecar-not-ready races self-heal

Reconcile() was swallowing errors from ApplyCACerts/ApplyProxy, which are RPC calls to the sidecarexec container. If that container's socket wasn't listening yet (a real container-start race, no ordering guarantee within the Pod), the failure was logged and discarded, so CA certs/proxy could go permanently unapplied for the Pod's lifetime with no retry.

Now Reconcile() returns the error so controller-runtime requeues watch- triggered reconciles with backoff, and the one-shot startup reconcile in run.go retries with a bounded backoff instead of silently continuing.

Which issue(s) this PR fixes:

Fixes #1849

Does this PR introduce a user-facing change?

NONE

Additional Notes for your reviewer:

Review Checklist:
  • Follows the developer guidelines
  • Relevant tests are added or updated
  • [] Relevant docs in this repo added or updated
  • [] Relevant carvel.dev docs added or updated in a separate PR and there's
    a link to that PR
  • Code is at least as readable and maintainable as it was before this
    change

Additional documentation e.g., Proposal, usage docs, etc.:


Reconcile() was swallowing errors from ApplyCACerts/ApplyProxy, which are
RPC calls to the sidecarexec container. If that container's socket wasn't
listening yet (a real container-start race, no ordering guarantee within
the Pod), the failure was logged and discarded, so CA certs/proxy could go
permanently unapplied for the Pod's lifetime with no retry.

Now Reconcile() returns the error so controller-runtime requeues watch-
triggered reconciles with backoff, and the one-shot startup reconcile in
run.go retries with a bounded backoff instead of silently continuing.

Signed-off-by: Himanshu Singh <himansh.singh3@gmail.com>
@himsngh
himsngh force-pushed the fix/config-reconciler-swallowed-osconfig-errors branch from 93a4254 to 2d1d6a9 Compare August 25, 2026 12:48
@himsngh
himsngh requested a review from carvel-bot August 25, 2026 12:49
@himsngh
himsngh requested a review from praveenrewar August 25, 2026 18:19
@himsngh himsngh self-assigned this Aug 26, 2026
@himsngh himsngh changed the title Propagate config reconciler errors so sidecar-not-ready races self-heal Fix: kapp-controller silently drops errors when pushing CA certs/proxy settings to its sidecarexec container Aug 26, 2026
@himsngh
himsngh requested a review from aroradaman August 27, 2026 10:03

@aroradaman aroradaman left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is not a breaking change, we just wait and retry when rpc call fails.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

kapp-controller silently drops errors when pushing CA certs/proxy settings to its sidecarexec container

3 participants