@@ -76,12 +76,12 @@ var (
7676 "backup_config" : acctest.RepresentationGroup {RepType : acctest .Required , Group : DatabaseAutonomousContainerDatabaseBackupConfigRepresentation },
7777 "key_store_id" : acctest.Representation {RepType : acctest .Optional , Create : `${oci_database_key_store.test_key_store.id}` },
7878 "compartment_id" : acctest.Representation {RepType : acctest .Optional , Create : `${var.compartment_id}` },
79- "db_unique_name" : acctest.Representation {RepType : acctest .Optional , Create : acbDBName },
79+ "db_unique_name" : acctest.Representation {RepType : acctest .Optional , Create : acbDBName2 },
8080 "defined_tags" : acctest.Representation {RepType : acctest .Optional , Create : `${map("${oci_identity_tag_namespace.tag-namespace1.name}.${oci_identity_tag.tag1.name}", "value")}` , Update : `${map("${oci_identity_tag_namespace.tag-namespace1.name}.${oci_identity_tag.tag1.name}", "updatedValue")}` },
8181 "freeform_tags" : acctest.Representation {RepType : acctest .Optional , Create : map [string ]string {"Department" : "Finance" }, Update : map [string ]string {"Department" : "Accounting" }},
8282 "maintenance_window_details" : acctest.RepresentationGroup {RepType : acctest .Optional , Group : DatabaseAutonomousContainerDatabaseMaintenanceWindowDetailsRepresentation },
8383 "service_level_agreement_type" : acctest.Representation {RepType : acctest .Optional , Create : `STANDARD` },
84- "db_name" : acctest.Representation {RepType : acctest .Optional , Create : `DBNAME ` },
84+ "db_name" : acctest.Representation {RepType : acctest .Optional , Create : `DBNAME2 ` },
8585 "db_version" : acctest.Representation {RepType : acctest .Required , Create : `19.22.0.1.0` },
8686 "is_dst_file_update_enabled" : acctest.Representation {RepType : acctest .Optional , Create : `false` , Update : `true` },
8787 }
@@ -92,12 +92,23 @@ var (
9292 ExaccDatabaseMaintenanceRunRepresentation = map [string ]interface {}{
9393 "patch_type" : acctest.Representation {RepType : acctest .Required , Create : `QUARTERLY` },
9494 "target_resource_id" : acctest.Representation {RepType : acctest .Required , Create : `${oci_database_autonomous_container_database.test_autonomous_container_database.id}` },
95- "compartment_id" : acctest.Representation {RepType : acctest .Required , Create : `${var.compartment_id}` },
95+ "compartment_id" : acctest.Representation {RepType : acctest .Optional , Create : `${var.compartment_id}` },
9696 "is_dst_file_update_enabled" : acctest.Representation {RepType : acctest .Optional , Create : `false` },
9797 "patching_mode" : acctest.Representation {RepType : acctest .Optional , Create : `ROLLING` , Update : `NONROLLING` },
9898 "time_scheduled" : acctest.Representation {RepType : acctest .Required , Create : mrTimeScheduledCreate .Format (time .RFC3339Nano )},
9999 }
100100
101+ ExaccDatabaseMaintenanceRunFromAdsiRepresentation = map [string ]interface {}{
102+ "patch_type" : acctest.Representation {RepType : acctest .Required , Create : `CUSTOM_DATABASE_SOFTWARE_IMAGE` },
103+ "target_resource_id" : acctest.Representation {RepType : acctest .Required , Create : `${oci_database_autonomous_container_database.test_autonomous_container_database_2.id}` },
104+ "compartment_id" : acctest.Representation {RepType : acctest .Optional , Create : `${var.compartment_id}` },
105+ "database_software_image_id" : acctest.Representation {RepType : acctest .Optional , Create : `${oci_database_autonomous_database_software_image.test_autonomous_database_software_image.id}` },
106+ "patching_mode" : acctest.Representation {RepType : acctest .Optional , Create : `NONROLLING` },
107+ "time_scheduled" : acctest.Representation {RepType : acctest .Required , Create : mrTimeScheduledCreate .Format (time .RFC3339Nano )},
108+ }
109+
110+ AdbdDatabaseMaintenanceRunFromAdsiRepresentation = ExaccDatabaseMaintenanceRunFromAdsiRepresentation
111+
101112 ExaccDatabaseMaintenanceRunResourceDependencies = ExaccMRACDResourceConfig
102113
103114 ExaccDatabaseMaintenanceRunSingularDataSourceRepresentation = map [string ]interface {}{
@@ -119,7 +130,7 @@ var (
119130 "version_preference" : acctest.Representation {RepType : acctest .Optional , Create : `LATEST_RELEASE_UPDATE` , Update : `NEXT_RELEASE_UPDATE` },
120131 "display_name" : acctest.Representation {RepType : acctest .Required , Create : `containerDatabase2` , Update : `displayName2` },
121132 "patch_model" : acctest.Representation {RepType : acctest .Required , Create : `RELEASE_UPDATES` , Update : `RELEASE_UPDATE_REVISIONS` },
122- "db_version" : acctest.Representation {RepType : acctest .Required , Create : `19. 19.0.1.0` },
133+ "db_version" : acctest.Representation {RepType : acctest .Required , Create : utils . GetEnvSettingWithDefault ( "mr_acd_db_version" , " 19.21. 0.1.0" ) },
123134 "cloud_autonomous_vm_cluster_id" : acctest.Representation {RepType : acctest .Required , Create : `${oci_database_cloud_autonomous_vm_cluster.test_cloud_autonomous_vm_cluster.id}` },
124135 "backup_config" : acctest.RepresentationGroup {RepType : acctest .Optional , Group : ACDatabaseBackupConfigRepresentation },
125136 "compartment_id" : acctest.Representation {RepType : acctest .Optional , Create : `${var.compartment_id}` },
@@ -133,6 +144,19 @@ var (
133144 "db_name" : acctest.Representation {RepType : acctest .Optional , Create : `DBNAME` },
134145 "is_dst_file_update_enabled" : acctest.Representation {RepType : acctest .Optional , Create : `false` , Update : `true` },
135146 }
147+
148+ AdbdMRACDatabaseRepresentation = acctest .RepresentationCopyWithNewProperties (DatabaseMRAutonomousContainerDatabaseRepresentation , map [string ]interface {}{
149+ "db_name" : acctest.Representation {RepType : acctest .Optional , Create : `DBNAME2` },
150+ })
151+
152+ ExaccDatabaseMaintenanceRunResourceFromAdsiDependencies = ExaccDatabaseAutonomousDatabaseSoftwareImageResourceConfig +
153+ acctest .GenerateResourceFromRepresentationMap ("oci_database_autonomous_container_database" , "test_autonomous_container_database_2" , acctest .Optional , acctest .Update , ExaccMRACDatabaseRepresentation )
154+
155+ ExaccDatabaseMaintenanceRunFromAdsiResourceConfig = ExaccDatabaseMaintenanceRunResourceFromAdsiDependencies +
156+ acctest .GenerateResourceFromRepresentationMap ("oci_database_maintenance_run" , "test_maintenance_run" , acctest .Optional , acctest .Update , ExaccDatabaseMaintenanceRunFromAdsiRepresentation )
157+
158+ AdbdDatabaseMaintenanceRunResourceFromAdsiDependencies = DatabaseAutonomousDatabaseSoftwareImageResourceConfig +
159+ acctest .GenerateResourceFromRepresentationMap ("oci_database_autonomous_container_database" , "test_autonomous_container_database_2" , acctest .Optional , acctest .Update , AdbdMRACDatabaseRepresentation )
136160)
137161
138162// issue-routing-tag: database/dbaas-atp-d
@@ -369,6 +393,87 @@ func TestDatabaseMaintenanceRunResource_basic(t *testing.T) {
369393 })
370394}
371395
396+ func TestExaccDatabaseMaintenanceRunFromAdsiResource (t * testing.T ) {
397+ httpreplay .SetScenario ("TestExaccDatabaseMaintenanceRunFromAdsiResource" )
398+ defer httpreplay .SaveScenario ()
399+ config := acctest .ProviderTestConfig ()
400+ compartmentId := utils .GetEnvSettingWithBlankDefault ("compartment_ocid" )
401+ compartmentIdVariableStr := fmt .Sprintf ("variable \" compartment_id\" { default = \" %s\" }\n " , compartmentId )
402+ resourceName := "oci_database_maintenance_run.test_maintenance_run"
403+ singularDatasourceName := "data.oci_database_maintenance_run.test_maintenance_run"
404+
405+ acctest .ResourceTest (t , nil , []resource.TestStep {
406+ // create maintenance run
407+ {
408+ Config : config + compartmentIdVariableStr + ExaccDatabaseMaintenanceRunResourceFromAdsiDependencies +
409+ acctest .GenerateResourceFromRepresentationMap ("oci_database_maintenance_run" , "test_maintenance_run" ,
410+ acctest .Optional , acctest .Create , ExaccDatabaseMaintenanceRunFromAdsiRepresentation ),
411+ Check : acctest .ComposeAggregateTestCheckFuncWrapper (
412+ resource .TestCheckResourceAttr (resourceName , "maintenance_subtype" , "CUSTOM_DATABASE_SOFTWARE_IMAGE" ),
413+ resource .TestCheckResourceAttrSet (resourceName , "target_resource_id" ),
414+ resource .TestCheckResourceAttrSet (resourceName , "database_software_image_id" ),
415+ resource .TestCheckResourceAttr (resourceName , "time_scheduled" , mrTimeScheduledCreate .Format (time .RFC3339Nano )),
416+ resource .TestCheckResourceAttr (resourceName , "patching_mode" , `NONROLLING` ),
417+ func (s * terraform.State ) (err error ) {
418+ _ , err = acctest .FromInstanceState (s , resourceName , "id" )
419+ return err
420+ },
421+ ),
422+ },
423+ // verify singular datasource
424+ {
425+ Config : config +
426+ acctest .GenerateDataSourceFromRepresentationMap ("oci_database_maintenance_run" , "test_maintenance_run" , acctest .Required , acctest .Create , ExaccDatabaseMaintenanceRunSingularDataSourceRepresentation ) +
427+ compartmentIdVariableStr + ExaccDatabaseMaintenanceRunFromAdsiResourceConfig ,
428+ Check : acctest .ComposeAggregateTestCheckFuncWrapper (
429+ resource .TestCheckResourceAttrSet (singularDatasourceName , "maintenance_run_id" ),
430+ resource .TestCheckResourceAttr (singularDatasourceName , "compartment_id" , compartmentId ),
431+ resource .TestCheckResourceAttr (singularDatasourceName , "maintenance_subtype" , "CUSTOM_DATABASE_SOFTWARE_IMAGE" ),
432+ resource .TestCheckResourceAttrSet (singularDatasourceName , "target_resource_id" ),
433+ resource .TestCheckResourceAttrSet (singularDatasourceName , "id" ),
434+ resource .TestCheckResourceAttr (singularDatasourceName , "patching_mode" , "NONROLLING" ),
435+ resource .TestCheckResourceAttrSet (singularDatasourceName , "state" ),
436+ resource .TestCheckResourceAttrSet (singularDatasourceName , "time_scheduled" ),
437+ ),
438+ },
439+ {
440+ Config : config + compartmentIdVariableStr + ExaccDatabaseAutonomousDatabaseSoftwareImageResourceConfig ,
441+ },
442+ })
443+ }
444+
445+ func TestAdbdDatabaseMaintenanceRunFromAdsiResource (t * testing.T ) {
446+ httpreplay .SetScenario ("TestAdbdDatabaseMaintenanceRunFromAdsiResource" )
447+ defer httpreplay .SaveScenario ()
448+ config := acctest .ProviderTestConfig ()
449+ compartmentId := utils .GetEnvSettingWithBlankDefault ("compartment_ocid" )
450+ compartmentIdVariableStr := fmt .Sprintf ("variable \" compartment_id\" { default = \" %s\" }\n " , compartmentId )
451+ resourceName := "oci_database_maintenance_run.test_maintenance_run"
452+
453+ acctest .ResourceTest (t , nil , []resource.TestStep {
454+ // create maintenance run
455+ {
456+ Config : config + compartmentIdVariableStr + AdbdDatabaseMaintenanceRunResourceFromAdsiDependencies +
457+ acctest .GenerateResourceFromRepresentationMap ("oci_database_maintenance_run" , "test_maintenance_run" ,
458+ acctest .Optional , acctest .Create , AdbdDatabaseMaintenanceRunFromAdsiRepresentation ),
459+ Check : acctest .ComposeAggregateTestCheckFuncWrapper (
460+ resource .TestCheckResourceAttr (resourceName , "maintenance_subtype" , "CUSTOM_DATABASE_SOFTWARE_IMAGE" ),
461+ resource .TestCheckResourceAttrSet (resourceName , "target_resource_id" ),
462+ resource .TestCheckResourceAttrSet (resourceName , "database_software_image_id" ),
463+ resource .TestCheckResourceAttr (resourceName , "time_scheduled" , mrTimeScheduledCreate .Format (time .RFC3339Nano )),
464+ resource .TestCheckResourceAttr (resourceName , "patching_mode" , `NONROLLING` ),
465+ func (s * terraform.State ) (err error ) {
466+ _ , err = acctest .FromInstanceState (s , resourceName , "id" )
467+ return err
468+ },
469+ ),
470+ },
471+ {
472+ Config : config + compartmentIdVariableStr + DatabaseAutonomousDatabaseSoftwareImageResourceConfig ,
473+ },
474+ })
475+ }
476+
372477func TestExaccDatabaseMaintenanceRunResource (t * testing.T ) {
373478 httpreplay .SetScenario ("TestDatabaseMaintenanceRunResource" )
374479 defer httpreplay .SaveScenario ()
0 commit comments