Skip to content

Placeholder k8s service reconciliation doesn't take defaulter into account when diffing #1637

@mdemirhan

Description

@mdemirhan

Expected Behavior

Placeholder k8s service for a revision gets reconciled every 30 seconds due to fighting with the defaulter. We should ignore the fields that are set by the defaulter and not reconcile on those fields.

Actual Behavior

Logs show the following diff causing us to reconcile today:

Reconciling service diff (-desired, +observed): 
{v1.ServiceSpec}.Ports[0].Protocol: 	-: v1.Protocol("") 	+: v1.Protocol("TCP") {v1.ServiceSpec}.Ports[0].NodePort: 	-: 0 	+: 30914 
{v1.ServiceSpec}.SessionAffinity: 	-: v1.ServiceAffinity("") 	+: v1.ServiceAffinity("None") {v1.ServiceSpec}.ExternalTrafficPolicy: 	-: v1.ServiceExternalTrafficPolicyType("") 	+: v1.ServiceExternalTrafficPolicyType("Cluster")

Metadata

Metadata

Assignees

Labels

area/networkingkind/bugCategorizes issue or PR as related to a bug.kind/cleanupCategorizes issue or PR as related to cleaning up code, process, or technical debt.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions