Skip to content

Commit

Permalink
remove the return value from waitForVpcCluster (IBM-Cloud#5556)
Browse files Browse the repository at this point in the history
Co-authored-by: Zoltan Illes <zoltan.illes@ibm.com>
  • Loading branch information
z0za and Zoltan Illes authored Aug 9, 2024
1 parent a9a4a10 commit 5a74d81
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 26 deletions.
15 changes: 9 additions & 6 deletions ibm/service/kubernetes/data_source_ibm_container_vpc_cluster.go
Original file line number Diff line number Diff line change
Expand Up @@ -405,13 +405,16 @@ func dataSourceIBMContainerClusterVPCRead(d *schema.ResourceData, meta interface

d.SetId(cls.ID)

returnedClusterInfo, err := waitForVpcCluster(d, meta, timeoutStage, timeout)
if err != nil {
return err
}
if timeoutStage != "" {
err = waitForVpcCluster(d, meta, timeoutStage, timeout)
if err != nil {
return err
}

if returnedClusterInfo != nil {
cls = returnedClusterInfo
cls, err = csClient.Clusters().GetCluster(clusterNameOrID, targetEnv)
if err != nil {
return fmt.Errorf("[ERROR] Error retrieving container vpc cluster: %s", err)
}
}

d.Set("crn", cls.CRN)
Expand Down
31 changes: 11 additions & 20 deletions ibm/service/kubernetes/resource_ibm_container_vpc_cluster.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ package kubernetes

import (
"context"
"errors"
"fmt"
"log"
"os"
Expand Down Expand Up @@ -655,7 +654,7 @@ func resourceIBMContainerVpcClusterCreate(d *schema.ResourceData, meta interface
}
}

_, err = waitForVpcCluster(d, meta, timeoutStage, d.Timeout(schema.TimeoutCreate))
err = waitForVpcCluster(d, meta, timeoutStage, d.Timeout(schema.TimeoutCreate))
if err != nil {
return err
}
Expand Down Expand Up @@ -1094,45 +1093,37 @@ func isLBDeleteRefreshFunc(lbc *vpcv1.VpcV1, id string) resource.StateRefreshFun
}
}

func waitForVpcCluster(d *schema.ResourceData, meta interface{}, timeoutStage string, timeout time.Duration) (*v2.ClusterInfo, error) {
var clusterinfo interface{}
func waitForVpcCluster(d *schema.ResourceData, meta interface{}, timeoutStage string, timeout time.Duration) error {
var err error
switch timeoutStage {

case strings.ToLower(clusterNormal):
pendingStates := []string{clusterDeploying, clusterRequested, clusterPending, clusterDeployed, clusterCritical, clusterWarning}
clusterinfo, err = waitForVpcClusterState(d, meta, clusterNormal, pendingStates, timeout)
_, err = waitForVpcClusterState(d, meta, clusterNormal, pendingStates, timeout)
if err != nil {
return nil, err
return err
}

case strings.ToLower(masterNodeReady):
clusterinfo, err = waitForVpcClusterMasterAvailable(d, meta, timeout)
_, err = waitForVpcClusterMasterAvailable(d, meta, timeout)
if err != nil {
return nil, err
return err
}

case strings.ToLower(oneWorkerNodeReady):
clusterinfo, err = waitForVpcClusterOneWorkerAvailable(d, meta, timeout)
_, err = waitForVpcClusterOneWorkerAvailable(d, meta, timeout)
if err != nil {
return nil, err
return err
}

case strings.ToLower(ingressReady):
clusterinfo, err = waitForVpcClusterIngressAvailable(d, meta, timeout)
_, err = waitForVpcClusterIngressAvailable(d, meta, timeout)
if err != nil {
return nil, err
return err
}
default:
// silent fallback
return nil, nil
}

ci, ok := clusterinfo.(*v2.ClusterInfo)
if !ok {
return nil, errors.New("[ERROR] cannot convert returned value to ClusterInfo")
}
return ci, nil
return nil
}

func waitForVpcClusterDelete(d *schema.ResourceData, meta interface{}) (interface{}, error) {
Expand Down

0 comments on commit 5a74d81

Please sign in to comment.