Skip to content

Remove outdated IPMode workaround in LoadBalancer service status test #6606

@PulkitDadwal

Description

@PulkitDadwal

What happened:
The codebase contains outdated workaround code in the LoadBalancer service status test (test/e2e/suites/base/resource_test.go) that was supposed to be removed once karmada-apiserver v1.30 was deployed by default. The TODO comment on line 196 references this cleanup task and links to PR #5141, but the workaround code (lines 197-202) is still present despite the project now using Kubernetes v1.33.2.

What you expected to happen:
The TODO comment and associated workaround code should have been removed when the Kubernetes version was upgraded to v1.30 or later. The test should directly compare LoadBalancer Ingress status without clearing the IPMode fields, as this workaround is no longer necessary with the current Kubernetes apiserver version.

How to reproduce it (as minimally and precisely as possible):

  1. Open test/e2e/suites/base/resource_test.go
  2. Navigate to line 196
  3. Observe the TODO comment: "Once karmada-apiserver v1.30 deploy by default,delete the following five lines, see Fix test for corev1.LoadBalancerIngress,add IP model to VIP when ip is setting. #5141"
  4. Check go.mod file and confirm that Kubernetes dependencies are at v0.33.2 (equivalent to Kubernetes v1.33)
  5. Note that the workaround code is still present despite the upgrade condition being met

Anything else we need to know?:
This is technical debt that accumulated when the Kubernetes version was upgraded but the corresponding cleanup was not performed. The workaround was originally needed to handle IPMode field differences in older Kubernetes versions, but is no longer required. Removing this code will improve test reliability and reduce maintenance overhead.

Environment:

  • Karmada version: Latest (main branch)
  • kubectl-karmada or karmadactl version (the result of kubectl-karmada version or karmadactl version): N/A (code issue)
  • Others: Kubernetes dependencies at v0.33.2, Go version 1.24.5

Metadata

Metadata

Assignees

Labels

kind/cleanupCategorizes issue or PR as related to cleaning up code, process, or technical debt.

Type

No type

Projects

Status

No status

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions