Skip to content

Commit

Permalink
Merge pull request #7547 from ptv-logistics/bugfix/g7539-wait-for-com…
Browse files Browse the repository at this point in the history
…pletion-nv

fixes not waiting for createOrUpdate and throwing "Not found" after creation
  • Loading branch information
tombuildsstuff committed Jul 1, 2020
2 parents 224705c + a07ee8a commit a1587c7
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 3 deletions.
Expand Up @@ -102,10 +102,15 @@ func resourceArmApiManagementNamedValueCreateUpdate(d *schema.ResourceData, meta
parameters.NamedValueCreateContractProperties.Tags = utils.ExpandStringSlice(tags.([]interface{}))
}

if _, err := client.CreateOrUpdate(ctx, resourceGroup, serviceName, name, parameters, ""); err != nil {
future, err := client.CreateOrUpdate(ctx, resourceGroup, serviceName, name, parameters, "")
if err != nil {
return fmt.Errorf(" creating or updating Property %q (Resource Group %q / API Management Service %q): %+v", name, resourceGroup, serviceName, err)
}

if err = future.WaitForCompletionRef(ctx, client.Client); err != nil {
return fmt.Errorf("waiting on creating/updating Property %q (Resource Group %q / API Management Service %q): %+v", name, resourceGroup, serviceName, err)
}

resp, err := client.Get(ctx, resourceGroup, serviceName, name)
if err != nil {
return fmt.Errorf(" retrieving Property %q (Resource Group %q / API Management Service %q): %+v", name, resourceGroup, serviceName, err)
Expand Down
Expand Up @@ -115,8 +115,13 @@ func resourceArmApiManagementPropertyCreateUpdate(d *schema.ResourceData, meta i
parameters.NamedValueCreateContractProperties.Tags = utils.ExpandStringSlice(tags.([]interface{}))
}

if _, err := client.CreateOrUpdate(ctx, resourceGroup, serviceName, name, parameters, ""); err != nil {
return fmt.Errorf("creating or updating Property %q (Resource Group %q / API Management Service %q): %+v", name, resourceGroup, serviceName, err)
future, err := client.CreateOrUpdate(ctx, resourceGroup, serviceName, name, parameters, "")
if err != nil {
return fmt.Errorf(" creating or updating Property %q (Resource Group %q / API Management Service %q): %+v", name, resourceGroup, serviceName, err)
}

if err = future.WaitForCompletionRef(ctx, client.Client); err != nil {
return fmt.Errorf("waiting on creating/updating Property %q (Resource Group %q / API Management Service %q): %+v", name, resourceGroup, serviceName, err)
}

resp, err := client.Get(ctx, resourceGroup, serviceName, name)
Expand Down

0 comments on commit a1587c7

Please sign in to comment.