pulumi-oci 2.0.0a1719867547__py3-none-any.whl → 2.1.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. pulumi_oci/__init__.py +43 -0
  2. pulumi_oci/database/__init__.py +11 -0
  3. pulumi_oci/database/_inputs.py +607 -0
  4. pulumi_oci/database/db_node.py +28 -0
  5. pulumi_oci/database/exadb_vm_cluster.py +1761 -0
  6. pulumi_oci/database/exascale_db_storage_vault.py +787 -0
  7. pulumi_oci/database/get_backups.py +22 -5
  8. pulumi_oci/database/get_db_node.py +14 -1
  9. pulumi_oci/database/get_db_nodes.py +2 -2
  10. pulumi_oci/database/get_exadb_vm_cluster.py +614 -0
  11. pulumi_oci/database/get_exadb_vm_cluster_update.py +226 -0
  12. pulumi_oci/database/get_exadb_vm_cluster_update_history_entries.py +153 -0
  13. pulumi_oci/database/get_exadb_vm_cluster_update_history_entry.py +226 -0
  14. pulumi_oci/database/get_exadb_vm_cluster_updates.py +173 -0
  15. pulumi_oci/database/get_exadb_vm_clusters.py +196 -0
  16. pulumi_oci/database/get_exascale_db_storage_vault.py +301 -0
  17. pulumi_oci/database/get_exascale_db_storage_vaults.py +176 -0
  18. pulumi_oci/database/get_gi_version_minor_versions.py +221 -0
  19. pulumi_oci/database/get_gi_versions.py +22 -5
  20. pulumi_oci/database/outputs.py +2050 -0
  21. pulumi_oci/database/pluggable_database.py +7 -7
  22. pulumi_oci/databasemigration/__init__.py +6 -0
  23. pulumi_oci/databasemigration/_inputs.py +1577 -0
  24. pulumi_oci/databasemigration/connection.py +2019 -0
  25. pulumi_oci/databasemigration/get_connection.py +616 -0
  26. pulumi_oci/databasemigration/get_connections.py +225 -0
  27. pulumi_oci/databasemigration/get_job_advisor_report.py +2 -10
  28. pulumi_oci/databasemigration/get_migration.py +427 -0
  29. pulumi_oci/databasemigration/get_migration_object_types.py +24 -13
  30. pulumi_oci/databasemigration/get_migrations.py +407 -0
  31. pulumi_oci/databasemigration/job.py +16 -20
  32. pulumi_oci/databasemigration/migration.py +1471 -0
  33. pulumi_oci/databasemigration/outputs.py +4301 -73
  34. pulumi_oci/filestorage/_inputs.py +10 -18
  35. pulumi_oci/filestorage/export.py +28 -7
  36. pulumi_oci/filestorage/file_system.py +159 -35
  37. pulumi_oci/filestorage/outputs.py +55 -34
  38. pulumi_oci/generativeai/_inputs.py +50 -2
  39. pulumi_oci/generativeai/dedicated_ai_cluster.py +30 -2
  40. pulumi_oci/generativeai/endpoint.py +2 -2
  41. pulumi_oci/generativeai/get_dedicated_ai_cluster.py +2 -47
  42. pulumi_oci/generativeai/get_dedicated_ai_clusters.py +2 -14
  43. pulumi_oci/generativeai/get_endpoint.py +2 -26
  44. pulumi_oci/generativeai/get_endpoints.py +2 -8
  45. pulumi_oci/generativeai/get_model.py +2 -38
  46. pulumi_oci/generativeai/get_models.py +2 -8
  47. pulumi_oci/generativeai/model.py +2 -2
  48. pulumi_oci/generativeai/outputs.py +86 -310
  49. pulumi_oci/pulumi-plugin.json +1 -1
  50. pulumi_oci/resourcescheduler/__init__.py +12 -0
  51. pulumi_oci/resourcescheduler/_inputs.py +224 -0
  52. pulumi_oci/resourcescheduler/get_schedule.py +340 -0
  53. pulumi_oci/resourcescheduler/get_schedules.py +193 -0
  54. pulumi_oci/resourcescheduler/outputs.py +687 -0
  55. pulumi_oci/resourcescheduler/schedule.py +977 -0
  56. {pulumi_oci-2.0.0a1719867547.dist-info → pulumi_oci-2.1.0.dist-info}/METADATA +1 -1
  57. {pulumi_oci-2.0.0a1719867547.dist-info → pulumi_oci-2.1.0.dist-info}/RECORD +59 -36
  58. {pulumi_oci-2.0.0a1719867547.dist-info → pulumi_oci-2.1.0.dist-info}/WHEEL +0 -0
  59. {pulumi_oci-2.0.0a1719867547.dist-info → pulumi_oci-2.1.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,2019 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import pulumi
8
+ import pulumi.runtime
9
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
10
+ from .. import _utilities
11
+ from . import outputs
12
+ from ._inputs import *
13
+
14
+ __all__ = ['ConnectionArgs', 'Connection']
15
+
16
+ @pulumi.input_type
17
+ class ConnectionArgs:
18
+ def __init__(__self__, *,
19
+ compartment_id: pulumi.Input[str],
20
+ connection_type: pulumi.Input[str],
21
+ display_name: pulumi.Input[str],
22
+ key_id: pulumi.Input[str],
23
+ password: pulumi.Input[str],
24
+ technology_type: pulumi.Input[str],
25
+ username: pulumi.Input[str],
26
+ vault_id: pulumi.Input[str],
27
+ additional_attributes: Optional[pulumi.Input[Sequence[pulumi.Input['ConnectionAdditionalAttributeArgs']]]] = None,
28
+ connection_string: Optional[pulumi.Input[str]] = None,
29
+ database_id: Optional[pulumi.Input[str]] = None,
30
+ database_name: Optional[pulumi.Input[str]] = None,
31
+ db_system_id: Optional[pulumi.Input[str]] = None,
32
+ defined_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
33
+ description: Optional[pulumi.Input[str]] = None,
34
+ freeform_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
35
+ host: Optional[pulumi.Input[str]] = None,
36
+ nsg_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
37
+ port: Optional[pulumi.Input[int]] = None,
38
+ replication_password: Optional[pulumi.Input[str]] = None,
39
+ replication_username: Optional[pulumi.Input[str]] = None,
40
+ security_protocol: Optional[pulumi.Input[str]] = None,
41
+ ssh_host: Optional[pulumi.Input[str]] = None,
42
+ ssh_key: Optional[pulumi.Input[str]] = None,
43
+ ssh_sudo_location: Optional[pulumi.Input[str]] = None,
44
+ ssh_user: Optional[pulumi.Input[str]] = None,
45
+ ssl_ca: Optional[pulumi.Input[str]] = None,
46
+ ssl_cert: Optional[pulumi.Input[str]] = None,
47
+ ssl_crl: Optional[pulumi.Input[str]] = None,
48
+ ssl_key: Optional[pulumi.Input[str]] = None,
49
+ ssl_mode: Optional[pulumi.Input[str]] = None,
50
+ subnet_id: Optional[pulumi.Input[str]] = None,
51
+ wallet: Optional[pulumi.Input[str]] = None):
52
+ """
53
+ The set of arguments for constructing a Connection resource.
54
+ :param pulumi.Input[str] compartment_id: (Updatable) The OCID of the compartment.
55
+ :param pulumi.Input[str] connection_type: (Updatable) Defines the type of connection. For example, ORACLE.
56
+ :param pulumi.Input[str] display_name: (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
57
+ :param pulumi.Input[str] key_id: (Updatable) The OCID of the key used in cryptographic operations.
58
+ :param pulumi.Input[str] password: (Updatable) The password (credential) used when creating or updating this resource.
59
+ :param pulumi.Input[str] technology_type: The type of MySQL source or target connection. Example: OCI_MYSQL represents Oracle Cloud Infrastructure MySQL HeatWave Database Service
60
+ :param pulumi.Input[str] username: (Updatable) The username (credential) used when creating or updating this resource.
61
+ :param pulumi.Input[str] vault_id: (Updatable) Oracle Cloud Infrastructure resource ID.
62
+ :param pulumi.Input[Sequence[pulumi.Input['ConnectionAdditionalAttributeArgs']]] additional_attributes: (Updatable) An array of name-value pair attribute entries.
63
+ :param pulumi.Input[str] connection_string: (Updatable) Connect descriptor or Easy Connect Naming method used to connect to a database.
64
+ :param pulumi.Input[str] database_id: (Updatable) The OCID of the database being referenced.
65
+ :param pulumi.Input[str] database_name: (Updatable) The name of the database being referenced.
66
+ :param pulumi.Input[str] db_system_id: (Updatable) The OCID of the database system being referenced.
67
+ :param pulumi.Input[Mapping[str, Any]] defined_tags: (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}`
68
+ :param pulumi.Input[str] description: (Updatable) A user-friendly description. Does not have to be unique, and it's changeable. Avoid entering confidential information.
69
+ :param pulumi.Input[Mapping[str, Any]] freeform_tags: (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}
70
+ :param pulumi.Input[str] host: (Updatable) The IP Address of the host.
71
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] nsg_ids: (Updatable) An array of Network Security Group OCIDs used to define network access for Connections.
72
+ :param pulumi.Input[int] port: (Updatable) The port to be used for the connection.
73
+ :param pulumi.Input[str] replication_password: (Updatable) The password (credential) used when creating or updating this resource.
74
+ :param pulumi.Input[str] replication_username: (Updatable) The username (credential) used when creating or updating this resource.
75
+ :param pulumi.Input[str] security_protocol: (Updatable) Security Type for MySQL.
76
+ :param pulumi.Input[str] ssh_host: (Updatable) Name of the host the SSH key is valid for.
77
+ :param pulumi.Input[str] ssh_key: (Updatable) Private SSH key string.
78
+ :param pulumi.Input[str] ssh_sudo_location: (Updatable) Sudo location
79
+ :param pulumi.Input[str] ssh_user: (Updatable) The username (credential) used when creating or updating this resource.
80
+ :param pulumi.Input[str] ssl_ca: (Updatable) Database Certificate - The base64 encoded content of mysql.pem file containing the server public key (for 1 and 2-way SSL).
81
+ :param pulumi.Input[str] ssl_cert: (Updatable) Client Certificate - The base64 encoded content of client-cert.pem file containing the client public key (for 2-way SSL).
82
+ :param pulumi.Input[str] ssl_crl: (Updatable) Certificates revoked by certificate authorities (CA). Server certificate must not be on this list (for 1 and 2-way SSL). Note: This is an optional and that too only applicable if TLS/MTLS option is selected.
83
+ :param pulumi.Input[str] ssl_key: (Updatable) Client Key - The client-key.pem containing the client private key (for 2-way SSL).
84
+ :param pulumi.Input[str] ssl_mode: (Updatable) SSL modes for MySQL.
85
+ :param pulumi.Input[str] subnet_id: (Updatable) Oracle Cloud Infrastructure resource ID.
86
+ :param pulumi.Input[str] wallet: (Updatable) The wallet contents used to make connections to a database. This attribute is expected to be base64 encoded.
87
+
88
+
89
+ ** IMPORTANT **
90
+ Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
91
+ """
92
+ pulumi.set(__self__, "compartment_id", compartment_id)
93
+ pulumi.set(__self__, "connection_type", connection_type)
94
+ pulumi.set(__self__, "display_name", display_name)
95
+ pulumi.set(__self__, "key_id", key_id)
96
+ pulumi.set(__self__, "password", password)
97
+ pulumi.set(__self__, "technology_type", technology_type)
98
+ pulumi.set(__self__, "username", username)
99
+ pulumi.set(__self__, "vault_id", vault_id)
100
+ if additional_attributes is not None:
101
+ pulumi.set(__self__, "additional_attributes", additional_attributes)
102
+ if connection_string is not None:
103
+ pulumi.set(__self__, "connection_string", connection_string)
104
+ if database_id is not None:
105
+ pulumi.set(__self__, "database_id", database_id)
106
+ if database_name is not None:
107
+ pulumi.set(__self__, "database_name", database_name)
108
+ if db_system_id is not None:
109
+ pulumi.set(__self__, "db_system_id", db_system_id)
110
+ if defined_tags is not None:
111
+ pulumi.set(__self__, "defined_tags", defined_tags)
112
+ if description is not None:
113
+ pulumi.set(__self__, "description", description)
114
+ if freeform_tags is not None:
115
+ pulumi.set(__self__, "freeform_tags", freeform_tags)
116
+ if host is not None:
117
+ pulumi.set(__self__, "host", host)
118
+ if nsg_ids is not None:
119
+ pulumi.set(__self__, "nsg_ids", nsg_ids)
120
+ if port is not None:
121
+ pulumi.set(__self__, "port", port)
122
+ if replication_password is not None:
123
+ pulumi.set(__self__, "replication_password", replication_password)
124
+ if replication_username is not None:
125
+ pulumi.set(__self__, "replication_username", replication_username)
126
+ if security_protocol is not None:
127
+ pulumi.set(__self__, "security_protocol", security_protocol)
128
+ if ssh_host is not None:
129
+ pulumi.set(__self__, "ssh_host", ssh_host)
130
+ if ssh_key is not None:
131
+ pulumi.set(__self__, "ssh_key", ssh_key)
132
+ if ssh_sudo_location is not None:
133
+ pulumi.set(__self__, "ssh_sudo_location", ssh_sudo_location)
134
+ if ssh_user is not None:
135
+ pulumi.set(__self__, "ssh_user", ssh_user)
136
+ if ssl_ca is not None:
137
+ pulumi.set(__self__, "ssl_ca", ssl_ca)
138
+ if ssl_cert is not None:
139
+ pulumi.set(__self__, "ssl_cert", ssl_cert)
140
+ if ssl_crl is not None:
141
+ pulumi.set(__self__, "ssl_crl", ssl_crl)
142
+ if ssl_key is not None:
143
+ pulumi.set(__self__, "ssl_key", ssl_key)
144
+ if ssl_mode is not None:
145
+ pulumi.set(__self__, "ssl_mode", ssl_mode)
146
+ if subnet_id is not None:
147
+ pulumi.set(__self__, "subnet_id", subnet_id)
148
+ if wallet is not None:
149
+ pulumi.set(__self__, "wallet", wallet)
150
+
151
+ @property
152
+ @pulumi.getter(name="compartmentId")
153
+ def compartment_id(self) -> pulumi.Input[str]:
154
+ """
155
+ (Updatable) The OCID of the compartment.
156
+ """
157
+ return pulumi.get(self, "compartment_id")
158
+
159
+ @compartment_id.setter
160
+ def compartment_id(self, value: pulumi.Input[str]):
161
+ pulumi.set(self, "compartment_id", value)
162
+
163
+ @property
164
+ @pulumi.getter(name="connectionType")
165
+ def connection_type(self) -> pulumi.Input[str]:
166
+ """
167
+ (Updatable) Defines the type of connection. For example, ORACLE.
168
+ """
169
+ return pulumi.get(self, "connection_type")
170
+
171
+ @connection_type.setter
172
+ def connection_type(self, value: pulumi.Input[str]):
173
+ pulumi.set(self, "connection_type", value)
174
+
175
+ @property
176
+ @pulumi.getter(name="displayName")
177
+ def display_name(self) -> pulumi.Input[str]:
178
+ """
179
+ (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
180
+ """
181
+ return pulumi.get(self, "display_name")
182
+
183
+ @display_name.setter
184
+ def display_name(self, value: pulumi.Input[str]):
185
+ pulumi.set(self, "display_name", value)
186
+
187
+ @property
188
+ @pulumi.getter(name="keyId")
189
+ def key_id(self) -> pulumi.Input[str]:
190
+ """
191
+ (Updatable) The OCID of the key used in cryptographic operations.
192
+ """
193
+ return pulumi.get(self, "key_id")
194
+
195
+ @key_id.setter
196
+ def key_id(self, value: pulumi.Input[str]):
197
+ pulumi.set(self, "key_id", value)
198
+
199
+ @property
200
+ @pulumi.getter
201
+ def password(self) -> pulumi.Input[str]:
202
+ """
203
+ (Updatable) The password (credential) used when creating or updating this resource.
204
+ """
205
+ return pulumi.get(self, "password")
206
+
207
+ @password.setter
208
+ def password(self, value: pulumi.Input[str]):
209
+ pulumi.set(self, "password", value)
210
+
211
+ @property
212
+ @pulumi.getter(name="technologyType")
213
+ def technology_type(self) -> pulumi.Input[str]:
214
+ """
215
+ The type of MySQL source or target connection. Example: OCI_MYSQL represents Oracle Cloud Infrastructure MySQL HeatWave Database Service
216
+ """
217
+ return pulumi.get(self, "technology_type")
218
+
219
+ @technology_type.setter
220
+ def technology_type(self, value: pulumi.Input[str]):
221
+ pulumi.set(self, "technology_type", value)
222
+
223
+ @property
224
+ @pulumi.getter
225
+ def username(self) -> pulumi.Input[str]:
226
+ """
227
+ (Updatable) The username (credential) used when creating or updating this resource.
228
+ """
229
+ return pulumi.get(self, "username")
230
+
231
+ @username.setter
232
+ def username(self, value: pulumi.Input[str]):
233
+ pulumi.set(self, "username", value)
234
+
235
+ @property
236
+ @pulumi.getter(name="vaultId")
237
+ def vault_id(self) -> pulumi.Input[str]:
238
+ """
239
+ (Updatable) Oracle Cloud Infrastructure resource ID.
240
+ """
241
+ return pulumi.get(self, "vault_id")
242
+
243
+ @vault_id.setter
244
+ def vault_id(self, value: pulumi.Input[str]):
245
+ pulumi.set(self, "vault_id", value)
246
+
247
+ @property
248
+ @pulumi.getter(name="additionalAttributes")
249
+ def additional_attributes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ConnectionAdditionalAttributeArgs']]]]:
250
+ """
251
+ (Updatable) An array of name-value pair attribute entries.
252
+ """
253
+ return pulumi.get(self, "additional_attributes")
254
+
255
+ @additional_attributes.setter
256
+ def additional_attributes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ConnectionAdditionalAttributeArgs']]]]):
257
+ pulumi.set(self, "additional_attributes", value)
258
+
259
+ @property
260
+ @pulumi.getter(name="connectionString")
261
+ def connection_string(self) -> Optional[pulumi.Input[str]]:
262
+ """
263
+ (Updatable) Connect descriptor or Easy Connect Naming method used to connect to a database.
264
+ """
265
+ return pulumi.get(self, "connection_string")
266
+
267
+ @connection_string.setter
268
+ def connection_string(self, value: Optional[pulumi.Input[str]]):
269
+ pulumi.set(self, "connection_string", value)
270
+
271
+ @property
272
+ @pulumi.getter(name="databaseId")
273
+ def database_id(self) -> Optional[pulumi.Input[str]]:
274
+ """
275
+ (Updatable) The OCID of the database being referenced.
276
+ """
277
+ return pulumi.get(self, "database_id")
278
+
279
+ @database_id.setter
280
+ def database_id(self, value: Optional[pulumi.Input[str]]):
281
+ pulumi.set(self, "database_id", value)
282
+
283
+ @property
284
+ @pulumi.getter(name="databaseName")
285
+ def database_name(self) -> Optional[pulumi.Input[str]]:
286
+ """
287
+ (Updatable) The name of the database being referenced.
288
+ """
289
+ return pulumi.get(self, "database_name")
290
+
291
+ @database_name.setter
292
+ def database_name(self, value: Optional[pulumi.Input[str]]):
293
+ pulumi.set(self, "database_name", value)
294
+
295
+ @property
296
+ @pulumi.getter(name="dbSystemId")
297
+ def db_system_id(self) -> Optional[pulumi.Input[str]]:
298
+ """
299
+ (Updatable) The OCID of the database system being referenced.
300
+ """
301
+ return pulumi.get(self, "db_system_id")
302
+
303
+ @db_system_id.setter
304
+ def db_system_id(self, value: Optional[pulumi.Input[str]]):
305
+ pulumi.set(self, "db_system_id", value)
306
+
307
+ @property
308
+ @pulumi.getter(name="definedTags")
309
+ def defined_tags(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
310
+ """
311
+ (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}`
312
+ """
313
+ return pulumi.get(self, "defined_tags")
314
+
315
+ @defined_tags.setter
316
+ def defined_tags(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
317
+ pulumi.set(self, "defined_tags", value)
318
+
319
+ @property
320
+ @pulumi.getter
321
+ def description(self) -> Optional[pulumi.Input[str]]:
322
+ """
323
+ (Updatable) A user-friendly description. Does not have to be unique, and it's changeable. Avoid entering confidential information.
324
+ """
325
+ return pulumi.get(self, "description")
326
+
327
+ @description.setter
328
+ def description(self, value: Optional[pulumi.Input[str]]):
329
+ pulumi.set(self, "description", value)
330
+
331
+ @property
332
+ @pulumi.getter(name="freeformTags")
333
+ def freeform_tags(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
334
+ """
335
+ (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}
336
+ """
337
+ return pulumi.get(self, "freeform_tags")
338
+
339
+ @freeform_tags.setter
340
+ def freeform_tags(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
341
+ pulumi.set(self, "freeform_tags", value)
342
+
343
+ @property
344
+ @pulumi.getter
345
+ def host(self) -> Optional[pulumi.Input[str]]:
346
+ """
347
+ (Updatable) The IP Address of the host.
348
+ """
349
+ return pulumi.get(self, "host")
350
+
351
+ @host.setter
352
+ def host(self, value: Optional[pulumi.Input[str]]):
353
+ pulumi.set(self, "host", value)
354
+
355
+ @property
356
+ @pulumi.getter(name="nsgIds")
357
+ def nsg_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
358
+ """
359
+ (Updatable) An array of Network Security Group OCIDs used to define network access for Connections.
360
+ """
361
+ return pulumi.get(self, "nsg_ids")
362
+
363
+ @nsg_ids.setter
364
+ def nsg_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
365
+ pulumi.set(self, "nsg_ids", value)
366
+
367
+ @property
368
+ @pulumi.getter
369
+ def port(self) -> Optional[pulumi.Input[int]]:
370
+ """
371
+ (Updatable) The port to be used for the connection.
372
+ """
373
+ return pulumi.get(self, "port")
374
+
375
+ @port.setter
376
+ def port(self, value: Optional[pulumi.Input[int]]):
377
+ pulumi.set(self, "port", value)
378
+
379
+ @property
380
+ @pulumi.getter(name="replicationPassword")
381
+ def replication_password(self) -> Optional[pulumi.Input[str]]:
382
+ """
383
+ (Updatable) The password (credential) used when creating or updating this resource.
384
+ """
385
+ return pulumi.get(self, "replication_password")
386
+
387
+ @replication_password.setter
388
+ def replication_password(self, value: Optional[pulumi.Input[str]]):
389
+ pulumi.set(self, "replication_password", value)
390
+
391
+ @property
392
+ @pulumi.getter(name="replicationUsername")
393
+ def replication_username(self) -> Optional[pulumi.Input[str]]:
394
+ """
395
+ (Updatable) The username (credential) used when creating or updating this resource.
396
+ """
397
+ return pulumi.get(self, "replication_username")
398
+
399
+ @replication_username.setter
400
+ def replication_username(self, value: Optional[pulumi.Input[str]]):
401
+ pulumi.set(self, "replication_username", value)
402
+
403
+ @property
404
+ @pulumi.getter(name="securityProtocol")
405
+ def security_protocol(self) -> Optional[pulumi.Input[str]]:
406
+ """
407
+ (Updatable) Security Type for MySQL.
408
+ """
409
+ return pulumi.get(self, "security_protocol")
410
+
411
+ @security_protocol.setter
412
+ def security_protocol(self, value: Optional[pulumi.Input[str]]):
413
+ pulumi.set(self, "security_protocol", value)
414
+
415
+ @property
416
+ @pulumi.getter(name="sshHost")
417
+ def ssh_host(self) -> Optional[pulumi.Input[str]]:
418
+ """
419
+ (Updatable) Name of the host the SSH key is valid for.
420
+ """
421
+ return pulumi.get(self, "ssh_host")
422
+
423
+ @ssh_host.setter
424
+ def ssh_host(self, value: Optional[pulumi.Input[str]]):
425
+ pulumi.set(self, "ssh_host", value)
426
+
427
+ @property
428
+ @pulumi.getter(name="sshKey")
429
+ def ssh_key(self) -> Optional[pulumi.Input[str]]:
430
+ """
431
+ (Updatable) Private SSH key string.
432
+ """
433
+ return pulumi.get(self, "ssh_key")
434
+
435
+ @ssh_key.setter
436
+ def ssh_key(self, value: Optional[pulumi.Input[str]]):
437
+ pulumi.set(self, "ssh_key", value)
438
+
439
+ @property
440
+ @pulumi.getter(name="sshSudoLocation")
441
+ def ssh_sudo_location(self) -> Optional[pulumi.Input[str]]:
442
+ """
443
+ (Updatable) Sudo location
444
+ """
445
+ return pulumi.get(self, "ssh_sudo_location")
446
+
447
+ @ssh_sudo_location.setter
448
+ def ssh_sudo_location(self, value: Optional[pulumi.Input[str]]):
449
+ pulumi.set(self, "ssh_sudo_location", value)
450
+
451
+ @property
452
+ @pulumi.getter(name="sshUser")
453
+ def ssh_user(self) -> Optional[pulumi.Input[str]]:
454
+ """
455
+ (Updatable) The username (credential) used when creating or updating this resource.
456
+ """
457
+ return pulumi.get(self, "ssh_user")
458
+
459
+ @ssh_user.setter
460
+ def ssh_user(self, value: Optional[pulumi.Input[str]]):
461
+ pulumi.set(self, "ssh_user", value)
462
+
463
+ @property
464
+ @pulumi.getter(name="sslCa")
465
+ def ssl_ca(self) -> Optional[pulumi.Input[str]]:
466
+ """
467
+ (Updatable) Database Certificate - The base64 encoded content of mysql.pem file containing the server public key (for 1 and 2-way SSL).
468
+ """
469
+ return pulumi.get(self, "ssl_ca")
470
+
471
+ @ssl_ca.setter
472
+ def ssl_ca(self, value: Optional[pulumi.Input[str]]):
473
+ pulumi.set(self, "ssl_ca", value)
474
+
475
+ @property
476
+ @pulumi.getter(name="sslCert")
477
+ def ssl_cert(self) -> Optional[pulumi.Input[str]]:
478
+ """
479
+ (Updatable) Client Certificate - The base64 encoded content of client-cert.pem file containing the client public key (for 2-way SSL).
480
+ """
481
+ return pulumi.get(self, "ssl_cert")
482
+
483
+ @ssl_cert.setter
484
+ def ssl_cert(self, value: Optional[pulumi.Input[str]]):
485
+ pulumi.set(self, "ssl_cert", value)
486
+
487
+ @property
488
+ @pulumi.getter(name="sslCrl")
489
+ def ssl_crl(self) -> Optional[pulumi.Input[str]]:
490
+ """
491
+ (Updatable) Certificates revoked by certificate authorities (CA). Server certificate must not be on this list (for 1 and 2-way SSL). Note: This is an optional and that too only applicable if TLS/MTLS option is selected.
492
+ """
493
+ return pulumi.get(self, "ssl_crl")
494
+
495
+ @ssl_crl.setter
496
+ def ssl_crl(self, value: Optional[pulumi.Input[str]]):
497
+ pulumi.set(self, "ssl_crl", value)
498
+
499
+ @property
500
+ @pulumi.getter(name="sslKey")
501
+ def ssl_key(self) -> Optional[pulumi.Input[str]]:
502
+ """
503
+ (Updatable) Client Key - The client-key.pem containing the client private key (for 2-way SSL).
504
+ """
505
+ return pulumi.get(self, "ssl_key")
506
+
507
+ @ssl_key.setter
508
+ def ssl_key(self, value: Optional[pulumi.Input[str]]):
509
+ pulumi.set(self, "ssl_key", value)
510
+
511
+ @property
512
+ @pulumi.getter(name="sslMode")
513
+ def ssl_mode(self) -> Optional[pulumi.Input[str]]:
514
+ """
515
+ (Updatable) SSL modes for MySQL.
516
+ """
517
+ return pulumi.get(self, "ssl_mode")
518
+
519
+ @ssl_mode.setter
520
+ def ssl_mode(self, value: Optional[pulumi.Input[str]]):
521
+ pulumi.set(self, "ssl_mode", value)
522
+
523
+ @property
524
+ @pulumi.getter(name="subnetId")
525
+ def subnet_id(self) -> Optional[pulumi.Input[str]]:
526
+ """
527
+ (Updatable) Oracle Cloud Infrastructure resource ID.
528
+ """
529
+ return pulumi.get(self, "subnet_id")
530
+
531
+ @subnet_id.setter
532
+ def subnet_id(self, value: Optional[pulumi.Input[str]]):
533
+ pulumi.set(self, "subnet_id", value)
534
+
535
+ @property
536
+ @pulumi.getter
537
+ def wallet(self) -> Optional[pulumi.Input[str]]:
538
+ """
539
+ (Updatable) The wallet contents used to make connections to a database. This attribute is expected to be base64 encoded.
540
+
541
+
542
+ ** IMPORTANT **
543
+ Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
544
+ """
545
+ return pulumi.get(self, "wallet")
546
+
547
+ @wallet.setter
548
+ def wallet(self, value: Optional[pulumi.Input[str]]):
549
+ pulumi.set(self, "wallet", value)
550
+
551
+
552
+ @pulumi.input_type
553
+ class _ConnectionState:
554
+ def __init__(__self__, *,
555
+ additional_attributes: Optional[pulumi.Input[Sequence[pulumi.Input['ConnectionAdditionalAttributeArgs']]]] = None,
556
+ compartment_id: Optional[pulumi.Input[str]] = None,
557
+ connection_string: Optional[pulumi.Input[str]] = None,
558
+ connection_type: Optional[pulumi.Input[str]] = None,
559
+ database_id: Optional[pulumi.Input[str]] = None,
560
+ database_name: Optional[pulumi.Input[str]] = None,
561
+ db_system_id: Optional[pulumi.Input[str]] = None,
562
+ defined_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
563
+ description: Optional[pulumi.Input[str]] = None,
564
+ display_name: Optional[pulumi.Input[str]] = None,
565
+ freeform_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
566
+ host: Optional[pulumi.Input[str]] = None,
567
+ ingress_ips: Optional[pulumi.Input[Sequence[pulumi.Input['ConnectionIngressIpArgs']]]] = None,
568
+ key_id: Optional[pulumi.Input[str]] = None,
569
+ lifecycle_details: Optional[pulumi.Input[str]] = None,
570
+ nsg_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
571
+ password: Optional[pulumi.Input[str]] = None,
572
+ port: Optional[pulumi.Input[int]] = None,
573
+ private_endpoint_id: Optional[pulumi.Input[str]] = None,
574
+ replication_password: Optional[pulumi.Input[str]] = None,
575
+ replication_username: Optional[pulumi.Input[str]] = None,
576
+ secret_id: Optional[pulumi.Input[str]] = None,
577
+ security_protocol: Optional[pulumi.Input[str]] = None,
578
+ ssh_host: Optional[pulumi.Input[str]] = None,
579
+ ssh_key: Optional[pulumi.Input[str]] = None,
580
+ ssh_sudo_location: Optional[pulumi.Input[str]] = None,
581
+ ssh_user: Optional[pulumi.Input[str]] = None,
582
+ ssl_ca: Optional[pulumi.Input[str]] = None,
583
+ ssl_cert: Optional[pulumi.Input[str]] = None,
584
+ ssl_crl: Optional[pulumi.Input[str]] = None,
585
+ ssl_key: Optional[pulumi.Input[str]] = None,
586
+ ssl_mode: Optional[pulumi.Input[str]] = None,
587
+ state: Optional[pulumi.Input[str]] = None,
588
+ subnet_id: Optional[pulumi.Input[str]] = None,
589
+ system_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
590
+ technology_type: Optional[pulumi.Input[str]] = None,
591
+ time_created: Optional[pulumi.Input[str]] = None,
592
+ time_updated: Optional[pulumi.Input[str]] = None,
593
+ username: Optional[pulumi.Input[str]] = None,
594
+ vault_id: Optional[pulumi.Input[str]] = None,
595
+ wallet: Optional[pulumi.Input[str]] = None):
596
+ """
597
+ Input properties used for looking up and filtering Connection resources.
598
+ :param pulumi.Input[Sequence[pulumi.Input['ConnectionAdditionalAttributeArgs']]] additional_attributes: (Updatable) An array of name-value pair attribute entries.
599
+ :param pulumi.Input[str] compartment_id: (Updatable) The OCID of the compartment.
600
+ :param pulumi.Input[str] connection_string: (Updatable) Connect descriptor or Easy Connect Naming method used to connect to a database.
601
+ :param pulumi.Input[str] connection_type: (Updatable) Defines the type of connection. For example, ORACLE.
602
+ :param pulumi.Input[str] database_id: (Updatable) The OCID of the database being referenced.
603
+ :param pulumi.Input[str] database_name: (Updatable) The name of the database being referenced.
604
+ :param pulumi.Input[str] db_system_id: (Updatable) The OCID of the database system being referenced.
605
+ :param pulumi.Input[Mapping[str, Any]] defined_tags: (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}`
606
+ :param pulumi.Input[str] description: (Updatable) A user-friendly description. Does not have to be unique, and it's changeable. Avoid entering confidential information.
607
+ :param pulumi.Input[str] display_name: (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
608
+ :param pulumi.Input[Mapping[str, Any]] freeform_tags: (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}
609
+ :param pulumi.Input[str] host: (Updatable) The IP Address of the host.
610
+ :param pulumi.Input[Sequence[pulumi.Input['ConnectionIngressIpArgs']]] ingress_ips: List of ingress IP addresses from where to connect to this connection's privateIp.
611
+ :param pulumi.Input[str] key_id: (Updatable) The OCID of the key used in cryptographic operations.
612
+ :param pulumi.Input[str] lifecycle_details: The message describing the current state of the connection's lifecycle in detail. For example, can be used to provide actionable information for a connection in a Failed state.
613
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] nsg_ids: (Updatable) An array of Network Security Group OCIDs used to define network access for Connections.
614
+ :param pulumi.Input[str] password: (Updatable) The password (credential) used when creating or updating this resource.
615
+ :param pulumi.Input[int] port: (Updatable) The port to be used for the connection.
616
+ :param pulumi.Input[str] private_endpoint_id: The OCID of the resource being referenced.
617
+ :param pulumi.Input[str] replication_password: (Updatable) The password (credential) used when creating or updating this resource.
618
+ :param pulumi.Input[str] replication_username: (Updatable) The username (credential) used when creating or updating this resource.
619
+ :param pulumi.Input[str] secret_id: The OCID of the resource being referenced.
620
+ :param pulumi.Input[str] security_protocol: (Updatable) Security Type for MySQL.
621
+ :param pulumi.Input[str] ssh_host: (Updatable) Name of the host the SSH key is valid for.
622
+ :param pulumi.Input[str] ssh_key: (Updatable) Private SSH key string.
623
+ :param pulumi.Input[str] ssh_sudo_location: (Updatable) Sudo location
624
+ :param pulumi.Input[str] ssh_user: (Updatable) The username (credential) used when creating or updating this resource.
625
+ :param pulumi.Input[str] ssl_ca: (Updatable) Database Certificate - The base64 encoded content of mysql.pem file containing the server public key (for 1 and 2-way SSL).
626
+ :param pulumi.Input[str] ssl_cert: (Updatable) Client Certificate - The base64 encoded content of client-cert.pem file containing the client public key (for 2-way SSL).
627
+ :param pulumi.Input[str] ssl_crl: (Updatable) Certificates revoked by certificate authorities (CA). Server certificate must not be on this list (for 1 and 2-way SSL). Note: This is an optional and that too only applicable if TLS/MTLS option is selected.
628
+ :param pulumi.Input[str] ssl_key: (Updatable) Client Key - The client-key.pem containing the client private key (for 2-way SSL).
629
+ :param pulumi.Input[str] ssl_mode: (Updatable) SSL modes for MySQL.
630
+ :param pulumi.Input[str] state: The Connection's current lifecycle state.
631
+ :param pulumi.Input[str] subnet_id: (Updatable) Oracle Cloud Infrastructure resource ID.
632
+ :param pulumi.Input[Mapping[str, Any]] system_tags: Usage of system tag keys. These predefined keys are scoped to namespaces. Example: `{"orcl-cloud.free-tier-retained": "true"}`
633
+ :param pulumi.Input[str] technology_type: The type of MySQL source or target connection. Example: OCI_MYSQL represents Oracle Cloud Infrastructure MySQL HeatWave Database Service
634
+ :param pulumi.Input[str] time_created: The time when this resource was created. An RFC3339 formatted datetime string such as `2016-08-25T21:10:29.600Z`.
635
+ :param pulumi.Input[str] time_updated: The time when this resource was updated. An RFC3339 formatted datetime string such as `2016-08-25T21:10:29.600Z`.
636
+ :param pulumi.Input[str] username: (Updatable) The username (credential) used when creating or updating this resource.
637
+ :param pulumi.Input[str] vault_id: (Updatable) Oracle Cloud Infrastructure resource ID.
638
+ :param pulumi.Input[str] wallet: (Updatable) The wallet contents used to make connections to a database. This attribute is expected to be base64 encoded.
639
+
640
+
641
+ ** IMPORTANT **
642
+ Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
643
+ """
644
+ if additional_attributes is not None:
645
+ pulumi.set(__self__, "additional_attributes", additional_attributes)
646
+ if compartment_id is not None:
647
+ pulumi.set(__self__, "compartment_id", compartment_id)
648
+ if connection_string is not None:
649
+ pulumi.set(__self__, "connection_string", connection_string)
650
+ if connection_type is not None:
651
+ pulumi.set(__self__, "connection_type", connection_type)
652
+ if database_id is not None:
653
+ pulumi.set(__self__, "database_id", database_id)
654
+ if database_name is not None:
655
+ pulumi.set(__self__, "database_name", database_name)
656
+ if db_system_id is not None:
657
+ pulumi.set(__self__, "db_system_id", db_system_id)
658
+ if defined_tags is not None:
659
+ pulumi.set(__self__, "defined_tags", defined_tags)
660
+ if description is not None:
661
+ pulumi.set(__self__, "description", description)
662
+ if display_name is not None:
663
+ pulumi.set(__self__, "display_name", display_name)
664
+ if freeform_tags is not None:
665
+ pulumi.set(__self__, "freeform_tags", freeform_tags)
666
+ if host is not None:
667
+ pulumi.set(__self__, "host", host)
668
+ if ingress_ips is not None:
669
+ pulumi.set(__self__, "ingress_ips", ingress_ips)
670
+ if key_id is not None:
671
+ pulumi.set(__self__, "key_id", key_id)
672
+ if lifecycle_details is not None:
673
+ pulumi.set(__self__, "lifecycle_details", lifecycle_details)
674
+ if nsg_ids is not None:
675
+ pulumi.set(__self__, "nsg_ids", nsg_ids)
676
+ if password is not None:
677
+ pulumi.set(__self__, "password", password)
678
+ if port is not None:
679
+ pulumi.set(__self__, "port", port)
680
+ if private_endpoint_id is not None:
681
+ pulumi.set(__self__, "private_endpoint_id", private_endpoint_id)
682
+ if replication_password is not None:
683
+ pulumi.set(__self__, "replication_password", replication_password)
684
+ if replication_username is not None:
685
+ pulumi.set(__self__, "replication_username", replication_username)
686
+ if secret_id is not None:
687
+ pulumi.set(__self__, "secret_id", secret_id)
688
+ if security_protocol is not None:
689
+ pulumi.set(__self__, "security_protocol", security_protocol)
690
+ if ssh_host is not None:
691
+ pulumi.set(__self__, "ssh_host", ssh_host)
692
+ if ssh_key is not None:
693
+ pulumi.set(__self__, "ssh_key", ssh_key)
694
+ if ssh_sudo_location is not None:
695
+ pulumi.set(__self__, "ssh_sudo_location", ssh_sudo_location)
696
+ if ssh_user is not None:
697
+ pulumi.set(__self__, "ssh_user", ssh_user)
698
+ if ssl_ca is not None:
699
+ pulumi.set(__self__, "ssl_ca", ssl_ca)
700
+ if ssl_cert is not None:
701
+ pulumi.set(__self__, "ssl_cert", ssl_cert)
702
+ if ssl_crl is not None:
703
+ pulumi.set(__self__, "ssl_crl", ssl_crl)
704
+ if ssl_key is not None:
705
+ pulumi.set(__self__, "ssl_key", ssl_key)
706
+ if ssl_mode is not None:
707
+ pulumi.set(__self__, "ssl_mode", ssl_mode)
708
+ if state is not None:
709
+ pulumi.set(__self__, "state", state)
710
+ if subnet_id is not None:
711
+ pulumi.set(__self__, "subnet_id", subnet_id)
712
+ if system_tags is not None:
713
+ pulumi.set(__self__, "system_tags", system_tags)
714
+ if technology_type is not None:
715
+ pulumi.set(__self__, "technology_type", technology_type)
716
+ if time_created is not None:
717
+ pulumi.set(__self__, "time_created", time_created)
718
+ if time_updated is not None:
719
+ pulumi.set(__self__, "time_updated", time_updated)
720
+ if username is not None:
721
+ pulumi.set(__self__, "username", username)
722
+ if vault_id is not None:
723
+ pulumi.set(__self__, "vault_id", vault_id)
724
+ if wallet is not None:
725
+ pulumi.set(__self__, "wallet", wallet)
726
+
727
+ @property
728
+ @pulumi.getter(name="additionalAttributes")
729
+ def additional_attributes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ConnectionAdditionalAttributeArgs']]]]:
730
+ """
731
+ (Updatable) An array of name-value pair attribute entries.
732
+ """
733
+ return pulumi.get(self, "additional_attributes")
734
+
735
+ @additional_attributes.setter
736
+ def additional_attributes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ConnectionAdditionalAttributeArgs']]]]):
737
+ pulumi.set(self, "additional_attributes", value)
738
+
739
+ @property
740
+ @pulumi.getter(name="compartmentId")
741
+ def compartment_id(self) -> Optional[pulumi.Input[str]]:
742
+ """
743
+ (Updatable) The OCID of the compartment.
744
+ """
745
+ return pulumi.get(self, "compartment_id")
746
+
747
+ @compartment_id.setter
748
+ def compartment_id(self, value: Optional[pulumi.Input[str]]):
749
+ pulumi.set(self, "compartment_id", value)
750
+
751
+ @property
752
+ @pulumi.getter(name="connectionString")
753
+ def connection_string(self) -> Optional[pulumi.Input[str]]:
754
+ """
755
+ (Updatable) Connect descriptor or Easy Connect Naming method used to connect to a database.
756
+ """
757
+ return pulumi.get(self, "connection_string")
758
+
759
+ @connection_string.setter
760
+ def connection_string(self, value: Optional[pulumi.Input[str]]):
761
+ pulumi.set(self, "connection_string", value)
762
+
763
+ @property
764
+ @pulumi.getter(name="connectionType")
765
+ def connection_type(self) -> Optional[pulumi.Input[str]]:
766
+ """
767
+ (Updatable) Defines the type of connection. For example, ORACLE.
768
+ """
769
+ return pulumi.get(self, "connection_type")
770
+
771
+ @connection_type.setter
772
+ def connection_type(self, value: Optional[pulumi.Input[str]]):
773
+ pulumi.set(self, "connection_type", value)
774
+
775
+ @property
776
+ @pulumi.getter(name="databaseId")
777
+ def database_id(self) -> Optional[pulumi.Input[str]]:
778
+ """
779
+ (Updatable) The OCID of the database being referenced.
780
+ """
781
+ return pulumi.get(self, "database_id")
782
+
783
+ @database_id.setter
784
+ def database_id(self, value: Optional[pulumi.Input[str]]):
785
+ pulumi.set(self, "database_id", value)
786
+
787
+ @property
788
+ @pulumi.getter(name="databaseName")
789
+ def database_name(self) -> Optional[pulumi.Input[str]]:
790
+ """
791
+ (Updatable) The name of the database being referenced.
792
+ """
793
+ return pulumi.get(self, "database_name")
794
+
795
+ @database_name.setter
796
+ def database_name(self, value: Optional[pulumi.Input[str]]):
797
+ pulumi.set(self, "database_name", value)
798
+
799
+ @property
800
+ @pulumi.getter(name="dbSystemId")
801
+ def db_system_id(self) -> Optional[pulumi.Input[str]]:
802
+ """
803
+ (Updatable) The OCID of the database system being referenced.
804
+ """
805
+ return pulumi.get(self, "db_system_id")
806
+
807
+ @db_system_id.setter
808
+ def db_system_id(self, value: Optional[pulumi.Input[str]]):
809
+ pulumi.set(self, "db_system_id", value)
810
+
811
+ @property
812
+ @pulumi.getter(name="definedTags")
813
+ def defined_tags(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
814
+ """
815
+ (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}`
816
+ """
817
+ return pulumi.get(self, "defined_tags")
818
+
819
+ @defined_tags.setter
820
+ def defined_tags(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
821
+ pulumi.set(self, "defined_tags", value)
822
+
823
+ @property
824
+ @pulumi.getter
825
+ def description(self) -> Optional[pulumi.Input[str]]:
826
+ """
827
+ (Updatable) A user-friendly description. Does not have to be unique, and it's changeable. Avoid entering confidential information.
828
+ """
829
+ return pulumi.get(self, "description")
830
+
831
+ @description.setter
832
+ def description(self, value: Optional[pulumi.Input[str]]):
833
+ pulumi.set(self, "description", value)
834
+
835
+ @property
836
+ @pulumi.getter(name="displayName")
837
+ def display_name(self) -> Optional[pulumi.Input[str]]:
838
+ """
839
+ (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
840
+ """
841
+ return pulumi.get(self, "display_name")
842
+
843
+ @display_name.setter
844
+ def display_name(self, value: Optional[pulumi.Input[str]]):
845
+ pulumi.set(self, "display_name", value)
846
+
847
+ @property
848
+ @pulumi.getter(name="freeformTags")
849
+ def freeform_tags(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
850
+ """
851
+ (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}
852
+ """
853
+ return pulumi.get(self, "freeform_tags")
854
+
855
+ @freeform_tags.setter
856
+ def freeform_tags(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
857
+ pulumi.set(self, "freeform_tags", value)
858
+
859
+ @property
860
+ @pulumi.getter
861
+ def host(self) -> Optional[pulumi.Input[str]]:
862
+ """
863
+ (Updatable) The IP Address of the host.
864
+ """
865
+ return pulumi.get(self, "host")
866
+
867
+ @host.setter
868
+ def host(self, value: Optional[pulumi.Input[str]]):
869
+ pulumi.set(self, "host", value)
870
+
871
+ @property
872
+ @pulumi.getter(name="ingressIps")
873
+ def ingress_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ConnectionIngressIpArgs']]]]:
874
+ """
875
+ List of ingress IP addresses from where to connect to this connection's privateIp.
876
+ """
877
+ return pulumi.get(self, "ingress_ips")
878
+
879
+ @ingress_ips.setter
880
+ def ingress_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ConnectionIngressIpArgs']]]]):
881
+ pulumi.set(self, "ingress_ips", value)
882
+
883
+ @property
884
+ @pulumi.getter(name="keyId")
885
+ def key_id(self) -> Optional[pulumi.Input[str]]:
886
+ """
887
+ (Updatable) The OCID of the key used in cryptographic operations.
888
+ """
889
+ return pulumi.get(self, "key_id")
890
+
891
+ @key_id.setter
892
+ def key_id(self, value: Optional[pulumi.Input[str]]):
893
+ pulumi.set(self, "key_id", value)
894
+
895
+ @property
896
+ @pulumi.getter(name="lifecycleDetails")
897
+ def lifecycle_details(self) -> Optional[pulumi.Input[str]]:
898
+ """
899
+ The message describing the current state of the connection's lifecycle in detail. For example, can be used to provide actionable information for a connection in a Failed state.
900
+ """
901
+ return pulumi.get(self, "lifecycle_details")
902
+
903
+ @lifecycle_details.setter
904
+ def lifecycle_details(self, value: Optional[pulumi.Input[str]]):
905
+ pulumi.set(self, "lifecycle_details", value)
906
+
907
+ @property
908
+ @pulumi.getter(name="nsgIds")
909
+ def nsg_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
910
+ """
911
+ (Updatable) An array of Network Security Group OCIDs used to define network access for Connections.
912
+ """
913
+ return pulumi.get(self, "nsg_ids")
914
+
915
+ @nsg_ids.setter
916
+ def nsg_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
917
+ pulumi.set(self, "nsg_ids", value)
918
+
919
+ @property
920
+ @pulumi.getter
921
+ def password(self) -> Optional[pulumi.Input[str]]:
922
+ """
923
+ (Updatable) The password (credential) used when creating or updating this resource.
924
+ """
925
+ return pulumi.get(self, "password")
926
+
927
+ @password.setter
928
+ def password(self, value: Optional[pulumi.Input[str]]):
929
+ pulumi.set(self, "password", value)
930
+
931
+ @property
932
+ @pulumi.getter
933
+ def port(self) -> Optional[pulumi.Input[int]]:
934
+ """
935
+ (Updatable) The port to be used for the connection.
936
+ """
937
+ return pulumi.get(self, "port")
938
+
939
+ @port.setter
940
+ def port(self, value: Optional[pulumi.Input[int]]):
941
+ pulumi.set(self, "port", value)
942
+
943
+ @property
944
+ @pulumi.getter(name="privateEndpointId")
945
+ def private_endpoint_id(self) -> Optional[pulumi.Input[str]]:
946
+ """
947
+ The OCID of the resource being referenced.
948
+ """
949
+ return pulumi.get(self, "private_endpoint_id")
950
+
951
+ @private_endpoint_id.setter
952
+ def private_endpoint_id(self, value: Optional[pulumi.Input[str]]):
953
+ pulumi.set(self, "private_endpoint_id", value)
954
+
955
+ @property
956
+ @pulumi.getter(name="replicationPassword")
957
+ def replication_password(self) -> Optional[pulumi.Input[str]]:
958
+ """
959
+ (Updatable) The password (credential) used when creating or updating this resource.
960
+ """
961
+ return pulumi.get(self, "replication_password")
962
+
963
+ @replication_password.setter
964
+ def replication_password(self, value: Optional[pulumi.Input[str]]):
965
+ pulumi.set(self, "replication_password", value)
966
+
967
+ @property
968
+ @pulumi.getter(name="replicationUsername")
969
+ def replication_username(self) -> Optional[pulumi.Input[str]]:
970
+ """
971
+ (Updatable) The username (credential) used when creating or updating this resource.
972
+ """
973
+ return pulumi.get(self, "replication_username")
974
+
975
+ @replication_username.setter
976
+ def replication_username(self, value: Optional[pulumi.Input[str]]):
977
+ pulumi.set(self, "replication_username", value)
978
+
979
+ @property
980
+ @pulumi.getter(name="secretId")
981
+ def secret_id(self) -> Optional[pulumi.Input[str]]:
982
+ """
983
+ The OCID of the resource being referenced.
984
+ """
985
+ return pulumi.get(self, "secret_id")
986
+
987
+ @secret_id.setter
988
+ def secret_id(self, value: Optional[pulumi.Input[str]]):
989
+ pulumi.set(self, "secret_id", value)
990
+
991
+ @property
992
+ @pulumi.getter(name="securityProtocol")
993
+ def security_protocol(self) -> Optional[pulumi.Input[str]]:
994
+ """
995
+ (Updatable) Security Type for MySQL.
996
+ """
997
+ return pulumi.get(self, "security_protocol")
998
+
999
+ @security_protocol.setter
1000
+ def security_protocol(self, value: Optional[pulumi.Input[str]]):
1001
+ pulumi.set(self, "security_protocol", value)
1002
+
1003
+ @property
1004
+ @pulumi.getter(name="sshHost")
1005
+ def ssh_host(self) -> Optional[pulumi.Input[str]]:
1006
+ """
1007
+ (Updatable) Name of the host the SSH key is valid for.
1008
+ """
1009
+ return pulumi.get(self, "ssh_host")
1010
+
1011
+ @ssh_host.setter
1012
+ def ssh_host(self, value: Optional[pulumi.Input[str]]):
1013
+ pulumi.set(self, "ssh_host", value)
1014
+
1015
+ @property
1016
+ @pulumi.getter(name="sshKey")
1017
+ def ssh_key(self) -> Optional[pulumi.Input[str]]:
1018
+ """
1019
+ (Updatable) Private SSH key string.
1020
+ """
1021
+ return pulumi.get(self, "ssh_key")
1022
+
1023
+ @ssh_key.setter
1024
+ def ssh_key(self, value: Optional[pulumi.Input[str]]):
1025
+ pulumi.set(self, "ssh_key", value)
1026
+
1027
+ @property
1028
+ @pulumi.getter(name="sshSudoLocation")
1029
+ def ssh_sudo_location(self) -> Optional[pulumi.Input[str]]:
1030
+ """
1031
+ (Updatable) Sudo location
1032
+ """
1033
+ return pulumi.get(self, "ssh_sudo_location")
1034
+
1035
+ @ssh_sudo_location.setter
1036
+ def ssh_sudo_location(self, value: Optional[pulumi.Input[str]]):
1037
+ pulumi.set(self, "ssh_sudo_location", value)
1038
+
1039
+ @property
1040
+ @pulumi.getter(name="sshUser")
1041
+ def ssh_user(self) -> Optional[pulumi.Input[str]]:
1042
+ """
1043
+ (Updatable) The username (credential) used when creating or updating this resource.
1044
+ """
1045
+ return pulumi.get(self, "ssh_user")
1046
+
1047
+ @ssh_user.setter
1048
+ def ssh_user(self, value: Optional[pulumi.Input[str]]):
1049
+ pulumi.set(self, "ssh_user", value)
1050
+
1051
+ @property
1052
+ @pulumi.getter(name="sslCa")
1053
+ def ssl_ca(self) -> Optional[pulumi.Input[str]]:
1054
+ """
1055
+ (Updatable) Database Certificate - The base64 encoded content of mysql.pem file containing the server public key (for 1 and 2-way SSL).
1056
+ """
1057
+ return pulumi.get(self, "ssl_ca")
1058
+
1059
+ @ssl_ca.setter
1060
+ def ssl_ca(self, value: Optional[pulumi.Input[str]]):
1061
+ pulumi.set(self, "ssl_ca", value)
1062
+
1063
+ @property
1064
+ @pulumi.getter(name="sslCert")
1065
+ def ssl_cert(self) -> Optional[pulumi.Input[str]]:
1066
+ """
1067
+ (Updatable) Client Certificate - The base64 encoded content of client-cert.pem file containing the client public key (for 2-way SSL).
1068
+ """
1069
+ return pulumi.get(self, "ssl_cert")
1070
+
1071
+ @ssl_cert.setter
1072
+ def ssl_cert(self, value: Optional[pulumi.Input[str]]):
1073
+ pulumi.set(self, "ssl_cert", value)
1074
+
1075
+ @property
1076
+ @pulumi.getter(name="sslCrl")
1077
+ def ssl_crl(self) -> Optional[pulumi.Input[str]]:
1078
+ """
1079
+ (Updatable) Certificates revoked by certificate authorities (CA). Server certificate must not be on this list (for 1 and 2-way SSL). Note: This is an optional and that too only applicable if TLS/MTLS option is selected.
1080
+ """
1081
+ return pulumi.get(self, "ssl_crl")
1082
+
1083
+ @ssl_crl.setter
1084
+ def ssl_crl(self, value: Optional[pulumi.Input[str]]):
1085
+ pulumi.set(self, "ssl_crl", value)
1086
+
1087
+ @property
1088
+ @pulumi.getter(name="sslKey")
1089
+ def ssl_key(self) -> Optional[pulumi.Input[str]]:
1090
+ """
1091
+ (Updatable) Client Key - The client-key.pem containing the client private key (for 2-way SSL).
1092
+ """
1093
+ return pulumi.get(self, "ssl_key")
1094
+
1095
+ @ssl_key.setter
1096
+ def ssl_key(self, value: Optional[pulumi.Input[str]]):
1097
+ pulumi.set(self, "ssl_key", value)
1098
+
1099
+ @property
1100
+ @pulumi.getter(name="sslMode")
1101
+ def ssl_mode(self) -> Optional[pulumi.Input[str]]:
1102
+ """
1103
+ (Updatable) SSL modes for MySQL.
1104
+ """
1105
+ return pulumi.get(self, "ssl_mode")
1106
+
1107
+ @ssl_mode.setter
1108
+ def ssl_mode(self, value: Optional[pulumi.Input[str]]):
1109
+ pulumi.set(self, "ssl_mode", value)
1110
+
1111
+ @property
1112
+ @pulumi.getter
1113
+ def state(self) -> Optional[pulumi.Input[str]]:
1114
+ """
1115
+ The Connection's current lifecycle state.
1116
+ """
1117
+ return pulumi.get(self, "state")
1118
+
1119
+ @state.setter
1120
+ def state(self, value: Optional[pulumi.Input[str]]):
1121
+ pulumi.set(self, "state", value)
1122
+
1123
+ @property
1124
+ @pulumi.getter(name="subnetId")
1125
+ def subnet_id(self) -> Optional[pulumi.Input[str]]:
1126
+ """
1127
+ (Updatable) Oracle Cloud Infrastructure resource ID.
1128
+ """
1129
+ return pulumi.get(self, "subnet_id")
1130
+
1131
+ @subnet_id.setter
1132
+ def subnet_id(self, value: Optional[pulumi.Input[str]]):
1133
+ pulumi.set(self, "subnet_id", value)
1134
+
1135
+ @property
1136
+ @pulumi.getter(name="systemTags")
1137
+ def system_tags(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
1138
+ """
1139
+ Usage of system tag keys. These predefined keys are scoped to namespaces. Example: `{"orcl-cloud.free-tier-retained": "true"}`
1140
+ """
1141
+ return pulumi.get(self, "system_tags")
1142
+
1143
+ @system_tags.setter
1144
+ def system_tags(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
1145
+ pulumi.set(self, "system_tags", value)
1146
+
1147
+ @property
1148
+ @pulumi.getter(name="technologyType")
1149
+ def technology_type(self) -> Optional[pulumi.Input[str]]:
1150
+ """
1151
+ The type of MySQL source or target connection. Example: OCI_MYSQL represents Oracle Cloud Infrastructure MySQL HeatWave Database Service
1152
+ """
1153
+ return pulumi.get(self, "technology_type")
1154
+
1155
+ @technology_type.setter
1156
+ def technology_type(self, value: Optional[pulumi.Input[str]]):
1157
+ pulumi.set(self, "technology_type", value)
1158
+
1159
+ @property
1160
+ @pulumi.getter(name="timeCreated")
1161
+ def time_created(self) -> Optional[pulumi.Input[str]]:
1162
+ """
1163
+ The time when this resource was created. An RFC3339 formatted datetime string such as `2016-08-25T21:10:29.600Z`.
1164
+ """
1165
+ return pulumi.get(self, "time_created")
1166
+
1167
+ @time_created.setter
1168
+ def time_created(self, value: Optional[pulumi.Input[str]]):
1169
+ pulumi.set(self, "time_created", value)
1170
+
1171
+ @property
1172
+ @pulumi.getter(name="timeUpdated")
1173
+ def time_updated(self) -> Optional[pulumi.Input[str]]:
1174
+ """
1175
+ The time when this resource was updated. An RFC3339 formatted datetime string such as `2016-08-25T21:10:29.600Z`.
1176
+ """
1177
+ return pulumi.get(self, "time_updated")
1178
+
1179
+ @time_updated.setter
1180
+ def time_updated(self, value: Optional[pulumi.Input[str]]):
1181
+ pulumi.set(self, "time_updated", value)
1182
+
1183
+ @property
1184
+ @pulumi.getter
1185
+ def username(self) -> Optional[pulumi.Input[str]]:
1186
+ """
1187
+ (Updatable) The username (credential) used when creating or updating this resource.
1188
+ """
1189
+ return pulumi.get(self, "username")
1190
+
1191
+ @username.setter
1192
+ def username(self, value: Optional[pulumi.Input[str]]):
1193
+ pulumi.set(self, "username", value)
1194
+
1195
+ @property
1196
+ @pulumi.getter(name="vaultId")
1197
+ def vault_id(self) -> Optional[pulumi.Input[str]]:
1198
+ """
1199
+ (Updatable) Oracle Cloud Infrastructure resource ID.
1200
+ """
1201
+ return pulumi.get(self, "vault_id")
1202
+
1203
+ @vault_id.setter
1204
+ def vault_id(self, value: Optional[pulumi.Input[str]]):
1205
+ pulumi.set(self, "vault_id", value)
1206
+
1207
+ @property
1208
+ @pulumi.getter
1209
+ def wallet(self) -> Optional[pulumi.Input[str]]:
1210
+ """
1211
+ (Updatable) The wallet contents used to make connections to a database. This attribute is expected to be base64 encoded.
1212
+
1213
+
1214
+ ** IMPORTANT **
1215
+ Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
1216
+ """
1217
+ return pulumi.get(self, "wallet")
1218
+
1219
+ @wallet.setter
1220
+ def wallet(self, value: Optional[pulumi.Input[str]]):
1221
+ pulumi.set(self, "wallet", value)
1222
+
1223
+
1224
+ class Connection(pulumi.CustomResource):
1225
+ @overload
1226
+ def __init__(__self__,
1227
+ resource_name: str,
1228
+ opts: Optional[pulumi.ResourceOptions] = None,
1229
+ additional_attributes: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConnectionAdditionalAttributeArgs']]]]] = None,
1230
+ compartment_id: Optional[pulumi.Input[str]] = None,
1231
+ connection_string: Optional[pulumi.Input[str]] = None,
1232
+ connection_type: Optional[pulumi.Input[str]] = None,
1233
+ database_id: Optional[pulumi.Input[str]] = None,
1234
+ database_name: Optional[pulumi.Input[str]] = None,
1235
+ db_system_id: Optional[pulumi.Input[str]] = None,
1236
+ defined_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
1237
+ description: Optional[pulumi.Input[str]] = None,
1238
+ display_name: Optional[pulumi.Input[str]] = None,
1239
+ freeform_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
1240
+ host: Optional[pulumi.Input[str]] = None,
1241
+ key_id: Optional[pulumi.Input[str]] = None,
1242
+ nsg_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1243
+ password: Optional[pulumi.Input[str]] = None,
1244
+ port: Optional[pulumi.Input[int]] = None,
1245
+ replication_password: Optional[pulumi.Input[str]] = None,
1246
+ replication_username: Optional[pulumi.Input[str]] = None,
1247
+ security_protocol: Optional[pulumi.Input[str]] = None,
1248
+ ssh_host: Optional[pulumi.Input[str]] = None,
1249
+ ssh_key: Optional[pulumi.Input[str]] = None,
1250
+ ssh_sudo_location: Optional[pulumi.Input[str]] = None,
1251
+ ssh_user: Optional[pulumi.Input[str]] = None,
1252
+ ssl_ca: Optional[pulumi.Input[str]] = None,
1253
+ ssl_cert: Optional[pulumi.Input[str]] = None,
1254
+ ssl_crl: Optional[pulumi.Input[str]] = None,
1255
+ ssl_key: Optional[pulumi.Input[str]] = None,
1256
+ ssl_mode: Optional[pulumi.Input[str]] = None,
1257
+ subnet_id: Optional[pulumi.Input[str]] = None,
1258
+ technology_type: Optional[pulumi.Input[str]] = None,
1259
+ username: Optional[pulumi.Input[str]] = None,
1260
+ vault_id: Optional[pulumi.Input[str]] = None,
1261
+ wallet: Optional[pulumi.Input[str]] = None,
1262
+ __props__=None):
1263
+ """
1264
+ ## Example Usage
1265
+
1266
+ ```python
1267
+ import pulumi
1268
+ import pulumi_oci as oci
1269
+
1270
+ test_connection = oci.database_migration.Connection("test_connection",
1271
+ compartment_id=compartment_id,
1272
+ connection_type=connection_connection_type,
1273
+ display_name=connection_display_name,
1274
+ key_id=test_key["id"],
1275
+ password=connection_password,
1276
+ technology_type=connection_technology_type,
1277
+ username=connection_username,
1278
+ vault_id=test_vault["id"],
1279
+ additional_attributes=[oci.database_migration.ConnectionAdditionalAttributeArgs(
1280
+ name=connection_additional_attributes_name,
1281
+ value=connection_additional_attributes_value,
1282
+ )],
1283
+ connection_string=connection_connection_string,
1284
+ database_id=test_database["id"],
1285
+ database_name=test_database["name"],
1286
+ db_system_id=test_db_system["id"],
1287
+ defined_tags={
1288
+ "foo-namespace.bar-key": "value",
1289
+ },
1290
+ description=connection_description,
1291
+ freeform_tags=connection_freeform_tags,
1292
+ host=connection_host,
1293
+ nsg_ids=connection_nsg_ids,
1294
+ port=connection_port,
1295
+ replication_password=connection_replication_password,
1296
+ replication_username=connection_replication_username,
1297
+ security_protocol=connection_security_protocol,
1298
+ ssh_host=connection_ssh_host,
1299
+ ssh_key=connection_ssh_key,
1300
+ ssh_sudo_location=connection_ssh_sudo_location,
1301
+ ssh_user=connection_ssh_user,
1302
+ ssl_ca=connection_ssl_ca,
1303
+ ssl_cert=connection_ssl_cert,
1304
+ ssl_crl=connection_ssl_crl,
1305
+ ssl_key=connection_ssl_key,
1306
+ ssl_mode=connection_ssl_mode,
1307
+ subnet_id=test_subnet["id"],
1308
+ wallet=connection_wallet)
1309
+ ```
1310
+
1311
+ ## Import
1312
+
1313
+ Connections can be imported using the `id`, e.g.
1314
+
1315
+ ```sh
1316
+ $ pulumi import oci:DatabaseMigration/connection:Connection test_connection "id"
1317
+ ```
1318
+
1319
+ :param str resource_name: The name of the resource.
1320
+ :param pulumi.ResourceOptions opts: Options for the resource.
1321
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConnectionAdditionalAttributeArgs']]]] additional_attributes: (Updatable) An array of name-value pair attribute entries.
1322
+ :param pulumi.Input[str] compartment_id: (Updatable) The OCID of the compartment.
1323
+ :param pulumi.Input[str] connection_string: (Updatable) Connect descriptor or Easy Connect Naming method used to connect to a database.
1324
+ :param pulumi.Input[str] connection_type: (Updatable) Defines the type of connection. For example, ORACLE.
1325
+ :param pulumi.Input[str] database_id: (Updatable) The OCID of the database being referenced.
1326
+ :param pulumi.Input[str] database_name: (Updatable) The name of the database being referenced.
1327
+ :param pulumi.Input[str] db_system_id: (Updatable) The OCID of the database system being referenced.
1328
+ :param pulumi.Input[Mapping[str, Any]] defined_tags: (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}`
1329
+ :param pulumi.Input[str] description: (Updatable) A user-friendly description. Does not have to be unique, and it's changeable. Avoid entering confidential information.
1330
+ :param pulumi.Input[str] display_name: (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
1331
+ :param pulumi.Input[Mapping[str, Any]] freeform_tags: (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}
1332
+ :param pulumi.Input[str] host: (Updatable) The IP Address of the host.
1333
+ :param pulumi.Input[str] key_id: (Updatable) The OCID of the key used in cryptographic operations.
1334
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] nsg_ids: (Updatable) An array of Network Security Group OCIDs used to define network access for Connections.
1335
+ :param pulumi.Input[str] password: (Updatable) The password (credential) used when creating or updating this resource.
1336
+ :param pulumi.Input[int] port: (Updatable) The port to be used for the connection.
1337
+ :param pulumi.Input[str] replication_password: (Updatable) The password (credential) used when creating or updating this resource.
1338
+ :param pulumi.Input[str] replication_username: (Updatable) The username (credential) used when creating or updating this resource.
1339
+ :param pulumi.Input[str] security_protocol: (Updatable) Security Type for MySQL.
1340
+ :param pulumi.Input[str] ssh_host: (Updatable) Name of the host the SSH key is valid for.
1341
+ :param pulumi.Input[str] ssh_key: (Updatable) Private SSH key string.
1342
+ :param pulumi.Input[str] ssh_sudo_location: (Updatable) Sudo location
1343
+ :param pulumi.Input[str] ssh_user: (Updatable) The username (credential) used when creating or updating this resource.
1344
+ :param pulumi.Input[str] ssl_ca: (Updatable) Database Certificate - The base64 encoded content of mysql.pem file containing the server public key (for 1 and 2-way SSL).
1345
+ :param pulumi.Input[str] ssl_cert: (Updatable) Client Certificate - The base64 encoded content of client-cert.pem file containing the client public key (for 2-way SSL).
1346
+ :param pulumi.Input[str] ssl_crl: (Updatable) Certificates revoked by certificate authorities (CA). Server certificate must not be on this list (for 1 and 2-way SSL). Note: This is an optional and that too only applicable if TLS/MTLS option is selected.
1347
+ :param pulumi.Input[str] ssl_key: (Updatable) Client Key - The client-key.pem containing the client private key (for 2-way SSL).
1348
+ :param pulumi.Input[str] ssl_mode: (Updatable) SSL modes for MySQL.
1349
+ :param pulumi.Input[str] subnet_id: (Updatable) Oracle Cloud Infrastructure resource ID.
1350
+ :param pulumi.Input[str] technology_type: The type of MySQL source or target connection. Example: OCI_MYSQL represents Oracle Cloud Infrastructure MySQL HeatWave Database Service
1351
+ :param pulumi.Input[str] username: (Updatable) The username (credential) used when creating or updating this resource.
1352
+ :param pulumi.Input[str] vault_id: (Updatable) Oracle Cloud Infrastructure resource ID.
1353
+ :param pulumi.Input[str] wallet: (Updatable) The wallet contents used to make connections to a database. This attribute is expected to be base64 encoded.
1354
+
1355
+
1356
+ ** IMPORTANT **
1357
+ Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
1358
+ """
1359
+ ...
1360
+ @overload
1361
+ def __init__(__self__,
1362
+ resource_name: str,
1363
+ args: ConnectionArgs,
1364
+ opts: Optional[pulumi.ResourceOptions] = None):
1365
+ """
1366
+ ## Example Usage
1367
+
1368
+ ```python
1369
+ import pulumi
1370
+ import pulumi_oci as oci
1371
+
1372
+ test_connection = oci.database_migration.Connection("test_connection",
1373
+ compartment_id=compartment_id,
1374
+ connection_type=connection_connection_type,
1375
+ display_name=connection_display_name,
1376
+ key_id=test_key["id"],
1377
+ password=connection_password,
1378
+ technology_type=connection_technology_type,
1379
+ username=connection_username,
1380
+ vault_id=test_vault["id"],
1381
+ additional_attributes=[oci.database_migration.ConnectionAdditionalAttributeArgs(
1382
+ name=connection_additional_attributes_name,
1383
+ value=connection_additional_attributes_value,
1384
+ )],
1385
+ connection_string=connection_connection_string,
1386
+ database_id=test_database["id"],
1387
+ database_name=test_database["name"],
1388
+ db_system_id=test_db_system["id"],
1389
+ defined_tags={
1390
+ "foo-namespace.bar-key": "value",
1391
+ },
1392
+ description=connection_description,
1393
+ freeform_tags=connection_freeform_tags,
1394
+ host=connection_host,
1395
+ nsg_ids=connection_nsg_ids,
1396
+ port=connection_port,
1397
+ replication_password=connection_replication_password,
1398
+ replication_username=connection_replication_username,
1399
+ security_protocol=connection_security_protocol,
1400
+ ssh_host=connection_ssh_host,
1401
+ ssh_key=connection_ssh_key,
1402
+ ssh_sudo_location=connection_ssh_sudo_location,
1403
+ ssh_user=connection_ssh_user,
1404
+ ssl_ca=connection_ssl_ca,
1405
+ ssl_cert=connection_ssl_cert,
1406
+ ssl_crl=connection_ssl_crl,
1407
+ ssl_key=connection_ssl_key,
1408
+ ssl_mode=connection_ssl_mode,
1409
+ subnet_id=test_subnet["id"],
1410
+ wallet=connection_wallet)
1411
+ ```
1412
+
1413
+ ## Import
1414
+
1415
+ Connections can be imported using the `id`, e.g.
1416
+
1417
+ ```sh
1418
+ $ pulumi import oci:DatabaseMigration/connection:Connection test_connection "id"
1419
+ ```
1420
+
1421
+ :param str resource_name: The name of the resource.
1422
+ :param ConnectionArgs args: The arguments to use to populate this resource's properties.
1423
+ :param pulumi.ResourceOptions opts: Options for the resource.
1424
+ """
1425
+ ...
1426
+ def __init__(__self__, resource_name: str, *args, **kwargs):
1427
+ resource_args, opts = _utilities.get_resource_args_opts(ConnectionArgs, pulumi.ResourceOptions, *args, **kwargs)
1428
+ if resource_args is not None:
1429
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
1430
+ else:
1431
+ __self__._internal_init(resource_name, *args, **kwargs)
1432
+
1433
+ def _internal_init(__self__,
1434
+ resource_name: str,
1435
+ opts: Optional[pulumi.ResourceOptions] = None,
1436
+ additional_attributes: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConnectionAdditionalAttributeArgs']]]]] = None,
1437
+ compartment_id: Optional[pulumi.Input[str]] = None,
1438
+ connection_string: Optional[pulumi.Input[str]] = None,
1439
+ connection_type: Optional[pulumi.Input[str]] = None,
1440
+ database_id: Optional[pulumi.Input[str]] = None,
1441
+ database_name: Optional[pulumi.Input[str]] = None,
1442
+ db_system_id: Optional[pulumi.Input[str]] = None,
1443
+ defined_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
1444
+ description: Optional[pulumi.Input[str]] = None,
1445
+ display_name: Optional[pulumi.Input[str]] = None,
1446
+ freeform_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
1447
+ host: Optional[pulumi.Input[str]] = None,
1448
+ key_id: Optional[pulumi.Input[str]] = None,
1449
+ nsg_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1450
+ password: Optional[pulumi.Input[str]] = None,
1451
+ port: Optional[pulumi.Input[int]] = None,
1452
+ replication_password: Optional[pulumi.Input[str]] = None,
1453
+ replication_username: Optional[pulumi.Input[str]] = None,
1454
+ security_protocol: Optional[pulumi.Input[str]] = None,
1455
+ ssh_host: Optional[pulumi.Input[str]] = None,
1456
+ ssh_key: Optional[pulumi.Input[str]] = None,
1457
+ ssh_sudo_location: Optional[pulumi.Input[str]] = None,
1458
+ ssh_user: Optional[pulumi.Input[str]] = None,
1459
+ ssl_ca: Optional[pulumi.Input[str]] = None,
1460
+ ssl_cert: Optional[pulumi.Input[str]] = None,
1461
+ ssl_crl: Optional[pulumi.Input[str]] = None,
1462
+ ssl_key: Optional[pulumi.Input[str]] = None,
1463
+ ssl_mode: Optional[pulumi.Input[str]] = None,
1464
+ subnet_id: Optional[pulumi.Input[str]] = None,
1465
+ technology_type: Optional[pulumi.Input[str]] = None,
1466
+ username: Optional[pulumi.Input[str]] = None,
1467
+ vault_id: Optional[pulumi.Input[str]] = None,
1468
+ wallet: Optional[pulumi.Input[str]] = None,
1469
+ __props__=None):
1470
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
1471
+ if not isinstance(opts, pulumi.ResourceOptions):
1472
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
1473
+ if opts.id is None:
1474
+ if __props__ is not None:
1475
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
1476
+ __props__ = ConnectionArgs.__new__(ConnectionArgs)
1477
+
1478
+ __props__.__dict__["additional_attributes"] = additional_attributes
1479
+ if compartment_id is None and not opts.urn:
1480
+ raise TypeError("Missing required property 'compartment_id'")
1481
+ __props__.__dict__["compartment_id"] = compartment_id
1482
+ __props__.__dict__["connection_string"] = connection_string
1483
+ if connection_type is None and not opts.urn:
1484
+ raise TypeError("Missing required property 'connection_type'")
1485
+ __props__.__dict__["connection_type"] = connection_type
1486
+ __props__.__dict__["database_id"] = database_id
1487
+ __props__.__dict__["database_name"] = database_name
1488
+ __props__.__dict__["db_system_id"] = db_system_id
1489
+ __props__.__dict__["defined_tags"] = defined_tags
1490
+ __props__.__dict__["description"] = description
1491
+ if display_name is None and not opts.urn:
1492
+ raise TypeError("Missing required property 'display_name'")
1493
+ __props__.__dict__["display_name"] = display_name
1494
+ __props__.__dict__["freeform_tags"] = freeform_tags
1495
+ __props__.__dict__["host"] = host
1496
+ if key_id is None and not opts.urn:
1497
+ raise TypeError("Missing required property 'key_id'")
1498
+ __props__.__dict__["key_id"] = key_id
1499
+ __props__.__dict__["nsg_ids"] = nsg_ids
1500
+ if password is None and not opts.urn:
1501
+ raise TypeError("Missing required property 'password'")
1502
+ __props__.__dict__["password"] = None if password is None else pulumi.Output.secret(password)
1503
+ __props__.__dict__["port"] = port
1504
+ __props__.__dict__["replication_password"] = None if replication_password is None else pulumi.Output.secret(replication_password)
1505
+ __props__.__dict__["replication_username"] = replication_username
1506
+ __props__.__dict__["security_protocol"] = security_protocol
1507
+ __props__.__dict__["ssh_host"] = ssh_host
1508
+ __props__.__dict__["ssh_key"] = ssh_key
1509
+ __props__.__dict__["ssh_sudo_location"] = ssh_sudo_location
1510
+ __props__.__dict__["ssh_user"] = ssh_user
1511
+ __props__.__dict__["ssl_ca"] = ssl_ca
1512
+ __props__.__dict__["ssl_cert"] = ssl_cert
1513
+ __props__.__dict__["ssl_crl"] = ssl_crl
1514
+ __props__.__dict__["ssl_key"] = ssl_key
1515
+ __props__.__dict__["ssl_mode"] = ssl_mode
1516
+ __props__.__dict__["subnet_id"] = subnet_id
1517
+ if technology_type is None and not opts.urn:
1518
+ raise TypeError("Missing required property 'technology_type'")
1519
+ __props__.__dict__["technology_type"] = technology_type
1520
+ if username is None and not opts.urn:
1521
+ raise TypeError("Missing required property 'username'")
1522
+ __props__.__dict__["username"] = username
1523
+ if vault_id is None and not opts.urn:
1524
+ raise TypeError("Missing required property 'vault_id'")
1525
+ __props__.__dict__["vault_id"] = vault_id
1526
+ __props__.__dict__["wallet"] = wallet
1527
+ __props__.__dict__["ingress_ips"] = None
1528
+ __props__.__dict__["lifecycle_details"] = None
1529
+ __props__.__dict__["private_endpoint_id"] = None
1530
+ __props__.__dict__["secret_id"] = None
1531
+ __props__.__dict__["state"] = None
1532
+ __props__.__dict__["system_tags"] = None
1533
+ __props__.__dict__["time_created"] = None
1534
+ __props__.__dict__["time_updated"] = None
1535
+ secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["password", "replicationPassword"])
1536
+ opts = pulumi.ResourceOptions.merge(opts, secret_opts)
1537
+ super(Connection, __self__).__init__(
1538
+ 'oci:DatabaseMigration/connection:Connection',
1539
+ resource_name,
1540
+ __props__,
1541
+ opts)
1542
+
1543
+ @staticmethod
1544
+ def get(resource_name: str,
1545
+ id: pulumi.Input[str],
1546
+ opts: Optional[pulumi.ResourceOptions] = None,
1547
+ additional_attributes: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConnectionAdditionalAttributeArgs']]]]] = None,
1548
+ compartment_id: Optional[pulumi.Input[str]] = None,
1549
+ connection_string: Optional[pulumi.Input[str]] = None,
1550
+ connection_type: Optional[pulumi.Input[str]] = None,
1551
+ database_id: Optional[pulumi.Input[str]] = None,
1552
+ database_name: Optional[pulumi.Input[str]] = None,
1553
+ db_system_id: Optional[pulumi.Input[str]] = None,
1554
+ defined_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
1555
+ description: Optional[pulumi.Input[str]] = None,
1556
+ display_name: Optional[pulumi.Input[str]] = None,
1557
+ freeform_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
1558
+ host: Optional[pulumi.Input[str]] = None,
1559
+ ingress_ips: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConnectionIngressIpArgs']]]]] = None,
1560
+ key_id: Optional[pulumi.Input[str]] = None,
1561
+ lifecycle_details: Optional[pulumi.Input[str]] = None,
1562
+ nsg_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1563
+ password: Optional[pulumi.Input[str]] = None,
1564
+ port: Optional[pulumi.Input[int]] = None,
1565
+ private_endpoint_id: Optional[pulumi.Input[str]] = None,
1566
+ replication_password: Optional[pulumi.Input[str]] = None,
1567
+ replication_username: Optional[pulumi.Input[str]] = None,
1568
+ secret_id: Optional[pulumi.Input[str]] = None,
1569
+ security_protocol: Optional[pulumi.Input[str]] = None,
1570
+ ssh_host: Optional[pulumi.Input[str]] = None,
1571
+ ssh_key: Optional[pulumi.Input[str]] = None,
1572
+ ssh_sudo_location: Optional[pulumi.Input[str]] = None,
1573
+ ssh_user: Optional[pulumi.Input[str]] = None,
1574
+ ssl_ca: Optional[pulumi.Input[str]] = None,
1575
+ ssl_cert: Optional[pulumi.Input[str]] = None,
1576
+ ssl_crl: Optional[pulumi.Input[str]] = None,
1577
+ ssl_key: Optional[pulumi.Input[str]] = None,
1578
+ ssl_mode: Optional[pulumi.Input[str]] = None,
1579
+ state: Optional[pulumi.Input[str]] = None,
1580
+ subnet_id: Optional[pulumi.Input[str]] = None,
1581
+ system_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
1582
+ technology_type: Optional[pulumi.Input[str]] = None,
1583
+ time_created: Optional[pulumi.Input[str]] = None,
1584
+ time_updated: Optional[pulumi.Input[str]] = None,
1585
+ username: Optional[pulumi.Input[str]] = None,
1586
+ vault_id: Optional[pulumi.Input[str]] = None,
1587
+ wallet: Optional[pulumi.Input[str]] = None) -> 'Connection':
1588
+ """
1589
+ Get an existing Connection resource's state with the given name, id, and optional extra
1590
+ properties used to qualify the lookup.
1591
+
1592
+ :param str resource_name: The unique name of the resulting resource.
1593
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
1594
+ :param pulumi.ResourceOptions opts: Options for the resource.
1595
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConnectionAdditionalAttributeArgs']]]] additional_attributes: (Updatable) An array of name-value pair attribute entries.
1596
+ :param pulumi.Input[str] compartment_id: (Updatable) The OCID of the compartment.
1597
+ :param pulumi.Input[str] connection_string: (Updatable) Connect descriptor or Easy Connect Naming method used to connect to a database.
1598
+ :param pulumi.Input[str] connection_type: (Updatable) Defines the type of connection. For example, ORACLE.
1599
+ :param pulumi.Input[str] database_id: (Updatable) The OCID of the database being referenced.
1600
+ :param pulumi.Input[str] database_name: (Updatable) The name of the database being referenced.
1601
+ :param pulumi.Input[str] db_system_id: (Updatable) The OCID of the database system being referenced.
1602
+ :param pulumi.Input[Mapping[str, Any]] defined_tags: (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}`
1603
+ :param pulumi.Input[str] description: (Updatable) A user-friendly description. Does not have to be unique, and it's changeable. Avoid entering confidential information.
1604
+ :param pulumi.Input[str] display_name: (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
1605
+ :param pulumi.Input[Mapping[str, Any]] freeform_tags: (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}
1606
+ :param pulumi.Input[str] host: (Updatable) The IP Address of the host.
1607
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ConnectionIngressIpArgs']]]] ingress_ips: List of ingress IP addresses from where to connect to this connection's privateIp.
1608
+ :param pulumi.Input[str] key_id: (Updatable) The OCID of the key used in cryptographic operations.
1609
+ :param pulumi.Input[str] lifecycle_details: The message describing the current state of the connection's lifecycle in detail. For example, can be used to provide actionable information for a connection in a Failed state.
1610
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] nsg_ids: (Updatable) An array of Network Security Group OCIDs used to define network access for Connections.
1611
+ :param pulumi.Input[str] password: (Updatable) The password (credential) used when creating or updating this resource.
1612
+ :param pulumi.Input[int] port: (Updatable) The port to be used for the connection.
1613
+ :param pulumi.Input[str] private_endpoint_id: The OCID of the resource being referenced.
1614
+ :param pulumi.Input[str] replication_password: (Updatable) The password (credential) used when creating or updating this resource.
1615
+ :param pulumi.Input[str] replication_username: (Updatable) The username (credential) used when creating or updating this resource.
1616
+ :param pulumi.Input[str] secret_id: The OCID of the resource being referenced.
1617
+ :param pulumi.Input[str] security_protocol: (Updatable) Security Type for MySQL.
1618
+ :param pulumi.Input[str] ssh_host: (Updatable) Name of the host the SSH key is valid for.
1619
+ :param pulumi.Input[str] ssh_key: (Updatable) Private SSH key string.
1620
+ :param pulumi.Input[str] ssh_sudo_location: (Updatable) Sudo location
1621
+ :param pulumi.Input[str] ssh_user: (Updatable) The username (credential) used when creating or updating this resource.
1622
+ :param pulumi.Input[str] ssl_ca: (Updatable) Database Certificate - The base64 encoded content of mysql.pem file containing the server public key (for 1 and 2-way SSL).
1623
+ :param pulumi.Input[str] ssl_cert: (Updatable) Client Certificate - The base64 encoded content of client-cert.pem file containing the client public key (for 2-way SSL).
1624
+ :param pulumi.Input[str] ssl_crl: (Updatable) Certificates revoked by certificate authorities (CA). Server certificate must not be on this list (for 1 and 2-way SSL). Note: This is an optional and that too only applicable if TLS/MTLS option is selected.
1625
+ :param pulumi.Input[str] ssl_key: (Updatable) Client Key - The client-key.pem containing the client private key (for 2-way SSL).
1626
+ :param pulumi.Input[str] ssl_mode: (Updatable) SSL modes for MySQL.
1627
+ :param pulumi.Input[str] state: The Connection's current lifecycle state.
1628
+ :param pulumi.Input[str] subnet_id: (Updatable) Oracle Cloud Infrastructure resource ID.
1629
+ :param pulumi.Input[Mapping[str, Any]] system_tags: Usage of system tag keys. These predefined keys are scoped to namespaces. Example: `{"orcl-cloud.free-tier-retained": "true"}`
1630
+ :param pulumi.Input[str] technology_type: The type of MySQL source or target connection. Example: OCI_MYSQL represents Oracle Cloud Infrastructure MySQL HeatWave Database Service
1631
+ :param pulumi.Input[str] time_created: The time when this resource was created. An RFC3339 formatted datetime string such as `2016-08-25T21:10:29.600Z`.
1632
+ :param pulumi.Input[str] time_updated: The time when this resource was updated. An RFC3339 formatted datetime string such as `2016-08-25T21:10:29.600Z`.
1633
+ :param pulumi.Input[str] username: (Updatable) The username (credential) used when creating or updating this resource.
1634
+ :param pulumi.Input[str] vault_id: (Updatable) Oracle Cloud Infrastructure resource ID.
1635
+ :param pulumi.Input[str] wallet: (Updatable) The wallet contents used to make connections to a database. This attribute is expected to be base64 encoded.
1636
+
1637
+
1638
+ ** IMPORTANT **
1639
+ Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
1640
+ """
1641
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
1642
+
1643
+ __props__ = _ConnectionState.__new__(_ConnectionState)
1644
+
1645
+ __props__.__dict__["additional_attributes"] = additional_attributes
1646
+ __props__.__dict__["compartment_id"] = compartment_id
1647
+ __props__.__dict__["connection_string"] = connection_string
1648
+ __props__.__dict__["connection_type"] = connection_type
1649
+ __props__.__dict__["database_id"] = database_id
1650
+ __props__.__dict__["database_name"] = database_name
1651
+ __props__.__dict__["db_system_id"] = db_system_id
1652
+ __props__.__dict__["defined_tags"] = defined_tags
1653
+ __props__.__dict__["description"] = description
1654
+ __props__.__dict__["display_name"] = display_name
1655
+ __props__.__dict__["freeform_tags"] = freeform_tags
1656
+ __props__.__dict__["host"] = host
1657
+ __props__.__dict__["ingress_ips"] = ingress_ips
1658
+ __props__.__dict__["key_id"] = key_id
1659
+ __props__.__dict__["lifecycle_details"] = lifecycle_details
1660
+ __props__.__dict__["nsg_ids"] = nsg_ids
1661
+ __props__.__dict__["password"] = password
1662
+ __props__.__dict__["port"] = port
1663
+ __props__.__dict__["private_endpoint_id"] = private_endpoint_id
1664
+ __props__.__dict__["replication_password"] = replication_password
1665
+ __props__.__dict__["replication_username"] = replication_username
1666
+ __props__.__dict__["secret_id"] = secret_id
1667
+ __props__.__dict__["security_protocol"] = security_protocol
1668
+ __props__.__dict__["ssh_host"] = ssh_host
1669
+ __props__.__dict__["ssh_key"] = ssh_key
1670
+ __props__.__dict__["ssh_sudo_location"] = ssh_sudo_location
1671
+ __props__.__dict__["ssh_user"] = ssh_user
1672
+ __props__.__dict__["ssl_ca"] = ssl_ca
1673
+ __props__.__dict__["ssl_cert"] = ssl_cert
1674
+ __props__.__dict__["ssl_crl"] = ssl_crl
1675
+ __props__.__dict__["ssl_key"] = ssl_key
1676
+ __props__.__dict__["ssl_mode"] = ssl_mode
1677
+ __props__.__dict__["state"] = state
1678
+ __props__.__dict__["subnet_id"] = subnet_id
1679
+ __props__.__dict__["system_tags"] = system_tags
1680
+ __props__.__dict__["technology_type"] = technology_type
1681
+ __props__.__dict__["time_created"] = time_created
1682
+ __props__.__dict__["time_updated"] = time_updated
1683
+ __props__.__dict__["username"] = username
1684
+ __props__.__dict__["vault_id"] = vault_id
1685
+ __props__.__dict__["wallet"] = wallet
1686
+ return Connection(resource_name, opts=opts, __props__=__props__)
1687
+
1688
+ @property
1689
+ @pulumi.getter(name="additionalAttributes")
1690
+ def additional_attributes(self) -> pulumi.Output[Sequence['outputs.ConnectionAdditionalAttribute']]:
1691
+ """
1692
+ (Updatable) An array of name-value pair attribute entries.
1693
+ """
1694
+ return pulumi.get(self, "additional_attributes")
1695
+
1696
+ @property
1697
+ @pulumi.getter(name="compartmentId")
1698
+ def compartment_id(self) -> pulumi.Output[str]:
1699
+ """
1700
+ (Updatable) The OCID of the compartment.
1701
+ """
1702
+ return pulumi.get(self, "compartment_id")
1703
+
1704
+ @property
1705
+ @pulumi.getter(name="connectionString")
1706
+ def connection_string(self) -> pulumi.Output[str]:
1707
+ """
1708
+ (Updatable) Connect descriptor or Easy Connect Naming method used to connect to a database.
1709
+ """
1710
+ return pulumi.get(self, "connection_string")
1711
+
1712
+ @property
1713
+ @pulumi.getter(name="connectionType")
1714
+ def connection_type(self) -> pulumi.Output[str]:
1715
+ """
1716
+ (Updatable) Defines the type of connection. For example, ORACLE.
1717
+ """
1718
+ return pulumi.get(self, "connection_type")
1719
+
1720
+ @property
1721
+ @pulumi.getter(name="databaseId")
1722
+ def database_id(self) -> pulumi.Output[str]:
1723
+ """
1724
+ (Updatable) The OCID of the database being referenced.
1725
+ """
1726
+ return pulumi.get(self, "database_id")
1727
+
1728
+ @property
1729
+ @pulumi.getter(name="databaseName")
1730
+ def database_name(self) -> pulumi.Output[str]:
1731
+ """
1732
+ (Updatable) The name of the database being referenced.
1733
+ """
1734
+ return pulumi.get(self, "database_name")
1735
+
1736
+ @property
1737
+ @pulumi.getter(name="dbSystemId")
1738
+ def db_system_id(self) -> pulumi.Output[str]:
1739
+ """
1740
+ (Updatable) The OCID of the database system being referenced.
1741
+ """
1742
+ return pulumi.get(self, "db_system_id")
1743
+
1744
+ @property
1745
+ @pulumi.getter(name="definedTags")
1746
+ def defined_tags(self) -> pulumi.Output[Mapping[str, Any]]:
1747
+ """
1748
+ (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}`
1749
+ """
1750
+ return pulumi.get(self, "defined_tags")
1751
+
1752
+ @property
1753
+ @pulumi.getter
1754
+ def description(self) -> pulumi.Output[str]:
1755
+ """
1756
+ (Updatable) A user-friendly description. Does not have to be unique, and it's changeable. Avoid entering confidential information.
1757
+ """
1758
+ return pulumi.get(self, "description")
1759
+
1760
+ @property
1761
+ @pulumi.getter(name="displayName")
1762
+ def display_name(self) -> pulumi.Output[str]:
1763
+ """
1764
+ (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
1765
+ """
1766
+ return pulumi.get(self, "display_name")
1767
+
1768
+ @property
1769
+ @pulumi.getter(name="freeformTags")
1770
+ def freeform_tags(self) -> pulumi.Output[Mapping[str, Any]]:
1771
+ """
1772
+ (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}
1773
+ """
1774
+ return pulumi.get(self, "freeform_tags")
1775
+
1776
+ @property
1777
+ @pulumi.getter
1778
+ def host(self) -> pulumi.Output[str]:
1779
+ """
1780
+ (Updatable) The IP Address of the host.
1781
+ """
1782
+ return pulumi.get(self, "host")
1783
+
1784
+ @property
1785
+ @pulumi.getter(name="ingressIps")
1786
+ def ingress_ips(self) -> pulumi.Output[Sequence['outputs.ConnectionIngressIp']]:
1787
+ """
1788
+ List of ingress IP addresses from where to connect to this connection's privateIp.
1789
+ """
1790
+ return pulumi.get(self, "ingress_ips")
1791
+
1792
+ @property
1793
+ @pulumi.getter(name="keyId")
1794
+ def key_id(self) -> pulumi.Output[str]:
1795
+ """
1796
+ (Updatable) The OCID of the key used in cryptographic operations.
1797
+ """
1798
+ return pulumi.get(self, "key_id")
1799
+
1800
+ @property
1801
+ @pulumi.getter(name="lifecycleDetails")
1802
+ def lifecycle_details(self) -> pulumi.Output[str]:
1803
+ """
1804
+ The message describing the current state of the connection's lifecycle in detail. For example, can be used to provide actionable information for a connection in a Failed state.
1805
+ """
1806
+ return pulumi.get(self, "lifecycle_details")
1807
+
1808
+ @property
1809
+ @pulumi.getter(name="nsgIds")
1810
+ def nsg_ids(self) -> pulumi.Output[Sequence[str]]:
1811
+ """
1812
+ (Updatable) An array of Network Security Group OCIDs used to define network access for Connections.
1813
+ """
1814
+ return pulumi.get(self, "nsg_ids")
1815
+
1816
+ @property
1817
+ @pulumi.getter
1818
+ def password(self) -> pulumi.Output[str]:
1819
+ """
1820
+ (Updatable) The password (credential) used when creating or updating this resource.
1821
+ """
1822
+ return pulumi.get(self, "password")
1823
+
1824
+ @property
1825
+ @pulumi.getter
1826
+ def port(self) -> pulumi.Output[int]:
1827
+ """
1828
+ (Updatable) The port to be used for the connection.
1829
+ """
1830
+ return pulumi.get(self, "port")
1831
+
1832
+ @property
1833
+ @pulumi.getter(name="privateEndpointId")
1834
+ def private_endpoint_id(self) -> pulumi.Output[str]:
1835
+ """
1836
+ The OCID of the resource being referenced.
1837
+ """
1838
+ return pulumi.get(self, "private_endpoint_id")
1839
+
1840
+ @property
1841
+ @pulumi.getter(name="replicationPassword")
1842
+ def replication_password(self) -> pulumi.Output[str]:
1843
+ """
1844
+ (Updatable) The password (credential) used when creating or updating this resource.
1845
+ """
1846
+ return pulumi.get(self, "replication_password")
1847
+
1848
+ @property
1849
+ @pulumi.getter(name="replicationUsername")
1850
+ def replication_username(self) -> pulumi.Output[str]:
1851
+ """
1852
+ (Updatable) The username (credential) used when creating or updating this resource.
1853
+ """
1854
+ return pulumi.get(self, "replication_username")
1855
+
1856
+ @property
1857
+ @pulumi.getter(name="secretId")
1858
+ def secret_id(self) -> pulumi.Output[str]:
1859
+ """
1860
+ The OCID of the resource being referenced.
1861
+ """
1862
+ return pulumi.get(self, "secret_id")
1863
+
1864
+ @property
1865
+ @pulumi.getter(name="securityProtocol")
1866
+ def security_protocol(self) -> pulumi.Output[str]:
1867
+ """
1868
+ (Updatable) Security Type for MySQL.
1869
+ """
1870
+ return pulumi.get(self, "security_protocol")
1871
+
1872
+ @property
1873
+ @pulumi.getter(name="sshHost")
1874
+ def ssh_host(self) -> pulumi.Output[str]:
1875
+ """
1876
+ (Updatable) Name of the host the SSH key is valid for.
1877
+ """
1878
+ return pulumi.get(self, "ssh_host")
1879
+
1880
+ @property
1881
+ @pulumi.getter(name="sshKey")
1882
+ def ssh_key(self) -> pulumi.Output[str]:
1883
+ """
1884
+ (Updatable) Private SSH key string.
1885
+ """
1886
+ return pulumi.get(self, "ssh_key")
1887
+
1888
+ @property
1889
+ @pulumi.getter(name="sshSudoLocation")
1890
+ def ssh_sudo_location(self) -> pulumi.Output[str]:
1891
+ """
1892
+ (Updatable) Sudo location
1893
+ """
1894
+ return pulumi.get(self, "ssh_sudo_location")
1895
+
1896
+ @property
1897
+ @pulumi.getter(name="sshUser")
1898
+ def ssh_user(self) -> pulumi.Output[str]:
1899
+ """
1900
+ (Updatable) The username (credential) used when creating or updating this resource.
1901
+ """
1902
+ return pulumi.get(self, "ssh_user")
1903
+
1904
+ @property
1905
+ @pulumi.getter(name="sslCa")
1906
+ def ssl_ca(self) -> pulumi.Output[str]:
1907
+ """
1908
+ (Updatable) Database Certificate - The base64 encoded content of mysql.pem file containing the server public key (for 1 and 2-way SSL).
1909
+ """
1910
+ return pulumi.get(self, "ssl_ca")
1911
+
1912
+ @property
1913
+ @pulumi.getter(name="sslCert")
1914
+ def ssl_cert(self) -> pulumi.Output[str]:
1915
+ """
1916
+ (Updatable) Client Certificate - The base64 encoded content of client-cert.pem file containing the client public key (for 2-way SSL).
1917
+ """
1918
+ return pulumi.get(self, "ssl_cert")
1919
+
1920
+ @property
1921
+ @pulumi.getter(name="sslCrl")
1922
+ def ssl_crl(self) -> pulumi.Output[str]:
1923
+ """
1924
+ (Updatable) Certificates revoked by certificate authorities (CA). Server certificate must not be on this list (for 1 and 2-way SSL). Note: This is an optional and that too only applicable if TLS/MTLS option is selected.
1925
+ """
1926
+ return pulumi.get(self, "ssl_crl")
1927
+
1928
+ @property
1929
+ @pulumi.getter(name="sslKey")
1930
+ def ssl_key(self) -> pulumi.Output[str]:
1931
+ """
1932
+ (Updatable) Client Key - The client-key.pem containing the client private key (for 2-way SSL).
1933
+ """
1934
+ return pulumi.get(self, "ssl_key")
1935
+
1936
+ @property
1937
+ @pulumi.getter(name="sslMode")
1938
+ def ssl_mode(self) -> pulumi.Output[str]:
1939
+ """
1940
+ (Updatable) SSL modes for MySQL.
1941
+ """
1942
+ return pulumi.get(self, "ssl_mode")
1943
+
1944
+ @property
1945
+ @pulumi.getter
1946
+ def state(self) -> pulumi.Output[str]:
1947
+ """
1948
+ The Connection's current lifecycle state.
1949
+ """
1950
+ return pulumi.get(self, "state")
1951
+
1952
+ @property
1953
+ @pulumi.getter(name="subnetId")
1954
+ def subnet_id(self) -> pulumi.Output[str]:
1955
+ """
1956
+ (Updatable) Oracle Cloud Infrastructure resource ID.
1957
+ """
1958
+ return pulumi.get(self, "subnet_id")
1959
+
1960
+ @property
1961
+ @pulumi.getter(name="systemTags")
1962
+ def system_tags(self) -> pulumi.Output[Mapping[str, Any]]:
1963
+ """
1964
+ Usage of system tag keys. These predefined keys are scoped to namespaces. Example: `{"orcl-cloud.free-tier-retained": "true"}`
1965
+ """
1966
+ return pulumi.get(self, "system_tags")
1967
+
1968
+ @property
1969
+ @pulumi.getter(name="technologyType")
1970
+ def technology_type(self) -> pulumi.Output[str]:
1971
+ """
1972
+ The type of MySQL source or target connection. Example: OCI_MYSQL represents Oracle Cloud Infrastructure MySQL HeatWave Database Service
1973
+ """
1974
+ return pulumi.get(self, "technology_type")
1975
+
1976
+ @property
1977
+ @pulumi.getter(name="timeCreated")
1978
+ def time_created(self) -> pulumi.Output[str]:
1979
+ """
1980
+ The time when this resource was created. An RFC3339 formatted datetime string such as `2016-08-25T21:10:29.600Z`.
1981
+ """
1982
+ return pulumi.get(self, "time_created")
1983
+
1984
+ @property
1985
+ @pulumi.getter(name="timeUpdated")
1986
+ def time_updated(self) -> pulumi.Output[str]:
1987
+ """
1988
+ The time when this resource was updated. An RFC3339 formatted datetime string such as `2016-08-25T21:10:29.600Z`.
1989
+ """
1990
+ return pulumi.get(self, "time_updated")
1991
+
1992
+ @property
1993
+ @pulumi.getter
1994
+ def username(self) -> pulumi.Output[str]:
1995
+ """
1996
+ (Updatable) The username (credential) used when creating or updating this resource.
1997
+ """
1998
+ return pulumi.get(self, "username")
1999
+
2000
+ @property
2001
+ @pulumi.getter(name="vaultId")
2002
+ def vault_id(self) -> pulumi.Output[str]:
2003
+ """
2004
+ (Updatable) Oracle Cloud Infrastructure resource ID.
2005
+ """
2006
+ return pulumi.get(self, "vault_id")
2007
+
2008
+ @property
2009
+ @pulumi.getter
2010
+ def wallet(self) -> pulumi.Output[str]:
2011
+ """
2012
+ (Updatable) The wallet contents used to make connections to a database. This attribute is expected to be base64 encoded.
2013
+
2014
+
2015
+ ** IMPORTANT **
2016
+ Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
2017
+ """
2018
+ return pulumi.get(self, "wallet")
2019
+