From aaa96fbb77cd8dad616e95191240b90f17b92a48 Mon Sep 17 00:00:00 2001 From: Ramgopal Nagaboina Date: Wed, 2 Sep 2026 17:58:24 -0400 Subject: [PATCH] fix: scan all service provider elements before failing the lookup virtualRouterElementState and internalLbVmElementState returned a not-found error from inside the loop over the provider elements, so each only examined the first element and failed whenever the matching element was not at index 0. Move the not-found error after each loop and trigger it only when no element matched. Signed-off-by: Ramgopal Nagaboina --- .../resource_cloudstack_network_service_provider_state.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/cloudstack/resource_cloudstack_network_service_provider_state.go b/cloudstack/resource_cloudstack_network_service_provider_state.go index bcdc17d8..49a32994 100644 --- a/cloudstack/resource_cloudstack_network_service_provider_state.go +++ b/cloudstack/resource_cloudstack_network_service_provider_state.go @@ -174,6 +174,9 @@ func virtualRouterElementState(cs *cloudstack.CloudStackClient, nsp *cloudstack. vreID = e.Id break } + } + + if vreID == "" { return fmt.Errorf("Service provider element id (nspod) not found: %s.", nsp.Id) } @@ -202,6 +205,9 @@ func internalLbVmElementState(cs *cloudstack.CloudStackClient, nsp *cloudstack.N ilbeID = e.Id break } + } + + if ilbeID == "" { return fmt.Errorf("Service provider element id (nspod) not found: %s.", nsp.Id) }