Skip to content

Add probe timing overrides to Installation API#4611

Closed
caseydavenport wants to merge 2 commits intotigera:masterfrom
caseydavenport:casey-probe-overrides
Closed

Add probe timing overrides to Installation API#4611
caseydavenport wants to merge 2 commits intotigera:masterfrom
caseydavenport:casey-probe-overrides

Conversation

@caseydavenport
Copy link
Copy Markdown
Member

Adds ReadinessProbe and LivenessProbe fields of type ProbeOverride to all container override structs in the Installation API. Users can now tune PeriodSeconds, TimeoutSeconds, FailureThreshold, and InitialDelaySeconds through the standard deployment override mechanism without changing the probe handler (which the operator controls).

Example usage in an Installation resource:

spec:
  calicoNodeDaemonSet:
    spec:
      template:
        spec:
          containers:
          - name: calico-node
            readinessProbe:
              periodSeconds: 10
              timeoutSeconds: 5

The ProbeOverride type is intentionally minimal — only timing parameters, not the probe handler itself. A helper probes.ApplyOverride() is provided in pkg/render/common/probes/ for render functions to apply overrides.

Relates to: #4608

None

Add ReadinessProbe and LivenessProbe fields of type ProbeOverride to
all container override structs in the Installation API. This lets users
tune probe PeriodSeconds, TimeoutSeconds, FailureThreshold, and
InitialDelaySeconds through the standard deployment override mechanism
without changing the probe handler (which the operator controls).

The ProbeOverride type is intentionally minimal — it only exposes timing
parameters since the operator must control what the probes actually check.

Also adds a probes.ApplyOverride() helper in pkg/render/common/probes/
for render functions to apply overrides when constructing probes.
Wire ProbeOverride fields into the container override merge path:
- mergeContainerOverrides applies resource, readiness, and liveness
  probe overrides from the Installation API to rendered containers
- valueToContainerOverrides extracts all override fields via reflection
- Add DaemonSet test entry verifying probe period/timeout overrides
- Add unit tests for probes.ApplyOverride helper
- Include gen-files output (CRDs, deepcopy)
@caseydavenport
Copy link
Copy Markdown
Member Author

Recreating with rebased branch on tigera/operator

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

Successfully merging this pull request may close these issues.

2 participants