Skip to content

Commit

Permalink
fixes
Browse files Browse the repository at this point in the history
  • Loading branch information
jrauschenbusch committed Jun 12, 2020
1 parent 16cb0df commit 31c2247
Showing 1 changed file with 18 additions and 11 deletions.
29 changes: 18 additions & 11 deletions azurerm/internal/services/kusto/kusto_database_resource.go
Expand Up @@ -86,17 +86,17 @@ func resourceArmKustoDatabaseCreateUpdate(d *schema.ResourceData, meta interface
clusterName := d.Get("cluster_name").(string)

if d.IsNewResource() {
resp, err := client.Get(ctx, resourceGroup, clusterName, name)
existing, err := client.Get(ctx, resourceGroup, clusterName, name)
if err != nil {
if !utils.ResponseWasNotFound(resp.Response) {
if !utils.ResponseWasNotFound(existing.Response) {
return fmt.Errorf("Error checking for presence of existing Kusto Database %q (Resource Group %q, Cluster %q): %s", name, resourceGroup, clusterName, err)
}
}

if resp.Value == nil {
database, ok := resp.Value.AsReadWriteDatabase()
if existing.Value != nil {
database, ok := existing.Value.AsReadWriteDatabase()
if !ok {
return fmt.Errorf("Exisiting Resource was not a Kusto Read/Write Database %q (Resource Group %q, Cluster %q)", name, resourceGroup, clusterName)
return fmt.Errorf("Exisiting Resource is not a Kusto Read/Write Database %q (Resource Group %q, Cluster %q)", name, resourceGroup, clusterName)
}

if database.ID != nil && *database.ID != "" {
Expand All @@ -109,13 +109,13 @@ func resourceArmKustoDatabaseCreateUpdate(d *schema.ResourceData, meta interface

databaseProperties := expandKustoDatabaseProperties(d)

kustoDatabase := kusto.ReadWriteDatabase{
readWriteDatabase := kusto.ReadWriteDatabase{
Name: &name,
Location: &location,
ReadWriteDatabaseProperties: databaseProperties,
}

future, err := client.CreateOrUpdate(ctx, resourceGroup, clusterName, name, kustoDatabase)
future, err := client.CreateOrUpdate(ctx, resourceGroup, clusterName, name, readWriteDatabase)
if err != nil {
return fmt.Errorf("Error creating or updating Kusto Database %q (Resource Group %q, Cluster %q): %+v", name, resourceGroup, clusterName, err)
}
Expand All @@ -128,10 +128,13 @@ func resourceArmKustoDatabaseCreateUpdate(d *schema.ResourceData, meta interface
if err != nil {
return fmt.Errorf("Error retrieving Kusto Database %q (Resource Group %q, Cluster %q): %+v", name, resourceGroup, clusterName, err)
}
if resp.Value == nil {
return fmt.Errorf("Error retrieving Kusto Database %q (Resource Group %q, Cluster %q)", name, resourceGroup, clusterName)
}

database, ok := resp.Value.AsReadWriteDatabase()
if !ok {
return fmt.Errorf("Resource was not a ReadWriteDatabase %q (Resource Group %q, Cluster %q)", name, resourceGroup, clusterName)
return fmt.Errorf("Resource was not a Read/Write Database %q (Resource Group %q, Cluster %q)", name, resourceGroup, clusterName)
}
if database.ID == nil || *database.ID == "" {
return fmt.Errorf("Cannot read ID for Kusto Database %q (Resource Group %q, Cluster %q)", name, resourceGroup, clusterName)
Expand All @@ -153,14 +156,18 @@ func resourceArmKustoDatabaseRead(d *schema.ResourceData, meta interface{}) erro
}

resp, err := client.Get(ctx, id.ResourceGroup, id.Cluster, id.Name)
if err != nil || resp.Value != nil {
if err != nil {
if utils.ResponseWasNotFound(resp.Response) {
d.SetId("")
return nil
}
return fmt.Errorf("Error retrieving Kusto Database %q (Resource Group %q, Cluster %q): %+v", id.Name, id.ResourceGroup, id.Cluster, err)
}

if resp.Value == nil {
return fmt.Errorf("Error retrieving Kusto Database %q (Resource Group %q, Cluster %q): %+v", id.Name, id.ResourceGroup, id.Cluster)
}

database, ok := resp.Value.AsReadWriteDatabase()
if !ok {
return fmt.Errorf("Existing resource was not a Read/Write Database %q (Resource Group %q, Cluster %q)", id.Name, id.ResourceGroup, id.Cluster)
Expand All @@ -170,8 +177,8 @@ func resourceArmKustoDatabaseRead(d *schema.ResourceData, meta interface{}) erro
d.Set("resource_group_name", id.ResourceGroup)
d.Set("cluster_name", id.Cluster)

if location := resp.Location; location != nil {
d.Set("location", azure.NormalizeLocation(location))
if location := database.Location; location != nil {
d.Set("location", azure.NormalizeLocation(*location))
}

if props := database.ReadWriteDatabaseProperties; props != nil {
Expand Down

0 comments on commit 31c2247

Please sign in to comment.