Skip to content

Commit ef5392e

Browse files
authored
Improve error messages for databricks_permissions (#2055)
This does not fix the issue, but adds more debug information to the error output.
1 parent eb0b788 commit ef5392e

File tree

2 files changed

+4
-12
lines changed

2 files changed

+4
-12
lines changed

permissions/resource_permissions.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -383,7 +383,8 @@ func ResourcePermissions() *schema.Resource {
383383
Schema: s,
384384
CustomizeDiff: func(ctx context.Context, diff *schema.ResourceDiff, c any) error {
385385
client := c.(*common.DatabricksClient)
386-
if client.DatabricksClient.Config.Host == "" {
386+
log.Printf("[DEBUG] permissions id=%s, config_present=%v", diff.Id(), client.Config != nil)
387+
if client.Config.Host == "" || client.DatabricksClient.Config.Host == "" {
387388
log.Printf("[WARN] cannot validate permission levels, because host is not known yet")
388389
return nil
389390
}
@@ -393,7 +394,7 @@ func ResourcePermissions() *schema.Resource {
393394
}
394395
me, err := w.CurrentUser.Me(ctx)
395396
if err != nil {
396-
return err
397+
return fmt.Errorf("customize diff: me: %w", err)
397398
}
398399
// Plan time validation for object permission levels
399400
for _, mapping := range permissionsResourceIDFields() {

permissions/resource_permissions_test.go

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ import (
88

99
"github.com/databricks/databricks-sdk-go"
1010
"github.com/databricks/databricks-sdk-go/apierr"
11-
"github.com/databricks/databricks-sdk-go/client"
1211
"github.com/databricks/databricks-sdk-go/config"
1312
"github.com/databricks/terraform-provider-databricks/common"
1413
"github.com/databricks/terraform-provider-databricks/jobs"
@@ -454,7 +453,7 @@ func TestResourcePermissionsCustomizeDiff_ErrorOnScimMe(t *testing.T) {
454453
Resource: ResourcePermissions(),
455454
Read: true,
456455
ID: "/clusters/abc",
457-
}.ExpectError(t, "Internal error happened")
456+
}.ExpectError(t, "customize diff: me: Internal error happened")
458457
}
459458

460459
func TestResourcePermissionsRead_ErrorOnScimMe(t *testing.T) {
@@ -1263,14 +1262,6 @@ func TestShouldKeepAdminsOnAnythingExceptPasswordsAndAssignsOwnerForPipeline(t *
12631262
})
12641263
}
12651264

1266-
func TestCustomizeDiffNoHostYet(t *testing.T) {
1267-
assert.Nil(t, ResourcePermissions().CustomizeDiff(context.TODO(), nil, &common.DatabricksClient{
1268-
DatabricksClient: &client.DatabricksClient{
1269-
Config: &config.Config{},
1270-
},
1271-
}))
1272-
}
1273-
12741265
func TestPathPermissionsResourceIDFields(t *testing.T) {
12751266
var m permissionsIDFieldMapping
12761267
for _, x := range permissionsResourceIDFields() {

0 commit comments

Comments
 (0)