From 38d9f5eb74e96c7221f48443f5c11b42a7889078 Mon Sep 17 00:00:00 2001 From: stephybun Date: Fri, 28 Feb 2025 09:16:07 +0100 Subject: [PATCH] check if administrator_login is not nil (#28909) --- .../services/mssql/mssql_server_resource.go | 20 ++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/internal/services/mssql/mssql_server_resource.go b/internal/services/mssql/mssql_server_resource.go index 6bcd9992ca85..af6e8dbd0395 100644 --- a/internal/services/mssql/mssql_server_resource.go +++ b/internal/services/mssql/mssql_server_resource.go @@ -761,17 +761,19 @@ func msSqlPasswordChangeWhenAADAuthOnly(ctx context.Context, d *pluginsdk.Resour // msSqlAdministratorLoginPassword checks to make sure that one of `administrator_login_password_wo` or `administrator_login_password` is set when `administrator_login` is specified. func msSqlAdministratorLoginPassword(ctx context.Context, d *pluginsdk.ResourceDiff, _ interface{}) (err error) { - adminLogin := d.GetRawConfig().AsValueMap()["administrator_login"] - if !adminLogin.IsNull() && adminLogin.AsString() != "" { - woAdminLoginPassword, err := pluginsdk.GetWriteOnlyFromDiff(d, "administrator_login_password_wo", cty.String) - if err != nil { - return err - } + adminLogin, ok := d.GetRawConfig().AsValueMap()["administrator_login"] + if ok { + if !adminLogin.IsNull() && adminLogin.AsString() != "" { + woAdminLoginPassword, err := pluginsdk.GetWriteOnlyFromDiff(d, "administrator_login_password_wo", cty.String) + if err != nil { + return err + } - password := d.GetRawConfig().AsValueMap()["administrator_login_password"] + password := d.GetRawConfig().AsValueMap()["administrator_login_password"] - if woAdminLoginPassword.IsNull() && password.IsNull() { - return fmt.Errorf("expected `administrator_login_password` or `administrator_login_password_wo` to be set when `administrator_login` is specified") + if woAdminLoginPassword.IsNull() && password.IsNull() { + return fmt.Errorf("expected `administrator_login_password` or `administrator_login_password_wo` to be set when `administrator_login` is specified") + } } } return