Skip to content

Commit 3f36433

Browse files
authored
fix(mnq_nats): delete update in nats credential (#2720)
* fix(mnq_nats): delete update in nats credential * fix(tem): add new test for update name
1 parent 62e53a1 commit 3f36433

4 files changed

+1868
-637
lines changed

internal/services/mnq/nats_credentials.go

+2-23
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@ func ResourceNatsCredentials() *schema.Resource {
1818
return &schema.Resource{
1919
CreateContext: ResourceMNQNatsCredentialsCreate,
2020
ReadContext: ResourceMNQNatsCredentialsRead,
21-
UpdateContext: ResourceMNQNatsCredentialsUpdate,
2221
DeleteContext: ResourceMNQNatsCredentialsDelete,
2322
Importer: &schema.ResourceImporter{
2423
StateContext: schema.ImportStatePassthroughContext,
@@ -28,13 +27,15 @@ func ResourceNatsCredentials() *schema.Resource {
2827
"account_id": {
2928
Type: schema.TypeString,
3029
Required: true,
30+
ForceNew: true,
3131
Description: "ID of the nats account",
3232
DiffSuppressFunc: dsf.Locality,
3333
},
3434
"name": {
3535
Type: schema.TypeString,
3636
Computed: true,
3737
Optional: true,
38+
ForceNew: true,
3839
Description: "The nats credentials name",
3940
},
4041
"file": {
@@ -94,28 +95,6 @@ func ResourceMNQNatsCredentialsRead(ctx context.Context, d *schema.ResourceData,
9495
return nil
9596
}
9697

97-
func ResourceMNQNatsCredentialsUpdate(ctx context.Context, d *schema.ResourceData, m interface{}) diag.Diagnostics {
98-
api, region, id, err := NewNatsAPIWithRegionAndID(m, d.Id())
99-
if err != nil {
100-
return diag.FromErr(err)
101-
}
102-
103-
req := &mnq.NatsAPIUpdateNatsAccountRequest{
104-
Region: region,
105-
NatsAccountID: id,
106-
}
107-
108-
if d.HasChange("name") {
109-
req.Name = types.ExpandUpdatedStringPtr(d.Get("name"))
110-
}
111-
112-
if _, err := api.UpdateNatsAccount(req, scw.WithContext(ctx)); err != nil {
113-
return diag.FromErr(err)
114-
}
115-
116-
return ResourceMNQNatsAccountRead(ctx, d, m)
117-
}
118-
11998
func ResourceMNQNatsCredentialsDelete(ctx context.Context, d *schema.ResourceData, m interface{}) diag.Diagnostics {
12099
api, region, id, err := NewNatsAPIWithRegionAndID(m, d.Id())
121100
if err != nil {

internal/services/mnq/nats_credentials_test.go

+44
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,50 @@ func TestAccNatsCredentials_Basic(t *testing.T) {
4040
})
4141
}
4242

43+
func TestAccNatsCredentials_UpdateName(t *testing.T) {
44+
tt := acctest.NewTestTools(t)
45+
defer tt.Cleanup()
46+
47+
resource.ParallelTest(t, resource.TestCase{
48+
PreCheck: func() { acctest.PreCheck(t) },
49+
ProviderFactories: tt.ProviderFactories,
50+
CheckDestroy: isNatsCredentialsDestroyed(tt),
51+
Steps: []resource.TestStep{
52+
{
53+
Config: `
54+
resource scaleway_mnq_nats_account main {
55+
name = "test-mnq-nats-credentials-basic"
56+
}
57+
58+
resource scaleway_mnq_nats_credentials main {
59+
account_id = scaleway_mnq_nats_account.main.id
60+
}
61+
`,
62+
Check: resource.ComposeTestCheckFunc(
63+
isNatsCredentialsPresent(tt, "scaleway_mnq_nats_credentials.main"),
64+
resource.TestCheckResourceAttrSet("scaleway_mnq_nats_credentials.main", "file"),
65+
),
66+
},
67+
{
68+
Config: `
69+
resource scaleway_mnq_nats_account main {
70+
name = "test-mnq-nats-credentials-basic"
71+
}
72+
73+
resource scaleway_mnq_nats_credentials main {
74+
account_id = scaleway_mnq_nats_account.main.id
75+
name="toto"
76+
}
77+
`,
78+
Check: resource.ComposeTestCheckFunc(
79+
isNatsCredentialsPresent(tt, "scaleway_mnq_nats_credentials.main"),
80+
resource.TestCheckResourceAttrSet("scaleway_mnq_nats_credentials.main", "file"),
81+
),
82+
},
83+
},
84+
})
85+
}
86+
4387
func isNatsCredentialsPresent(tt *acctest.TestTools, n string) resource.TestCheckFunc {
4488
return func(state *terraform.State) error {
4589
rs, ok := state.RootModule().Resources[n]

0 commit comments

Comments
 (0)