Summary
Add envtest or integration-level coverage for the retry-cap path introduced in PR #460. When VPC endpoint validation fails after the VPC endpoint is ready but the Route 53 record is not ready, reconciliation should suppress that validation error and return a fixed one-minute requeue delay.
Rationale
The existing unit tests cover the Route 53 tag-condition cache gate and condition persistence. The retry-cap branch is in VpcEndpointReconciler.Reconcile, and reliably asserting its returned ctrl.Result requires a reconciler-level environment.
Affected area
controllers/vpcendpoint/vpcendpoint_controller.go
- New or existing envtest/integration test infrastructure for the VpcEndpoint reconciler
Acceptance criteria
- Set up a VpcEndpoint state where
AWSVpcEndpointReady=True, AWSRoute53RecordReady is not True, and resource validation returns an error.
- Invoke reconciliation through an envtest or integration-level test.
- Assert reconciliation returns no error.
- Assert
ctrl.Result.RequeueAfter == time.Minute.
- Assert the behavior remains scoped to this condition combination; unrelated validation errors must continue to be returned normally.
Backlinks
Requested by @dustman9000.
Summary
Add envtest or integration-level coverage for the retry-cap path introduced in PR #460. When VPC endpoint validation fails after the VPC endpoint is ready but the Route 53 record is not ready, reconciliation should suppress that validation error and return a fixed one-minute requeue delay.
Rationale
The existing unit tests cover the Route 53 tag-condition cache gate and condition persistence. The retry-cap branch is in
VpcEndpointReconciler.Reconcile, and reliably asserting its returnedctrl.Resultrequires a reconciler-level environment.Affected area
controllers/vpcendpoint/vpcendpoint_controller.goAcceptance criteria
AWSVpcEndpointReady=True,AWSRoute53RecordReadyis notTrue, and resource validation returns an error.ctrl.Result.RequeueAfter == time.Minute.Backlinks
Requested by @dustman9000.