5757 "data_node_storage_gb" : acctest.Representation {RepType : acctest .Required , Create : `50` },
5858 "display_name" : acctest.Representation {RepType : acctest .Required , Create : `tf_provider_cluster_updated` , Update : `tf_provider_cluster_updated` },
5959 "master_node_count" : acctest.Representation {RepType : acctest .Required , Create : `1` },
60- "master_node_host_memory_gb" : acctest.Representation {RepType : acctest .Required , Create : `16 ` },
60+ "master_node_host_memory_gb" : acctest.Representation {RepType : acctest .Required , Create : `20 ` },
6161 "master_node_host_ocpu_count" : acctest.Representation {RepType : acctest .Required , Create : `1` },
6262 "master_node_host_type" : acctest.Representation {RepType : acctest .Required , Create : `FLEX` },
6363 "opendashboard_node_count" : acctest.Representation {RepType : acctest .Required , Create : `1` },
8484 "data_node_storage_gb" : acctest.Representation {RepType : acctest .Required , Create : `50` },
8585 "display_name" : acctest.Representation {RepType : acctest .Required , Create : `tf_provider_cluster_updated` , Update : `tf_provider_cluster_updated` },
8686 "master_node_count" : acctest.Representation {RepType : acctest .Required , Create : `1` },
87- "master_node_host_memory_gb" : acctest.Representation {RepType : acctest .Required , Create : `16 ` },
87+ "master_node_host_memory_gb" : acctest.Representation {RepType : acctest .Required , Create : `20 ` },
8888 "master_node_host_ocpu_count" : acctest.Representation {RepType : acctest .Required , Create : `1` },
8989 "master_node_host_type" : acctest.Representation {RepType : acctest .Required , Create : `FLEX` },
9090 "opendashboard_node_count" : acctest.Representation {RepType : acctest .Required , Create : `1` },
@@ -104,6 +104,60 @@ var (
104104 "lifecycle" : acctest.RepresentationGroup {RepType : acctest .Required , Group : ignoreOpenSearchSystemTagsChangesRep },
105105 }
106106
107+ OpensearchOpensearchClusterHorizontalResizeRepresentation = map [string ]interface {}{
108+ "compartment_id" : acctest.Representation {RepType : acctest .Required , Create : `${var.compartment_id}` },
109+ "data_node_count" : acctest.Representation {RepType : acctest .Required , Create : `1` , Update : `2` },
110+ "data_node_host_memory_gb" : acctest.Representation {RepType : acctest .Required , Create : `20` },
111+ "data_node_host_ocpu_count" : acctest.Representation {RepType : acctest .Required , Create : `2` },
112+ "data_node_host_type" : acctest.Representation {RepType : acctest .Required , Create : `FLEX` },
113+ "data_node_storage_gb" : acctest.Representation {RepType : acctest .Required , Create : `50` },
114+ "display_name" : acctest.Representation {RepType : acctest .Required , Create : `tf_provider_cluster_updated` , Update : `tf_provider_cluster_updated` },
115+ "master_node_count" : acctest.Representation {RepType : acctest .Required , Create : `1` },
116+ "master_node_host_memory_gb" : acctest.Representation {RepType : acctest .Required , Create : `20` },
117+ "master_node_host_ocpu_count" : acctest.Representation {RepType : acctest .Required , Create : `1` },
118+ "master_node_host_type" : acctest.Representation {RepType : acctest .Required , Create : `FLEX` },
119+ "opendashboard_node_count" : acctest.Representation {RepType : acctest .Required , Create : `1` },
120+ "opendashboard_node_host_memory_gb" : acctest.Representation {RepType : acctest .Required , Create : `10` },
121+ "opendashboard_node_host_ocpu_count" : acctest.Representation {RepType : acctest .Required , Create : `2` },
122+ "software_version" : acctest.Representation {RepType : acctest .Required , Create : `1.2.4` , Update : `1.2.4` },
123+ "subnet_compartment_id" : acctest.Representation {RepType : acctest .Required , Create : `${var.compartment_id}` },
124+ "subnet_id" : acctest.Representation {RepType : acctest .Required , Create : `${oci_core_subnet.test_subnet.id}` },
125+ "vcn_compartment_id" : acctest.Representation {RepType : acctest .Required , Create : `${var.compartment_id}` },
126+ "vcn_id" : acctest.Representation {RepType : acctest .Required , Create : `${oci_core_vcn.test_vcn.id}` },
127+ "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")}` },
128+ "freeform_tags" : acctest.Representation {RepType : acctest .Optional , Create : map [string ]string {"bar-key" : "value" }, Update : map [string ]string {"Department" : "Accounting" }},
129+ "system_tags" : acctest.Representation {RepType : acctest .Optional , Create : map [string ]string {"sys-namespace.tag-key" : "value" }, Update : map [string ]string {"sys-namespace.tag-key" : "updatedValue" }},
130+ "security_mode" : acctest.Representation {RepType : acctest .Optional , Create : `DISABLED` },
131+ "lifecycle" : acctest.RepresentationGroup {RepType : acctest .Required , Group : ignoreOpenSearchSystemTagsChangesRep },
132+ }
133+
134+ OpensearchOpensearchClusterVerticalResizeRepresentation = map [string ]interface {}{
135+ "compartment_id" : acctest.Representation {RepType : acctest .Required , Create : `${var.compartment_id}` },
136+ "data_node_count" : acctest.Representation {RepType : acctest .Required , Create : `1` , Update : `2` },
137+ "data_node_host_memory_gb" : acctest.Representation {RepType : acctest .Required , Create : `20` , Update : `40` },
138+ "data_node_host_ocpu_count" : acctest.Representation {RepType : acctest .Required , Create : `2` , Update : `4` },
139+ "data_node_host_type" : acctest.Representation {RepType : acctest .Required , Create : `FLEX` },
140+ "data_node_storage_gb" : acctest.Representation {RepType : acctest .Required , Create : `50` },
141+ "display_name" : acctest.Representation {RepType : acctest .Required , Create : `tf_provider_cluster_updated` , Update : `tf_provider_cluster_updated` },
142+ "master_node_count" : acctest.Representation {RepType : acctest .Required , Create : `1` },
143+ "master_node_host_memory_gb" : acctest.Representation {RepType : acctest .Required , Create : `20` },
144+ "master_node_host_ocpu_count" : acctest.Representation {RepType : acctest .Required , Create : `1` },
145+ "master_node_host_type" : acctest.Representation {RepType : acctest .Required , Create : `FLEX` },
146+ "opendashboard_node_count" : acctest.Representation {RepType : acctest .Required , Create : `1` },
147+ "opendashboard_node_host_memory_gb" : acctest.Representation {RepType : acctest .Required , Create : `10` },
148+ "opendashboard_node_host_ocpu_count" : acctest.Representation {RepType : acctest .Required , Create : `2` },
149+ "software_version" : acctest.Representation {RepType : acctest .Required , Create : `1.2.4` , Update : `1.2.4` },
150+ "subnet_compartment_id" : acctest.Representation {RepType : acctest .Required , Create : `${var.compartment_id}` },
151+ "subnet_id" : acctest.Representation {RepType : acctest .Required , Create : `${oci_core_subnet.test_subnet.id}` },
152+ "vcn_compartment_id" : acctest.Representation {RepType : acctest .Required , Create : `${var.compartment_id}` },
153+ "vcn_id" : acctest.Representation {RepType : acctest .Required , Create : `${oci_core_vcn.test_vcn.id}` },
154+ "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")}` },
155+ "freeform_tags" : acctest.Representation {RepType : acctest .Optional , Create : map [string ]string {"bar-key" : "value" }, Update : map [string ]string {"Department" : "Accounting" }},
156+ "system_tags" : acctest.Representation {RepType : acctest .Optional , Create : map [string ]string {"sys-namespace.tag-key" : "value" }, Update : map [string ]string {"sys-namespace.tag-key" : "updatedValue" }},
157+ "security_mode" : acctest.Representation {RepType : acctest .Optional , Create : `DISABLED` },
158+ "lifecycle" : acctest.RepresentationGroup {RepType : acctest .Required , Group : ignoreOpenSearchSystemTagsChangesRep },
159+ }
160+
107161 ignoreOpenSearchSystemTagsChangesRep = map [string ]interface {}{
108162 "ignore_changes" : acctest.Representation {RepType : acctest .Required , Create : []string {`system_tags` , `defined_tags` }},
109163 }
@@ -127,7 +181,7 @@ func TestOpensearchOpensearchClusterResource_basic(t *testing.T) {
127181 datasourceName := "data.oci_opensearch_opensearch_clusters.test_opensearch_clusters"
128182 singularDatasourceName := "data.oci_opensearch_opensearch_cluster.test_opensearch_cluster"
129183
130- var resId , resId2 string
184+ var resId , resId2 , resId3 string
131185 // Save TF content to Create resource with optional properties. This has to be exactly the same as the config part in the "create with optionals" step in the test.
132186 acctest .SaveConfigContent (config + compartmentIdVariableStr + OpensearchOpensearchClusterResourceDependencies +
133187 acctest .GenerateResourceFromRepresentationMap ("oci_opensearch_opensearch_cluster" , "test_opensearch_cluster" , acctest .Optional , acctest .Create , OpensearchOpensearchClusterRepresentation ), "opensearch" , "opensearchCluster" , t )
@@ -146,7 +200,7 @@ func TestOpensearchOpensearchClusterResource_basic(t *testing.T) {
146200 resource .TestCheckResourceAttr (resourceName , "data_node_storage_gb" , "50" ),
147201 resource .TestCheckResourceAttr (resourceName , "display_name" , "tf_provider_cluster_updated" ),
148202 resource .TestCheckResourceAttr (resourceName , "master_node_count" , "1" ),
149- resource .TestCheckResourceAttr (resourceName , "master_node_host_memory_gb" , "16 " ),
203+ resource .TestCheckResourceAttr (resourceName , "master_node_host_memory_gb" , "20 " ),
150204 resource .TestCheckResourceAttr (resourceName , "master_node_host_ocpu_count" , "1" ),
151205 resource .TestCheckResourceAttr (resourceName , "master_node_host_type" , "FLEX" ),
152206 resource .TestCheckResourceAttr (resourceName , "opendashboard_node_count" , "1" ),
@@ -164,7 +218,97 @@ func TestOpensearchOpensearchClusterResource_basic(t *testing.T) {
164218 },
165219 ),
166220 },
221+ // verify horizontal resize
222+ {
223+ Config : config + compartmentIdVariableStr + OpensearchOpensearchClusterResourceDependencies +
224+ acctest .GenerateResourceFromRepresentationMap ("oci_opensearch_opensearch_cluster" , "test_opensearch_cluster" , acctest .Optional , acctest .Update , OpensearchOpensearchClusterHorizontalResizeRepresentation ),
225+ Check : acctest .ComposeAggregateTestCheckFuncWrapper (
226+
227+ resource .TestCheckResourceAttr (resourceName , "compartment_id" , compartmentId ),
228+ resource .TestCheckResourceAttr (resourceName , "data_node_count" , "2" ),
229+ resource .TestCheckResourceAttr (resourceName , "data_node_host_memory_gb" , "20" ),
230+ resource .TestCheckResourceAttr (resourceName , "data_node_host_ocpu_count" , "2" ),
231+ resource .TestCheckResourceAttr (resourceName , "data_node_host_type" , "FLEX" ),
232+ resource .TestCheckResourceAttr (resourceName , "data_node_storage_gb" , "50" ),
233+ resource .TestCheckResourceAttr (resourceName , "display_name" , "tf_provider_cluster_updated" ),
234+ resource .TestCheckResourceAttr (resourceName , "freeform_tags.%" , "1" ),
235+ resource .TestCheckResourceAttrSet (resourceName , "id" ),
236+ resource .TestCheckResourceAttr (resourceName , "master_node_count" , "1" ),
237+ resource .TestCheckResourceAttr (resourceName , "master_node_host_memory_gb" , "20" ),
238+ resource .TestCheckResourceAttr (resourceName , "master_node_host_ocpu_count" , "1" ),
239+ resource .TestCheckResourceAttr (resourceName , "master_node_host_type" , "FLEX" ),
240+ resource .TestCheckResourceAttrSet (resourceName , "opendashboard_fqdn" ),
241+ resource .TestCheckResourceAttr (resourceName , "opendashboard_node_count" , "1" ),
242+ resource .TestCheckResourceAttr (resourceName , "opendashboard_node_host_memory_gb" , "10" ),
243+ resource .TestCheckResourceAttr (resourceName , "opendashboard_node_host_ocpu_count" , "2" ),
244+ resource .TestCheckResourceAttrSet (resourceName , "opendashboard_private_ip" ),
245+ resource .TestCheckResourceAttrSet (resourceName , "opensearch_fqdn" ),
246+ resource .TestCheckResourceAttrSet (resourceName , "opensearch_private_ip" ),
247+ resource .TestCheckResourceAttr (resourceName , "software_version" , "1.2.4" ),
248+ resource .TestCheckResourceAttrSet (resourceName , "state" ),
249+ resource .TestCheckResourceAttrSet (resourceName , "subnet_compartment_id" ),
250+ resource .TestCheckResourceAttrSet (resourceName , "subnet_id" ),
251+ resource .TestCheckResourceAttr (resourceName , "system_tags.%" , "0" ),
252+ resource .TestCheckResourceAttrSet (resourceName , "time_created" ),
253+ resource .TestCheckResourceAttrSet (resourceName , "total_storage_gb" ),
254+ resource .TestCheckResourceAttrSet (resourceName , "vcn_compartment_id" ),
255+ resource .TestCheckResourceAttrSet (resourceName , "vcn_id" ),
256+
257+ func (s * terraform.State ) (err error ) {
258+ resId2 , err = acctest .FromInstanceState (s , resourceName , "id" )
259+ if resId != resId2 {
260+ return fmt .Errorf ("Resource recreated when it was supposed to be updated." )
261+ }
262+ return err
263+ },
264+ ),
265+ },
167266
267+ // verify vertical resize
268+ {
269+ Config : config + compartmentIdVariableStr + OpensearchOpensearchClusterResourceDependencies +
270+ acctest .GenerateResourceFromRepresentationMap ("oci_opensearch_opensearch_cluster" , "test_opensearch_cluster" , acctest .Optional , acctest .Update , OpensearchOpensearchClusterVerticalResizeRepresentation ),
271+ Check : acctest .ComposeAggregateTestCheckFuncWrapper (
272+
273+ resource .TestCheckResourceAttr (resourceName , "compartment_id" , compartmentId ),
274+ resource .TestCheckResourceAttr (resourceName , "data_node_count" , "2" ),
275+ resource .TestCheckResourceAttr (resourceName , "data_node_host_memory_gb" , "40" ),
276+ resource .TestCheckResourceAttr (resourceName , "data_node_host_ocpu_count" , "4" ),
277+ resource .TestCheckResourceAttr (resourceName , "data_node_host_type" , "FLEX" ),
278+ resource .TestCheckResourceAttr (resourceName , "data_node_storage_gb" , "50" ),
279+ resource .TestCheckResourceAttr (resourceName , "display_name" , "tf_provider_cluster_updated" ),
280+ resource .TestCheckResourceAttr (resourceName , "freeform_tags.%" , "1" ),
281+ resource .TestCheckResourceAttrSet (resourceName , "id" ),
282+ resource .TestCheckResourceAttr (resourceName , "master_node_count" , "1" ),
283+ resource .TestCheckResourceAttr (resourceName , "master_node_host_memory_gb" , "20" ),
284+ resource .TestCheckResourceAttr (resourceName , "master_node_host_ocpu_count" , "1" ),
285+ resource .TestCheckResourceAttr (resourceName , "master_node_host_type" , "FLEX" ),
286+ resource .TestCheckResourceAttrSet (resourceName , "opendashboard_fqdn" ),
287+ resource .TestCheckResourceAttr (resourceName , "opendashboard_node_count" , "1" ),
288+ resource .TestCheckResourceAttr (resourceName , "opendashboard_node_host_memory_gb" , "10" ),
289+ resource .TestCheckResourceAttr (resourceName , "opendashboard_node_host_ocpu_count" , "2" ),
290+ resource .TestCheckResourceAttrSet (resourceName , "opendashboard_private_ip" ),
291+ resource .TestCheckResourceAttrSet (resourceName , "opensearch_fqdn" ),
292+ resource .TestCheckResourceAttrSet (resourceName , "opensearch_private_ip" ),
293+ resource .TestCheckResourceAttr (resourceName , "software_version" , "1.2.4" ),
294+ resource .TestCheckResourceAttrSet (resourceName , "state" ),
295+ resource .TestCheckResourceAttrSet (resourceName , "subnet_compartment_id" ),
296+ resource .TestCheckResourceAttrSet (resourceName , "subnet_id" ),
297+ resource .TestCheckResourceAttr (resourceName , "system_tags.%" , "0" ),
298+ resource .TestCheckResourceAttrSet (resourceName , "time_created" ),
299+ resource .TestCheckResourceAttrSet (resourceName , "total_storage_gb" ),
300+ resource .TestCheckResourceAttrSet (resourceName , "vcn_compartment_id" ),
301+ resource .TestCheckResourceAttrSet (resourceName , "vcn_id" ),
302+
303+ func (s * terraform.State ) (err error ) {
304+ resId3 , err = acctest .FromInstanceState (s , resourceName , "id" )
305+ if resId2 != resId3 {
306+ return fmt .Errorf ("Resource recreated when it was supposed to be updated." )
307+ }
308+ return err
309+ },
310+ ),
311+ },
168312 // delete before next Create
169313 {
170314 Config : config + compartmentIdVariableStr + OpensearchOpensearchClusterResourceDependencies ,
@@ -184,7 +328,7 @@ func TestOpensearchOpensearchClusterResource_basic(t *testing.T) {
184328 resource .TestCheckResourceAttr (resourceName , "freeform_tags.%" , "1" ),
185329 resource .TestCheckResourceAttrSet (resourceName , "id" ),
186330 resource .TestCheckResourceAttr (resourceName , "master_node_count" , "1" ),
187- resource .TestCheckResourceAttr (resourceName , "master_node_host_memory_gb" , "16 " ),
331+ resource .TestCheckResourceAttr (resourceName , "master_node_host_memory_gb" , "20 " ),
188332 resource .TestCheckResourceAttr (resourceName , "master_node_host_ocpu_count" , "1" ),
189333 resource .TestCheckResourceAttr (resourceName , "master_node_host_type" , "FLEX" ),
190334 resource .TestCheckResourceAttrSet (resourceName , "opendashboard_fqdn" ),
@@ -232,7 +376,7 @@ func TestOpensearchOpensearchClusterResource_basic(t *testing.T) {
232376 resource .TestCheckResourceAttr (resourceName , "freeform_tags.%" , "1" ),
233377 resource .TestCheckResourceAttrSet (resourceName , "id" ),
234378 resource .TestCheckResourceAttr (resourceName , "master_node_count" , "1" ),
235- resource .TestCheckResourceAttr (resourceName , "master_node_host_memory_gb" , "16 " ),
379+ resource .TestCheckResourceAttr (resourceName , "master_node_host_memory_gb" , "20 " ),
236380 resource .TestCheckResourceAttr (resourceName , "master_node_host_ocpu_count" , "1" ),
237381 resource .TestCheckResourceAttr (resourceName , "master_node_host_type" , "FLEX" ),
238382 resource .TestCheckResourceAttrSet (resourceName , "opendashboard_fqdn" ),
@@ -297,7 +441,7 @@ func TestOpensearchOpensearchClusterResource_basic(t *testing.T) {
297441 resource .TestCheckResourceAttr (singularDatasourceName , "freeform_tags.%" , "1" ),
298442 resource .TestCheckResourceAttrSet (singularDatasourceName , "id" ),
299443 resource .TestCheckResourceAttr (singularDatasourceName , "master_node_count" , "1" ),
300- resource .TestCheckResourceAttr (singularDatasourceName , "master_node_host_memory_gb" , "16 " ),
444+ resource .TestCheckResourceAttr (singularDatasourceName , "master_node_host_memory_gb" , "20 " ),
301445 resource .TestCheckResourceAttr (singularDatasourceName , "master_node_host_ocpu_count" , "1" ),
302446 resource .TestCheckResourceAttr (singularDatasourceName , "master_node_host_type" , "FLEX" ),
303447 resource .TestCheckResourceAttrSet (singularDatasourceName , "opendashboard_fqdn" ),
0 commit comments