pulumi-confluentcloud 2.13.0a1735836869__py3-none-any.whl → 2.50.0a1762926155__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.

Potentially problematic release.


This version of pulumi-confluentcloud might be problematic. Click here for more details.

Files changed (129) hide show
  1. pulumi_confluentcloud/__init__.py +81 -1
  2. pulumi_confluentcloud/_inputs.py +4170 -2453
  3. pulumi_confluentcloud/_utilities.py +9 -5
  4. pulumi_confluentcloud/access_point.py +144 -36
  5. pulumi_confluentcloud/api_key.py +138 -272
  6. pulumi_confluentcloud/business_metadata.py +76 -73
  7. pulumi_confluentcloud/business_metadata_binding.py +101 -98
  8. pulumi_confluentcloud/byok_key.py +12 -11
  9. pulumi_confluentcloud/catalog_entity_attributes.py +133 -92
  10. pulumi_confluentcloud/catalog_integration.py +544 -0
  11. pulumi_confluentcloud/certificate_authority.py +156 -155
  12. pulumi_confluentcloud/certificate_pool.py +74 -73
  13. pulumi_confluentcloud/cluster_link.py +168 -91
  14. pulumi_confluentcloud/config/__init__.py +2 -1
  15. pulumi_confluentcloud/config/__init__.pyi +23 -2
  16. pulumi_confluentcloud/config/outputs.py +110 -0
  17. pulumi_confluentcloud/config/vars.py +50 -21
  18. pulumi_confluentcloud/connect_artifact.py +478 -0
  19. pulumi_confluentcloud/connector.py +303 -81
  20. pulumi_confluentcloud/custom_connector_plugin.py +142 -141
  21. pulumi_confluentcloud/custom_connector_plugin_version.py +614 -0
  22. pulumi_confluentcloud/dns_forwarder.py +88 -45
  23. pulumi_confluentcloud/dns_record.py +46 -45
  24. pulumi_confluentcloud/environment.py +74 -73
  25. pulumi_confluentcloud/flink_artifact.py +250 -194
  26. pulumi_confluentcloud/flink_compute_pool.py +101 -100
  27. pulumi_confluentcloud/flink_connection.py +935 -0
  28. pulumi_confluentcloud/flink_statement.py +218 -124
  29. pulumi_confluentcloud/gateway.py +44 -31
  30. pulumi_confluentcloud/get_access_point.py +36 -16
  31. pulumi_confluentcloud/get_business_metadata.py +25 -23
  32. pulumi_confluentcloud/get_business_metadata_binding.py +34 -32
  33. pulumi_confluentcloud/get_byok_key.py +11 -11
  34. pulumi_confluentcloud/get_catalog_integration.py +188 -0
  35. pulumi_confluentcloud/get_certificate_authority.py +38 -38
  36. pulumi_confluentcloud/get_certificate_pool.py +17 -17
  37. pulumi_confluentcloud/get_cluster_link.py +274 -0
  38. pulumi_confluentcloud/get_connect_artifact.py +191 -0
  39. pulumi_confluentcloud/get_dns_record.py +15 -15
  40. pulumi_confluentcloud/get_environment.py +17 -17
  41. pulumi_confluentcloud/get_environments.py +6 -6
  42. pulumi_confluentcloud/get_flink_artifact.py +59 -41
  43. pulumi_confluentcloud/get_flink_compute_pool.py +27 -27
  44. pulumi_confluentcloud/get_flink_connection.py +267 -0
  45. pulumi_confluentcloud/get_flink_region.py +24 -24
  46. pulumi_confluentcloud/get_gateway.py +45 -17
  47. pulumi_confluentcloud/get_group_mapping.py +18 -18
  48. pulumi_confluentcloud/get_identity_pool.py +21 -21
  49. pulumi_confluentcloud/get_identity_provider.py +35 -21
  50. pulumi_confluentcloud/get_invitation.py +20 -20
  51. pulumi_confluentcloud/get_ip_addresses.py +6 -6
  52. pulumi_confluentcloud/get_ip_filter.py +175 -0
  53. pulumi_confluentcloud/get_ip_group.py +133 -0
  54. pulumi_confluentcloud/get_kafka_client_quota.py +17 -17
  55. pulumi_confluentcloud/get_kafka_cluster.py +55 -41
  56. pulumi_confluentcloud/get_kafka_topic.py +22 -22
  57. pulumi_confluentcloud/get_ksql_cluster.py +33 -33
  58. pulumi_confluentcloud/get_network.py +54 -40
  59. pulumi_confluentcloud/get_network_link_endpoint.py +17 -17
  60. pulumi_confluentcloud/get_network_link_service.py +23 -17
  61. pulumi_confluentcloud/get_organization.py +6 -6
  62. pulumi_confluentcloud/get_peering.py +19 -19
  63. pulumi_confluentcloud/get_private_link_access.py +19 -19
  64. pulumi_confluentcloud/get_private_link_attachment.py +29 -27
  65. pulumi_confluentcloud/get_private_link_attachment_connection.py +24 -21
  66. pulumi_confluentcloud/get_provider_integration.py +28 -18
  67. pulumi_confluentcloud/get_role_binding.py +14 -14
  68. pulumi_confluentcloud/get_schema.py +40 -40
  69. pulumi_confluentcloud/get_schema_registry_cluster.py +51 -36
  70. pulumi_confluentcloud/get_schema_registry_cluster_config.py +16 -16
  71. pulumi_confluentcloud/get_schema_registry_cluster_mode.py +14 -14
  72. pulumi_confluentcloud/get_schema_registry_clusters.py +6 -6
  73. pulumi_confluentcloud/get_schema_registry_dek.py +42 -42
  74. pulumi_confluentcloud/get_schema_registry_kek.py +30 -30
  75. pulumi_confluentcloud/get_schemas.py +14 -14
  76. pulumi_confluentcloud/get_service_account.py +20 -20
  77. pulumi_confluentcloud/get_subject_config.py +22 -22
  78. pulumi_confluentcloud/get_subject_mode.py +20 -20
  79. pulumi_confluentcloud/get_tableflow_topic.py +360 -0
  80. pulumi_confluentcloud/get_tag.py +26 -24
  81. pulumi_confluentcloud/get_tag_binding.py +32 -30
  82. pulumi_confluentcloud/get_transit_gateway_attachment.py +17 -17
  83. pulumi_confluentcloud/get_user.py +24 -24
  84. pulumi_confluentcloud/get_users.py +6 -6
  85. pulumi_confluentcloud/group_mapping.py +54 -53
  86. pulumi_confluentcloud/identity_pool.py +74 -73
  87. pulumi_confluentcloud/identity_provider.py +138 -76
  88. pulumi_confluentcloud/invitation.py +81 -80
  89. pulumi_confluentcloud/ip_filter.py +420 -0
  90. pulumi_confluentcloud/ip_group.py +264 -0
  91. pulumi_confluentcloud/kafka_acl.py +173 -172
  92. pulumi_confluentcloud/kafka_client_quota.py +63 -62
  93. pulumi_confluentcloud/kafka_cluster.py +227 -207
  94. pulumi_confluentcloud/kafka_cluster_config.py +43 -42
  95. pulumi_confluentcloud/kafka_mirror_topic.py +46 -45
  96. pulumi_confluentcloud/kafka_topic.py +132 -131
  97. pulumi_confluentcloud/ksql_cluster.py +117 -120
  98. pulumi_confluentcloud/network.py +235 -198
  99. pulumi_confluentcloud/network_link_endpoint.py +62 -68
  100. pulumi_confluentcloud/network_link_service.py +62 -68
  101. pulumi_confluentcloud/outputs.py +3400 -2088
  102. pulumi_confluentcloud/peering.py +128 -48
  103. pulumi_confluentcloud/plugin.py +428 -0
  104. pulumi_confluentcloud/private_link_access.py +54 -60
  105. pulumi_confluentcloud/private_link_attachment.py +93 -88
  106. pulumi_confluentcloud/private_link_attachment_connection.py +70 -47
  107. pulumi_confluentcloud/provider.py +318 -192
  108. pulumi_confluentcloud/provider_integration.py +45 -34
  109. pulumi_confluentcloud/pulumi-plugin.json +1 -1
  110. pulumi_confluentcloud/role_binding.py +153 -56
  111. pulumi_confluentcloud/schema.py +188 -212
  112. pulumi_confluentcloud/schema_exporter.py +217 -164
  113. pulumi_confluentcloud/schema_registry_cluster_config.py +60 -59
  114. pulumi_confluentcloud/schema_registry_cluster_mode.py +90 -42
  115. pulumi_confluentcloud/schema_registry_dek.py +140 -146
  116. pulumi_confluentcloud/schema_registry_kek.py +148 -154
  117. pulumi_confluentcloud/service_account.py +97 -96
  118. pulumi_confluentcloud/subject_config.py +105 -76
  119. pulumi_confluentcloud/subject_mode.py +107 -59
  120. pulumi_confluentcloud/tableflow_topic.py +854 -0
  121. pulumi_confluentcloud/tag.py +82 -79
  122. pulumi_confluentcloud/tag_binding.py +121 -84
  123. pulumi_confluentcloud/tf_importer.py +39 -36
  124. pulumi_confluentcloud/transit_gateway_attachment.py +38 -44
  125. {pulumi_confluentcloud-2.13.0a1735836869.dist-info → pulumi_confluentcloud-2.50.0a1762926155.dist-info}/METADATA +4 -4
  126. pulumi_confluentcloud-2.50.0a1762926155.dist-info/RECORD +129 -0
  127. {pulumi_confluentcloud-2.13.0a1735836869.dist-info → pulumi_confluentcloud-2.50.0a1762926155.dist-info}/WHEEL +1 -1
  128. pulumi_confluentcloud-2.13.0a1735836869.dist-info/RECORD +0 -113
  129. {pulumi_confluentcloud-2.13.0a1735836869.dist-info → pulumi_confluentcloud-2.50.0a1762926155.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,478 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import builtins as _builtins
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
10
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
15
+ from . import _utilities
16
+ from . import outputs
17
+ from ._inputs import *
18
+
19
+ __all__ = ['ConnectArtifactArgs', 'ConnectArtifact']
20
+
21
+ @pulumi.input_type
22
+ class ConnectArtifactArgs:
23
+ def __init__(__self__, *,
24
+ cloud: pulumi.Input[_builtins.str],
25
+ content_format: pulumi.Input[_builtins.str],
26
+ display_name: pulumi.Input[_builtins.str],
27
+ environment: pulumi.Input['ConnectArtifactEnvironmentArgs'],
28
+ artifact_file: Optional[pulumi.Input[_builtins.str]] = None,
29
+ description: Optional[pulumi.Input[_builtins.str]] = None):
30
+ """
31
+ The set of arguments for constructing a ConnectArtifact resource.
32
+ :param pulumi.Input[_builtins.str] cloud: Cloud provider where the Connect Artifact archive is uploaded.
33
+ :param pulumi.Input[_builtins.str] content_format: Archive format of the Connect Artifact. Supported formats are `JAR` and `ZIP`.
34
+ :param pulumi.Input[_builtins.str] display_name: The unique name of the Connect Artifact per cloud, environment scope.
35
+ :param pulumi.Input['ConnectArtifactEnvironmentArgs'] environment: Environment objects represent an isolated namespace for your Confluent resources for organizational purposes.
36
+ :param pulumi.Input[_builtins.str] artifact_file: The artifact file for Connect Artifact in `JAR` or `ZIP` format. This can be relative or absolute path
37
+ :param pulumi.Input[_builtins.str] description: Description of the Connect Artifact.
38
+ """
39
+ pulumi.set(__self__, "cloud", cloud)
40
+ pulumi.set(__self__, "content_format", content_format)
41
+ pulumi.set(__self__, "display_name", display_name)
42
+ pulumi.set(__self__, "environment", environment)
43
+ if artifact_file is not None:
44
+ pulumi.set(__self__, "artifact_file", artifact_file)
45
+ if description is not None:
46
+ pulumi.set(__self__, "description", description)
47
+
48
+ @_builtins.property
49
+ @pulumi.getter
50
+ def cloud(self) -> pulumi.Input[_builtins.str]:
51
+ """
52
+ Cloud provider where the Connect Artifact archive is uploaded.
53
+ """
54
+ return pulumi.get(self, "cloud")
55
+
56
+ @cloud.setter
57
+ def cloud(self, value: pulumi.Input[_builtins.str]):
58
+ pulumi.set(self, "cloud", value)
59
+
60
+ @_builtins.property
61
+ @pulumi.getter(name="contentFormat")
62
+ def content_format(self) -> pulumi.Input[_builtins.str]:
63
+ """
64
+ Archive format of the Connect Artifact. Supported formats are `JAR` and `ZIP`.
65
+ """
66
+ return pulumi.get(self, "content_format")
67
+
68
+ @content_format.setter
69
+ def content_format(self, value: pulumi.Input[_builtins.str]):
70
+ pulumi.set(self, "content_format", value)
71
+
72
+ @_builtins.property
73
+ @pulumi.getter(name="displayName")
74
+ def display_name(self) -> pulumi.Input[_builtins.str]:
75
+ """
76
+ The unique name of the Connect Artifact per cloud, environment scope.
77
+ """
78
+ return pulumi.get(self, "display_name")
79
+
80
+ @display_name.setter
81
+ def display_name(self, value: pulumi.Input[_builtins.str]):
82
+ pulumi.set(self, "display_name", value)
83
+
84
+ @_builtins.property
85
+ @pulumi.getter
86
+ def environment(self) -> pulumi.Input['ConnectArtifactEnvironmentArgs']:
87
+ """
88
+ Environment objects represent an isolated namespace for your Confluent resources for organizational purposes.
89
+ """
90
+ return pulumi.get(self, "environment")
91
+
92
+ @environment.setter
93
+ def environment(self, value: pulumi.Input['ConnectArtifactEnvironmentArgs']):
94
+ pulumi.set(self, "environment", value)
95
+
96
+ @_builtins.property
97
+ @pulumi.getter(name="artifactFile")
98
+ def artifact_file(self) -> Optional[pulumi.Input[_builtins.str]]:
99
+ """
100
+ The artifact file for Connect Artifact in `JAR` or `ZIP` format. This can be relative or absolute path
101
+ """
102
+ return pulumi.get(self, "artifact_file")
103
+
104
+ @artifact_file.setter
105
+ def artifact_file(self, value: Optional[pulumi.Input[_builtins.str]]):
106
+ pulumi.set(self, "artifact_file", value)
107
+
108
+ @_builtins.property
109
+ @pulumi.getter
110
+ def description(self) -> Optional[pulumi.Input[_builtins.str]]:
111
+ """
112
+ Description of the Connect Artifact.
113
+ """
114
+ return pulumi.get(self, "description")
115
+
116
+ @description.setter
117
+ def description(self, value: Optional[pulumi.Input[_builtins.str]]):
118
+ pulumi.set(self, "description", value)
119
+
120
+
121
+ @pulumi.input_type
122
+ class _ConnectArtifactState:
123
+ def __init__(__self__, *,
124
+ artifact_file: Optional[pulumi.Input[_builtins.str]] = None,
125
+ cloud: Optional[pulumi.Input[_builtins.str]] = None,
126
+ content_format: Optional[pulumi.Input[_builtins.str]] = None,
127
+ description: Optional[pulumi.Input[_builtins.str]] = None,
128
+ display_name: Optional[pulumi.Input[_builtins.str]] = None,
129
+ environment: Optional[pulumi.Input['ConnectArtifactEnvironmentArgs']] = None,
130
+ status: Optional[pulumi.Input[_builtins.str]] = None):
131
+ """
132
+ Input properties used for looking up and filtering ConnectArtifact resources.
133
+ :param pulumi.Input[_builtins.str] artifact_file: The artifact file for Connect Artifact in `JAR` or `ZIP` format. This can be relative or absolute path
134
+ :param pulumi.Input[_builtins.str] cloud: Cloud provider where the Connect Artifact archive is uploaded.
135
+ :param pulumi.Input[_builtins.str] content_format: Archive format of the Connect Artifact. Supported formats are `JAR` and `ZIP`.
136
+ :param pulumi.Input[_builtins.str] description: Description of the Connect Artifact.
137
+ :param pulumi.Input[_builtins.str] display_name: The unique name of the Connect Artifact per cloud, environment scope.
138
+ :param pulumi.Input['ConnectArtifactEnvironmentArgs'] environment: Environment objects represent an isolated namespace for your Confluent resources for organizational purposes.
139
+ :param pulumi.Input[_builtins.str] status: Status of the Connect Artifact.
140
+ """
141
+ if artifact_file is not None:
142
+ pulumi.set(__self__, "artifact_file", artifact_file)
143
+ if cloud is not None:
144
+ pulumi.set(__self__, "cloud", cloud)
145
+ if content_format is not None:
146
+ pulumi.set(__self__, "content_format", content_format)
147
+ if description is not None:
148
+ pulumi.set(__self__, "description", description)
149
+ if display_name is not None:
150
+ pulumi.set(__self__, "display_name", display_name)
151
+ if environment is not None:
152
+ pulumi.set(__self__, "environment", environment)
153
+ if status is not None:
154
+ pulumi.set(__self__, "status", status)
155
+
156
+ @_builtins.property
157
+ @pulumi.getter(name="artifactFile")
158
+ def artifact_file(self) -> Optional[pulumi.Input[_builtins.str]]:
159
+ """
160
+ The artifact file for Connect Artifact in `JAR` or `ZIP` format. This can be relative or absolute path
161
+ """
162
+ return pulumi.get(self, "artifact_file")
163
+
164
+ @artifact_file.setter
165
+ def artifact_file(self, value: Optional[pulumi.Input[_builtins.str]]):
166
+ pulumi.set(self, "artifact_file", value)
167
+
168
+ @_builtins.property
169
+ @pulumi.getter
170
+ def cloud(self) -> Optional[pulumi.Input[_builtins.str]]:
171
+ """
172
+ Cloud provider where the Connect Artifact archive is uploaded.
173
+ """
174
+ return pulumi.get(self, "cloud")
175
+
176
+ @cloud.setter
177
+ def cloud(self, value: Optional[pulumi.Input[_builtins.str]]):
178
+ pulumi.set(self, "cloud", value)
179
+
180
+ @_builtins.property
181
+ @pulumi.getter(name="contentFormat")
182
+ def content_format(self) -> Optional[pulumi.Input[_builtins.str]]:
183
+ """
184
+ Archive format of the Connect Artifact. Supported formats are `JAR` and `ZIP`.
185
+ """
186
+ return pulumi.get(self, "content_format")
187
+
188
+ @content_format.setter
189
+ def content_format(self, value: Optional[pulumi.Input[_builtins.str]]):
190
+ pulumi.set(self, "content_format", value)
191
+
192
+ @_builtins.property
193
+ @pulumi.getter
194
+ def description(self) -> Optional[pulumi.Input[_builtins.str]]:
195
+ """
196
+ Description of the Connect Artifact.
197
+ """
198
+ return pulumi.get(self, "description")
199
+
200
+ @description.setter
201
+ def description(self, value: Optional[pulumi.Input[_builtins.str]]):
202
+ pulumi.set(self, "description", value)
203
+
204
+ @_builtins.property
205
+ @pulumi.getter(name="displayName")
206
+ def display_name(self) -> Optional[pulumi.Input[_builtins.str]]:
207
+ """
208
+ The unique name of the Connect Artifact per cloud, environment scope.
209
+ """
210
+ return pulumi.get(self, "display_name")
211
+
212
+ @display_name.setter
213
+ def display_name(self, value: Optional[pulumi.Input[_builtins.str]]):
214
+ pulumi.set(self, "display_name", value)
215
+
216
+ @_builtins.property
217
+ @pulumi.getter
218
+ def environment(self) -> Optional[pulumi.Input['ConnectArtifactEnvironmentArgs']]:
219
+ """
220
+ Environment objects represent an isolated namespace for your Confluent resources for organizational purposes.
221
+ """
222
+ return pulumi.get(self, "environment")
223
+
224
+ @environment.setter
225
+ def environment(self, value: Optional[pulumi.Input['ConnectArtifactEnvironmentArgs']]):
226
+ pulumi.set(self, "environment", value)
227
+
228
+ @_builtins.property
229
+ @pulumi.getter
230
+ def status(self) -> Optional[pulumi.Input[_builtins.str]]:
231
+ """
232
+ Status of the Connect Artifact.
233
+ """
234
+ return pulumi.get(self, "status")
235
+
236
+ @status.setter
237
+ def status(self, value: Optional[pulumi.Input[_builtins.str]]):
238
+ pulumi.set(self, "status", value)
239
+
240
+
241
+ @pulumi.type_token("confluentcloud:index/connectArtifact:ConnectArtifact")
242
+ class ConnectArtifact(pulumi.CustomResource):
243
+ @overload
244
+ def __init__(__self__,
245
+ resource_name: str,
246
+ opts: Optional[pulumi.ResourceOptions] = None,
247
+ artifact_file: Optional[pulumi.Input[_builtins.str]] = None,
248
+ cloud: Optional[pulumi.Input[_builtins.str]] = None,
249
+ content_format: Optional[pulumi.Input[_builtins.str]] = None,
250
+ description: Optional[pulumi.Input[_builtins.str]] = None,
251
+ display_name: Optional[pulumi.Input[_builtins.str]] = None,
252
+ environment: Optional[pulumi.Input[Union['ConnectArtifactEnvironmentArgs', 'ConnectArtifactEnvironmentArgsDict']]] = None,
253
+ __props__=None):
254
+ """
255
+ ## Example Usage
256
+
257
+ ```python
258
+ import pulumi
259
+ import pulumi_confluentcloud as confluentcloud
260
+
261
+ example = confluentcloud.ConnectArtifact("example",
262
+ display_name="example-connect-artifact",
263
+ cloud="AWS",
264
+ environment={
265
+ "id": "env-123456",
266
+ },
267
+ content_format="JAR",
268
+ artifact_file="path/to/your/artifact.jar",
269
+ description="Example Connect Artifact")
270
+ ```
271
+
272
+ ## Import
273
+
274
+ You can import a Connect Artifact by using Environment ID, Cloud, and Connect Artifact ID in the format `<Environment ID>/<cloud>/<Connect Artifact ID>`, for example:
275
+
276
+ $ export CONFLUENT_CLOUD_API_KEY="<cloud_api_key>"
277
+
278
+ $ export CONFLUENT_CLOUD_API_SECRET="<cloud_api_secret>"
279
+
280
+ ```sh
281
+ $ pulumi import confluentcloud:index/connectArtifact:ConnectArtifact example env-123456/AWS/ca-123456
282
+ ```
283
+
284
+ !> **Warning:** Do not forget to delete terminal command history afterwards for security purposes.
285
+
286
+ :param str resource_name: The name of the resource.
287
+ :param pulumi.ResourceOptions opts: Options for the resource.
288
+ :param pulumi.Input[_builtins.str] artifact_file: The artifact file for Connect Artifact in `JAR` or `ZIP` format. This can be relative or absolute path
289
+ :param pulumi.Input[_builtins.str] cloud: Cloud provider where the Connect Artifact archive is uploaded.
290
+ :param pulumi.Input[_builtins.str] content_format: Archive format of the Connect Artifact. Supported formats are `JAR` and `ZIP`.
291
+ :param pulumi.Input[_builtins.str] description: Description of the Connect Artifact.
292
+ :param pulumi.Input[_builtins.str] display_name: The unique name of the Connect Artifact per cloud, environment scope.
293
+ :param pulumi.Input[Union['ConnectArtifactEnvironmentArgs', 'ConnectArtifactEnvironmentArgsDict']] environment: Environment objects represent an isolated namespace for your Confluent resources for organizational purposes.
294
+ """
295
+ ...
296
+ @overload
297
+ def __init__(__self__,
298
+ resource_name: str,
299
+ args: ConnectArtifactArgs,
300
+ opts: Optional[pulumi.ResourceOptions] = None):
301
+ """
302
+ ## Example Usage
303
+
304
+ ```python
305
+ import pulumi
306
+ import pulumi_confluentcloud as confluentcloud
307
+
308
+ example = confluentcloud.ConnectArtifact("example",
309
+ display_name="example-connect-artifact",
310
+ cloud="AWS",
311
+ environment={
312
+ "id": "env-123456",
313
+ },
314
+ content_format="JAR",
315
+ artifact_file="path/to/your/artifact.jar",
316
+ description="Example Connect Artifact")
317
+ ```
318
+
319
+ ## Import
320
+
321
+ You can import a Connect Artifact by using Environment ID, Cloud, and Connect Artifact ID in the format `<Environment ID>/<cloud>/<Connect Artifact ID>`, for example:
322
+
323
+ $ export CONFLUENT_CLOUD_API_KEY="<cloud_api_key>"
324
+
325
+ $ export CONFLUENT_CLOUD_API_SECRET="<cloud_api_secret>"
326
+
327
+ ```sh
328
+ $ pulumi import confluentcloud:index/connectArtifact:ConnectArtifact example env-123456/AWS/ca-123456
329
+ ```
330
+
331
+ !> **Warning:** Do not forget to delete terminal command history afterwards for security purposes.
332
+
333
+ :param str resource_name: The name of the resource.
334
+ :param ConnectArtifactArgs args: The arguments to use to populate this resource's properties.
335
+ :param pulumi.ResourceOptions opts: Options for the resource.
336
+ """
337
+ ...
338
+ def __init__(__self__, resource_name: str, *args, **kwargs):
339
+ resource_args, opts = _utilities.get_resource_args_opts(ConnectArtifactArgs, pulumi.ResourceOptions, *args, **kwargs)
340
+ if resource_args is not None:
341
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
342
+ else:
343
+ __self__._internal_init(resource_name, *args, **kwargs)
344
+
345
+ def _internal_init(__self__,
346
+ resource_name: str,
347
+ opts: Optional[pulumi.ResourceOptions] = None,
348
+ artifact_file: Optional[pulumi.Input[_builtins.str]] = None,
349
+ cloud: Optional[pulumi.Input[_builtins.str]] = None,
350
+ content_format: Optional[pulumi.Input[_builtins.str]] = None,
351
+ description: Optional[pulumi.Input[_builtins.str]] = None,
352
+ display_name: Optional[pulumi.Input[_builtins.str]] = None,
353
+ environment: Optional[pulumi.Input[Union['ConnectArtifactEnvironmentArgs', 'ConnectArtifactEnvironmentArgsDict']]] = None,
354
+ __props__=None):
355
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
356
+ if not isinstance(opts, pulumi.ResourceOptions):
357
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
358
+ if opts.id is None:
359
+ if __props__ is not None:
360
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
361
+ __props__ = ConnectArtifactArgs.__new__(ConnectArtifactArgs)
362
+
363
+ __props__.__dict__["artifact_file"] = artifact_file
364
+ if cloud is None and not opts.urn:
365
+ raise TypeError("Missing required property 'cloud'")
366
+ __props__.__dict__["cloud"] = cloud
367
+ if content_format is None and not opts.urn:
368
+ raise TypeError("Missing required property 'content_format'")
369
+ __props__.__dict__["content_format"] = content_format
370
+ __props__.__dict__["description"] = description
371
+ if display_name is None and not opts.urn:
372
+ raise TypeError("Missing required property 'display_name'")
373
+ __props__.__dict__["display_name"] = display_name
374
+ if environment is None and not opts.urn:
375
+ raise TypeError("Missing required property 'environment'")
376
+ __props__.__dict__["environment"] = environment
377
+ __props__.__dict__["status"] = None
378
+ super(ConnectArtifact, __self__).__init__(
379
+ 'confluentcloud:index/connectArtifact:ConnectArtifact',
380
+ resource_name,
381
+ __props__,
382
+ opts)
383
+
384
+ @staticmethod
385
+ def get(resource_name: str,
386
+ id: pulumi.Input[str],
387
+ opts: Optional[pulumi.ResourceOptions] = None,
388
+ artifact_file: Optional[pulumi.Input[_builtins.str]] = None,
389
+ cloud: Optional[pulumi.Input[_builtins.str]] = None,
390
+ content_format: Optional[pulumi.Input[_builtins.str]] = None,
391
+ description: Optional[pulumi.Input[_builtins.str]] = None,
392
+ display_name: Optional[pulumi.Input[_builtins.str]] = None,
393
+ environment: Optional[pulumi.Input[Union['ConnectArtifactEnvironmentArgs', 'ConnectArtifactEnvironmentArgsDict']]] = None,
394
+ status: Optional[pulumi.Input[_builtins.str]] = None) -> 'ConnectArtifact':
395
+ """
396
+ Get an existing ConnectArtifact resource's state with the given name, id, and optional extra
397
+ properties used to qualify the lookup.
398
+
399
+ :param str resource_name: The unique name of the resulting resource.
400
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
401
+ :param pulumi.ResourceOptions opts: Options for the resource.
402
+ :param pulumi.Input[_builtins.str] artifact_file: The artifact file for Connect Artifact in `JAR` or `ZIP` format. This can be relative or absolute path
403
+ :param pulumi.Input[_builtins.str] cloud: Cloud provider where the Connect Artifact archive is uploaded.
404
+ :param pulumi.Input[_builtins.str] content_format: Archive format of the Connect Artifact. Supported formats are `JAR` and `ZIP`.
405
+ :param pulumi.Input[_builtins.str] description: Description of the Connect Artifact.
406
+ :param pulumi.Input[_builtins.str] display_name: The unique name of the Connect Artifact per cloud, environment scope.
407
+ :param pulumi.Input[Union['ConnectArtifactEnvironmentArgs', 'ConnectArtifactEnvironmentArgsDict']] environment: Environment objects represent an isolated namespace for your Confluent resources for organizational purposes.
408
+ :param pulumi.Input[_builtins.str] status: Status of the Connect Artifact.
409
+ """
410
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
411
+
412
+ __props__ = _ConnectArtifactState.__new__(_ConnectArtifactState)
413
+
414
+ __props__.__dict__["artifact_file"] = artifact_file
415
+ __props__.__dict__["cloud"] = cloud
416
+ __props__.__dict__["content_format"] = content_format
417
+ __props__.__dict__["description"] = description
418
+ __props__.__dict__["display_name"] = display_name
419
+ __props__.__dict__["environment"] = environment
420
+ __props__.__dict__["status"] = status
421
+ return ConnectArtifact(resource_name, opts=opts, __props__=__props__)
422
+
423
+ @_builtins.property
424
+ @pulumi.getter(name="artifactFile")
425
+ def artifact_file(self) -> pulumi.Output[Optional[_builtins.str]]:
426
+ """
427
+ The artifact file for Connect Artifact in `JAR` or `ZIP` format. This can be relative or absolute path
428
+ """
429
+ return pulumi.get(self, "artifact_file")
430
+
431
+ @_builtins.property
432
+ @pulumi.getter
433
+ def cloud(self) -> pulumi.Output[_builtins.str]:
434
+ """
435
+ Cloud provider where the Connect Artifact archive is uploaded.
436
+ """
437
+ return pulumi.get(self, "cloud")
438
+
439
+ @_builtins.property
440
+ @pulumi.getter(name="contentFormat")
441
+ def content_format(self) -> pulumi.Output[_builtins.str]:
442
+ """
443
+ Archive format of the Connect Artifact. Supported formats are `JAR` and `ZIP`.
444
+ """
445
+ return pulumi.get(self, "content_format")
446
+
447
+ @_builtins.property
448
+ @pulumi.getter
449
+ def description(self) -> pulumi.Output[Optional[_builtins.str]]:
450
+ """
451
+ Description of the Connect Artifact.
452
+ """
453
+ return pulumi.get(self, "description")
454
+
455
+ @_builtins.property
456
+ @pulumi.getter(name="displayName")
457
+ def display_name(self) -> pulumi.Output[_builtins.str]:
458
+ """
459
+ The unique name of the Connect Artifact per cloud, environment scope.
460
+ """
461
+ return pulumi.get(self, "display_name")
462
+
463
+ @_builtins.property
464
+ @pulumi.getter
465
+ def environment(self) -> pulumi.Output['outputs.ConnectArtifactEnvironment']:
466
+ """
467
+ Environment objects represent an isolated namespace for your Confluent resources for organizational purposes.
468
+ """
469
+ return pulumi.get(self, "environment")
470
+
471
+ @_builtins.property
472
+ @pulumi.getter
473
+ def status(self) -> pulumi.Output[_builtins.str]:
474
+ """
475
+ Status of the Connect Artifact.
476
+ """
477
+ return pulumi.get(self, "status")
478
+