From de9592036974e8fc6d54c91d748b3f8c5d94e5c5 Mon Sep 17 00:00:00 2001 From: Ajay Malhotra Date: Thu, 1 Apr 2021 18:58:33 -0700 Subject: [PATCH] fix: do not wait for the DL connect gateway to be moved to provisioned state --- ibm/resource_ibm_dl_gateway.go | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/ibm/resource_ibm_dl_gateway.go b/ibm/resource_ibm_dl_gateway.go index c1dd8d1eba0..dd9ab79f3b5 100644 --- a/ibm/resource_ibm_dl_gateway.go +++ b/ibm/resource_ibm_dl_gateway.go @@ -7,6 +7,7 @@ import ( "fmt" "log" "os" + "strings" "time" "github.com/IBM/networking-go-sdk/directlinkv1" @@ -540,10 +541,20 @@ func resourceIBMdlGatewayCreate(d *schema.ResourceData, meta interface{}) error log.Printf("[INFO] Created Direct Link Gateway (%s Template) : %s", dtype, *gateway.ID) if dtype == "connect" { - _, err = isWaitForDirectLinkAvailable(directLink, d.Id(), d.Timeout(schema.TimeoutCreate)) + getPortOptions := directLink.NewGetPortOptions(*gateway.Port.ID) + port, response, err := directLink.GetPort(getPortOptions) if err != nil { + log.Println("[WARN] Error getting port", response, err) return err } + + if !strings.Contains(strings.ToLower(*port.ProviderName), "netbond") && !strings.Contains(strings.ToLower(*port.ProviderName), "megaport") { + _, err = isWaitForDirectLinkAvailable(directLink, d.Id(), d.Timeout(schema.TimeoutCreate)) + if err != nil { + return err + } + } + } v := os.Getenv("IC_ENV_TAGS")