Skip to content

Commit 3832a34

Browse files
chore: Remove legacy columns from managed accounts SDK (#4175)
- Remove unnecessary fields from Managed Account after 2024_08 BCR is generally enabled. We already sourced this data from renamed columns in the SDK conversion implementation. - The acceptance tests are skipped for now in the pipeline, but I verified the change manually. - Add the retry in assertions due to create propagation time. - Adjust a few assertions. - Remove unnecessary BCR acceptance test. ## References https://docs.snowflake.com/en/release-notes/bcr-bundles/2024_08/bcr-1738
1 parent f8a97f0 commit 3832a34

File tree

5 files changed

+11
-54
lines changed

5 files changed

+11
-54
lines changed

pkg/sdk/managed_accounts_def.go

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,11 @@ package sdk
33
import g "github.com/Snowflake-Labs/terraform-provider-snowflake/pkg/sdk/generator/gen"
44

55
var managedAccountDbRow = g.DbStruct("managedAccountDBRow").
6-
OptionalText("name").
76
OptionalText("account_name").
87
Text("cloud").
98
Text("region").
10-
OptionalText("locator").
119
OptionalText("account_locator").
1210
Text("created_on").
13-
OptionalText("url").
1411
OptionalText("account_url").
1512
Text("account_locator_url").
1613
Bool("is_reader").

pkg/sdk/managed_accounts_gen.go

Lines changed: 0 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pkg/sdk/managed_accounts_impl_gen.go

Lines changed: 0 additions & 6 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pkg/sdk/testint/managed_accounts_gen_integration_test.go

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ package testint
44

55
import (
66
"testing"
7+
"time"
78

89
"github.com/Snowflake-Labs/terraform-provider-snowflake/pkg/acceptance/helpers/random"
910
"github.com/Snowflake-Labs/terraform-provider-snowflake/pkg/acceptance/testenvs"
@@ -20,7 +21,7 @@ func TestInt_ManagedAccounts(t *testing.T) {
2021
client := testClient(t)
2122
ctx := testContext(t)
2223

23-
assertManagedAccount := func(t *testing.T, managedAccount *sdk.ManagedAccount, id sdk.AccountObjectIdentifier, comment string) {
24+
assertManagedAccount := func(t *testing.T, managedAccount *sdk.ManagedAccount, id sdk.AccountObjectIdentifier, comment *string) {
2425
t.Helper()
2526
assert.Equal(t, id.Name(), managedAccount.Name)
2627
assert.Equal(t, "aws", managedAccount.Cloud)
@@ -60,8 +61,12 @@ func TestInt_ManagedAccounts(t *testing.T) {
6061
require.NoError(t, err)
6162
t.Cleanup(cleanupMangedAccountProvider(id))
6263

63-
managedAccount, err := client.ManagedAccounts.ShowByID(ctx, id)
64-
require.NoError(t, err)
64+
var managedAccount *sdk.ManagedAccount
65+
require.Eventually(t, func() bool {
66+
var err error
67+
managedAccount, err = client.ManagedAccounts.ShowByID(ctx, id)
68+
return err == nil
69+
}, 10*time.Second, 2*time.Second)
6570

6671
return managedAccount
6772
}
@@ -76,7 +81,7 @@ func TestInt_ManagedAccounts(t *testing.T) {
7681

7782
managedAccount := createManagedAccountWithRequest(t, request)
7883

79-
assertManagedAccount(t, managedAccount, request.GetName(), "")
84+
assertManagedAccount(t, managedAccount, request.GetName(), nil)
8085
})
8186

8287
t.Run("create managed account: full", func(t *testing.T) {
@@ -85,7 +90,7 @@ func TestInt_ManagedAccounts(t *testing.T) {
8590

8691
managedAccount := createManagedAccountWithRequest(t, request)
8792

88-
assertManagedAccount(t, managedAccount, request.GetName(), "some comment")
93+
assertManagedAccount(t, managedAccount, request.GetName(), sdk.String("some comment"))
8994
})
9095

9196
t.Run("drop managed account: existing", func(t *testing.T) {
@@ -117,7 +122,7 @@ func TestInt_ManagedAccounts(t *testing.T) {
117122
returnedManagedAccounts, err := client.ManagedAccounts.Show(ctx, showRequest)
118123
require.NoError(t, err)
119124

120-
assert.Len(t, returnedManagedAccounts, 2)
125+
assert.GreaterOrEqual(t, len(returnedManagedAccounts), 2)
121126
assert.Contains(t, returnedManagedAccounts, *managedAccount1)
122127
assert.Contains(t, returnedManagedAccounts, *managedAccount2)
123128
})

pkg/testacc/resource_managed_account_acceptance_test.go

Lines changed: 0 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ import (
1010
"github.com/Snowflake-Labs/terraform-provider-snowflake/pkg/acceptance/testenvs"
1111
"github.com/Snowflake-Labs/terraform-provider-snowflake/pkg/provider/resources"
1212
"github.com/hashicorp/terraform-plugin-testing/helper/resource"
13-
"github.com/hashicorp/terraform-plugin-testing/plancheck"
1413
"github.com/hashicorp/terraform-plugin-testing/tfversion"
1514
)
1615

@@ -55,41 +54,6 @@ func TestAcc_ManagedAccount(t *testing.T) {
5554
})
5655
}
5756

58-
func TestAcc_ManagedAccount_HandleShowOutputChanges_BCR_2024_08(t *testing.T) {
59-
// TODO [SNOW-1011985]: unskip the tests
60-
testenvs.SkipTestIfSet(t, testenvs.SkipManagedAccountTest, "error: 090337 (23001): Number of managed accounts allowed exceeded the limit. Please contact Snowflake support")
61-
62-
id := testClient().Ids.RandomAccountObjectIdentifier()
63-
adminName := random.AdminName()
64-
adminPass := random.Password()
65-
66-
resource.Test(t, resource.TestCase{
67-
ProtoV6ProviderFactories: TestAccProtoV6ProviderFactories,
68-
TerraformVersionChecks: []tfversion.TerraformVersionCheck{
69-
tfversion.RequireAbove(tfversion.Version1_5_0),
70-
},
71-
CheckDestroy: CheckDestroy(t, resources.ManagedAccount),
72-
Steps: []resource.TestStep{
73-
{
74-
Config: managedAccountConfig(id.Name(), adminName, adminPass),
75-
ConfigPlanChecks: resource.ConfigPlanChecks{
76-
PreApply: []plancheck.PlanCheck{
77-
plancheck.ExpectResourceAction("snowflake_managed_account.test", plancheck.ResourceActionNoop),
78-
},
79-
},
80-
Check: resource.ComposeTestCheckFunc(
81-
resource.TestCheckResourceAttr("snowflake_managed_account.test", "name", id.Name()),
82-
resource.TestCheckResourceAttr("snowflake_managed_account.test", "fully_qualified_name", id.FullyQualifiedName()),
83-
resource.TestCheckResourceAttr("snowflake_managed_account.test", "admin_name", adminName),
84-
resource.TestCheckResourceAttr("snowflake_managed_account.test", "admin_password", adminPass),
85-
resource.TestCheckResourceAttr("snowflake_managed_account.test", "comment", managedAccountComment),
86-
resource.TestCheckResourceAttr("snowflake_managed_account.test", "type", "READER"),
87-
),
88-
},
89-
},
90-
})
91-
}
92-
9357
func managedAccountConfig(accName, aName, aPass string) string {
9458
return fmt.Sprintf(`
9559
resource "snowflake_managed_account" "test" {

0 commit comments

Comments
 (0)