@@ -1328,6 +1328,61 @@ func TestAccInstance_EncryptionAtRestFalse(t *testing.T) {
1328
1328
})
1329
1329
}
1330
1330
1331
+ func TestAccInstance_UpdateEncryptionAtRest (t * testing.T ) {
1332
+ tt := acctest .NewTestTools (t )
1333
+ defer tt .Cleanup ()
1334
+
1335
+ latestEngineVersion := rdbchecks .GetLatestEngineVersion (tt , postgreSQLEngineName )
1336
+
1337
+ resource .ParallelTest (t , resource.TestCase {
1338
+ PreCheck : func () { acctest .PreCheck (t ) },
1339
+ ProviderFactories : tt .ProviderFactories ,
1340
+ CheckDestroy : rdbchecks .IsInstanceDestroyed (tt ),
1341
+ Steps : []resource.TestStep {
1342
+ // Step 1: Create without encryption
1343
+ {
1344
+ Config : fmt .Sprintf (`
1345
+ resource scaleway_rdb_instance main {
1346
+ name = "test-rdb-update-encryption"
1347
+ node_type = "db-dev-s"
1348
+ engine = %q
1349
+ is_ha_cluster = false
1350
+ disable_backup = true
1351
+ user_name = "user_no_enc"
1352
+ password = "thiZ_is_v&ry_s3cret"
1353
+ encryption_at_rest = false
1354
+ tags = [ "terraform-test", "no-encryption" ]
1355
+ }
1356
+ ` , latestEngineVersion ),
1357
+ Check : resource .ComposeTestCheckFunc (
1358
+ isInstancePresent (tt , "scaleway_rdb_instance.main" ),
1359
+ resource .TestCheckResourceAttr ("scaleway_rdb_instance.main" , "encryption_at_rest" , "false" ),
1360
+ ),
1361
+ },
1362
+ // Step 2: Update encryption to true
1363
+ {
1364
+ Config : fmt .Sprintf (`
1365
+ resource scaleway_rdb_instance main {
1366
+ name = "test-rdb-update-encryption"
1367
+ node_type = "db-dev-s"
1368
+ engine = %q
1369
+ is_ha_cluster = false
1370
+ disable_backup = true
1371
+ user_name = "user_enc"
1372
+ password = "thiZ_is_v&ry_s3cret"
1373
+ encryption_at_rest = true
1374
+ tags = [ "terraform-test", "with-encryption" ]
1375
+ }
1376
+ ` , latestEngineVersion ),
1377
+ Check : resource .ComposeTestCheckFunc (
1378
+ isInstancePresent (tt , "scaleway_rdb_instance.main" ),
1379
+ resource .TestCheckResourceAttr ("scaleway_rdb_instance.main" , "encryption_at_rest" , "true" ),
1380
+ ),
1381
+ },
1382
+ },
1383
+ })
1384
+ }
1385
+
1331
1386
func isInstancePresent (tt * acctest.TestTools , n string ) resource.TestCheckFunc {
1332
1387
return func (s * terraform.State ) error {
1333
1388
rs , ok := s .RootModule ().Resources [n ]
0 commit comments