@@ -96,11 +96,19 @@ resource "oci_core_vcn" "test_vcn" {
9696 compartment_id = var. compartment_id
9797}
9898
99- variable "jobId" {
100- default = " "
99+ data "oci_database_migration_jobs" "test_jobs" {
100+ display_name = " displayName"
101+ filter {
102+ name = " TF_id"
103+ values = [
104+ " jobId" ]
105+ }
106+ migration_id = " migrationId"
107+ state = " Succeeded"
101108}
109+
102110data "oci_database_migration_job" "test_job" {
103- job_id = var . jobId
111+ job_id = " jobId"
104112}
105113
106114data "oci_database_migration_agent" "test_agent" {
@@ -113,94 +121,297 @@ data "oci_database_migration_migrations" "test_migrations" {
113121}
114122
115123data "oci_database_migration_job_advisor_report" "test_job_advisor_report" {
116- job_id = var . jobId
124+ job_id = " jobId"
117125}
118126
119127data "oci_database_migration_job_output" "test_job_output" {
120- job_id = var . jobId
128+ job_id = " jobId"
121129}
122130
123131data "oci_database_migration_migration_object_types" "test_migration_object_types" {
124- connection_type = " MYSQL"
125132}
126133
127134data "oci_database_migration_agent_images" "test_agent_images" {}
128135
129136resource "oci_database_migration_connection" "test_connection_target" {
137+ admin_credentials {
138+ password = random_string. autonomous_database_admin_password . result
139+ username = " admin"
140+ }
130141 compartment_id = var. compartment_id
131142 database_id = var. database_id
143+ database_type = " AUTONOMOUS"
132144 display_name = " TF_display_test_create"
133-
134- connection_type = " MYSQL"
135- key_id = var. kms_key_id
136- vault_id = var. kms_vault_id
137- password = " BEstrO0ng_#11"
138- technology_type = " AMAZON_RDS_MYSQL"
139- username = " ggfe"
140- database_name = " ggfe"
141- host = " 254.249.0.0"
142- port = " 3306"
143- replication_password = " replicationPassword"
144- replication_username = " replicationUsername"
145- security_protocol = " PLAIN"
146- ssh_host = " sshHost"
147- ssh_key = " sshKey"
148- ssh_sudo_location = " sshSudoLocation"
149- ssh_user = " sshUser"
150- subnet_id = var. subnet_id
151- wallet = " wallet2"
152-
145+ private_endpoint {
146+ compartment_id = var. compartment_id
147+ subnet_id = var. subnet_id
148+ vcn_id = var. vcn_id
149+ }
150+ vault_details {
151+ compartment_id = var. compartment_id
152+ key_id = var. kms_key_id
153+ vault_id = var. kms_vault_id
154+ }
153155}
154156
155157data "oci_identity_availability_domains" "test_availability_domains" {
156158 compartment_id = var. compartment_id
157159}
158160
159161resource "oci_database_migration_connection" "test_connection_source" {
162+ admin_credentials {
163+ password = " ORcl##4567890"
164+ username = " admin"
165+ }
160166 compartment_id = var. compartment_id
167+ connect_descriptor {
168+ connect_string = " (description=(address=(port=1521)(host=10.2.2.17))(connect_data=(service_name=pdb0107svc.dbsubnet.gghubvcn.oraclevcn.com)))"
169+ }
170+ database_type = " MANUAL"
161171 display_name = " TF_display_test_create_source"
162- connection_type = " MYSQL"
163- key_id = var. kms_key_id
164- vault_id = var. kms_vault_id
165- password = " BEstrO0ng_#11"
166- technology_type = " AMAZON_RDS_MYSQL"
167- username = " ggfe"
168- database_id = var. database_mysql_id
169- database_name = " ggfe"
170- host = " 254.249.0.0"
171- port = " 3306"
172- replication_password = " replicationPassword"
173- replication_username = " replicationUsername"
174- security_protocol = " PLAIN"
175- ssh_host = " sshHost"
176- ssh_key = " sshKey"
177- ssh_sudo_location = " sshSudoLocation"
178- ssh_user = " sshUser"
179- subnet_id = var. subnet_id
180- wallet = " wallet2"
181-
182- }
183-
184- variable "database_mysql_id" {
185- default = " "
172+ ssh_details {
173+ host = " 10.2.2.17"
174+ sshkey = var. ssh_key
175+ sudo_location = " /usr/bin/sudo"
176+ user = " opc"
177+ }
178+ vault_details {
179+ compartment_id = var. compartment_id
180+ key_id = var. kms_key_id
181+ vault_id = var. kms_vault_id
182+ }
183+ }
184+
185+ resource "oci_database_migration_connection" "test_connection_source_rds" {
186+ admin_credentials {
187+ password = " ORcl##4567890"
188+ username = " admin"
189+ }
190+ compartment_id = var. compartment_id
191+ connect_descriptor {
192+ connect_string = " (description=(address=(port=1521)(host=10.2.2.17))(connect_data=(service_name=pdb0107svc.dbsubnet.gghubvcn.oraclevcn.com)))"
193+ }
194+ database_type = " MANUAL"
195+ manual_database_sub_type = " RDS_ORACLE"
196+ display_name = " TF_display_test_create_source_rds"
197+ vault_details {
198+ compartment_id = var. compartment_id
199+ key_id = var. kms_key_id
200+ vault_id = var. kms_vault_id
201+ }
202+ }
203+
204+ resource "oci_database_migration_connection" "test_connection_source_no_ssh" {
205+ admin_credentials {
206+ password = " ORcl##4567890"
207+ username = " admin"
208+ }
209+ compartment_id = var. compartment_id
210+ database_type = " USER_MANAGED_OCI"
211+ database_id = var. src_database_id
212+ display_name = " TF_display_test_create_source"
213+
214+ connect_descriptor {
215+ connect_string = " (description=(address=(port=1521)(host=10.0.0.42))(connect_data=(service_name=pdb.sub10311806420.vcntesttf.oraclevcn.com)))"
216+ }
217+ vault_details {
218+ compartment_id = var. compartment_id
219+ key_id = var. kms_key_id
220+ vault_id = var. kms_vault_id
221+ }
222+ }
223+
224+ resource "oci_database_migration_connection" "test_connection_target_usr_managed_oci" {
225+ admin_credentials {
226+ password = random_string. autonomous_database_admin_password . result
227+ username = " admin"
228+ }
229+ compartment_id = var. compartment_id
230+ database_type = " USER_MANAGED_OCI"
231+ database_id = var. tgt_database_id
232+ display_name = " TF_display_test_create_target"
233+
234+ connect_descriptor {
235+ connect_string = " (description=(address=(port=1521)(host=10.0.0.42))(connect_data=(service_name=pdb.sub10311806420.vcntesttf.oraclevcn.com)))"
236+ }
237+ vault_details {
238+ compartment_id = var. compartment_id
239+ key_id = var. kms_key_id
240+ vault_id = var. kms_vault_id
241+ }
186242}
187243
188- variable "source_connection_mysql_id " {
244+ variable "secret_access_key " {
189245 default = " "
190246}
191- variable "target_connection_mysql_id " {
247+ variable "access_key_id " {
192248 default = " "
193249}
194250resource "oci_database_migration_migration" "test_migration" {
195251 compartment_id = var. compartment_id
196- database_combination = " MYSQL"
197- source_database_connection_id = var. source_connection_mysql_id
198- target_database_connection_id = var. target_connection_mysql_id
252+
253+ # csvText - Optional
254+ // csv_text = "MY_BIZZ,SRC_CITY,TABLE,EXCLUDE"
255+ golden_gate_service_details {
256+ settings {
257+ acceptable_lag = " 10"
258+ extract {
259+ long_trans_duration = " 10"
260+ performance_profile = " LOW"
261+ }
262+ }
263+ }
264+ data_transfer_medium_details {
265+ object_storage_details {
266+ bucket = " bucket"
267+ namespace = " namespace"
268+ }
269+ }
270+ data_transfer_medium_details_v2 {
271+ type = " AWS_S3"
272+ access_key_id = var. access_key_id
273+ object_storage_bucket {
274+ bucket = " bucket"
275+ namespace = " namespace"
276+ }
277+ name = " AWS-S3"
278+ region = " Ashburn"
279+ secret_access_key = var. secret_access_key
280+ }
281+ datapump_settings {
282+ export_directory_object {
283+ name = " test_export_dir"
284+ path = " /u01/app/oracle/product/19.0.0.0/dbhome_1/rdbms/log"
285+ }
286+ metadata_remaps {
287+ new_value = " DATA"
288+ old_value = " USERS"
289+ type = " TABLESPACE"
290+ }
291+ }
292+ exclude_objects {
293+ object = " .*"
294+ owner = " owner"
295+ is_omit_excluded_table_from_replication = " false"
296+ type = " ALL"
297+ }
298+ golden_gate_details {
299+ hub {
300+ rest_admin_credentials {
301+ password = random_string. autonomous_database_admin_password . result
302+ username = " oggadmin"
303+ }
304+ source_container_db_admin_credentials {
305+ password = random_string. autonomous_database_admin_password . result
306+ username = " c##ggadmin"
307+ }
308+ source_db_admin_credentials {
309+ password = random_string. autonomous_database_admin_password . result
310+ username = " ggadmin"
311+ }
312+ source_microservices_deployment_name = " Target"
313+ target_db_admin_credentials {
314+ password = random_string. autonomous_database_admin_password . result
315+ username = " ggadmin"
316+ }
317+ target_microservices_deployment_name = " Target"
318+ url = " https://10.0.0.0"
319+ }
320+ }
321+ source_database_connection_id = var. source_connection_id
322+ source_container_database_connection_id = var. source_connection_container_id
323+ target_database_connection_id = var. target_connection_id
199324 type = " ONLINE"
200- display_name = " displayName"
325+ vault_details {
326+ compartment_id = var. compartment_id
327+ key_id = var. kms_key_id
328+ vault_id = var. kms_vault_id
329+ }
330+ }
331+
332+ resource "oci_database_migration_migration" "test_migration_rds" {
333+ compartment_id = var. compartment_id
334+
335+ golden_gate_service_details {
336+ settings {
337+ acceptable_lag = " 10"
338+ extract {
339+ long_trans_duration = " 10"
340+ performance_profile = " LOW"
341+ }
342+ }
343+ }
344+ data_transfer_medium_details_v2 {
345+ type = " OBJECT_STORAGE"
346+ }
347+ datapump_settings {
348+ export_directory_object {
349+ name = " test_export_dir"
350+ path = " /u01/app/oracle/product/19.0.0.0/dbhome_1/rdbms/log"
351+ }
352+ metadata_remaps {
353+ new_value = " DATA"
354+ old_value = " USERS"
355+ type = " TABLESPACE"
356+ }
357+ }
358+ exclude_objects {
359+ object = " .*"
360+ owner = " owner"
361+ is_omit_excluded_table_from_replication = " false"
362+ type = " ALL"
363+ }
364+ source_database_connection_id = var. source_connection_rds_id
365+ target_database_connection_id = var. target_connection_id
366+ type = " ONLINE"
367+ vault_details {
368+ compartment_id = var. compartment_id
369+ key_id = var. kms_key_id
370+ vault_id = var. kms_vault_id
371+ }
372+ }
373+
374+ resource "oci_database_migration_migration" "test_no_ssh_migration" {
375+ compartment_id = var. compartment_id
376+ source_database_connection_id = oci_database_migration_connection. test_connection_source_no_ssh . id
377+ target_database_connection_id = oci_database_migration_connection. test_connection_target_usr_managed_oci . id
378+ type = " OFFLINE"
379+ data_transfer_medium_details {
380+ object_storage_details {
381+ bucket = var. bucket_id
382+ namespace = " namespace"
383+ }
384+ }
385+ datapump_settings {
386+ export_directory_object {
387+ name = " test_export_dir"
388+ path = " /u01/app/oracle/product/19.0.0.0/dbhome_1/rdbms/log"
389+ }
390+ import_directory_object {
391+ name = " test_export_dir"
392+ path = " /u01/app/oracle/product/19.0.0.0/dbhome_1/rdbms/log"
393+ }
394+ }
395+ vault_details {
396+ compartment_id = var. compartment_id
397+ key_id = var. kms_key_id
398+ vault_id = var. kms_vault_id
399+ }
400+ dump_transfer_details {
401+ source {
402+ kind = " OCI_CLI"
403+ oci_home = " ociHome"
404+ wallet_location = " wallet_location"
405+ }
406+ target {
407+ kind = " OCI_CLI"
408+ oci_home = " ociHome"
409+ wallet_location = " wallet_location"
410+ }
411+ }
201412}
202413
203414output "password" {
204415 sensitive = true
205416 value = random_string. autonomous_database_admin_password . result
206- }
417+ }
0 commit comments