pulumi-digitalocean 4.52.0a1755711873__py3-none-any.whl → 4.53.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.

Potentially problematic release.


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

@@ -18,6 +18,7 @@ from .database_connection_pool import *
18
18
  from .database_db import *
19
19
  from .database_firewall import *
20
20
  from .database_kafka_config import *
21
+ from .database_kafka_schema_registry import *
21
22
  from .database_kafka_topic import *
22
23
  from .database_mongodb_config import *
23
24
  from .database_mysql_config import *
@@ -229,6 +230,14 @@ _utilities.register(
229
230
  "digitalocean:index/databaseKafkaConfig:DatabaseKafkaConfig": "DatabaseKafkaConfig"
230
231
  }
231
232
  },
233
+ {
234
+ "pkg": "digitalocean",
235
+ "mod": "index/databaseKafkaSchemaRegistry",
236
+ "fqn": "pulumi_digitalocean",
237
+ "classes": {
238
+ "digitalocean:index/databaseKafkaSchemaRegistry:DatabaseKafkaSchemaRegistry": "DatabaseKafkaSchemaRegistry"
239
+ }
240
+ },
232
241
  {
233
242
  "pkg": "digitalocean",
234
243
  "mod": "index/databaseKafkaTopic",
@@ -82,6 +82,8 @@ __all__ = [
82
82
  'AppSpecIngressRuleCorsAllowOriginsArgsDict',
83
83
  'AppSpecIngressRuleMatchArgs',
84
84
  'AppSpecIngressRuleMatchArgsDict',
85
+ 'AppSpecIngressRuleMatchAuthorityArgs',
86
+ 'AppSpecIngressRuleMatchAuthorityArgsDict',
85
87
  'AppSpecIngressRuleMatchPathArgs',
86
88
  'AppSpecIngressRuleMatchPathArgsDict',
87
89
  'AppSpecIngressRuleRedirectArgs',
@@ -356,6 +358,10 @@ __all__ = [
356
358
  'GenaiOpenaiApiKeyModelAgreementArgsDict',
357
359
  'GenaiOpenaiApiKeyModelVersionArgs',
358
360
  'GenaiOpenaiApiKeyModelVersionArgsDict',
361
+ 'KubernetesClusterAmdGpuDeviceMetricsExporterPluginArgs',
362
+ 'KubernetesClusterAmdGpuDeviceMetricsExporterPluginArgsDict',
363
+ 'KubernetesClusterAmdGpuDevicePluginArgs',
364
+ 'KubernetesClusterAmdGpuDevicePluginArgsDict',
359
365
  'KubernetesClusterClusterAutoscalerConfigurationArgs',
360
366
  'KubernetesClusterClusterAutoscalerConfigurationArgsDict',
361
367
  'KubernetesClusterControlPlaneFirewallArgs',
@@ -496,6 +502,10 @@ __all__ = [
496
502
  'GetImagesFilterArgsDict',
497
503
  'GetImagesSortArgs',
498
504
  'GetImagesSortArgsDict',
505
+ 'GetKubernetesClusterAmdGpuDeviceMetricsExporterPluginArgs',
506
+ 'GetKubernetesClusterAmdGpuDeviceMetricsExporterPluginArgsDict',
507
+ 'GetKubernetesClusterAmdGpuDevicePluginArgs',
508
+ 'GetKubernetesClusterAmdGpuDevicePluginArgsDict',
499
509
  'GetKubernetesClusterClusterAutoscalerConfigurationArgs',
500
510
  'GetKubernetesClusterClusterAutoscalerConfigurationArgsDict',
501
511
  'GetKubernetesClusterRoutingAgentArgs',
@@ -3389,6 +3399,10 @@ class AppSpecIngressRuleCorsAllowOriginsArgs:
3389
3399
 
3390
3400
  if not MYPY:
3391
3401
  class AppSpecIngressRuleMatchArgsDict(TypedDict):
3402
+ authority: NotRequired[pulumi.Input['AppSpecIngressRuleMatchAuthorityArgsDict']]
3403
+ """
3404
+ The authority (domain) to match on.
3405
+ """
3392
3406
  path: NotRequired[pulumi.Input['AppSpecIngressRuleMatchPathArgsDict']]
3393
3407
  """
3394
3408
  The path to match on.
@@ -3399,13 +3413,29 @@ elif False:
3399
3413
  @pulumi.input_type
3400
3414
  class AppSpecIngressRuleMatchArgs:
3401
3415
  def __init__(__self__, *,
3416
+ authority: Optional[pulumi.Input['AppSpecIngressRuleMatchAuthorityArgs']] = None,
3402
3417
  path: Optional[pulumi.Input['AppSpecIngressRuleMatchPathArgs']] = None):
3403
3418
  """
3419
+ :param pulumi.Input['AppSpecIngressRuleMatchAuthorityArgs'] authority: The authority (domain) to match on.
3404
3420
  :param pulumi.Input['AppSpecIngressRuleMatchPathArgs'] path: The path to match on.
3405
3421
  """
3422
+ if authority is not None:
3423
+ pulumi.set(__self__, "authority", authority)
3406
3424
  if path is not None:
3407
3425
  pulumi.set(__self__, "path", path)
3408
3426
 
3427
+ @_builtins.property
3428
+ @pulumi.getter
3429
+ def authority(self) -> Optional[pulumi.Input['AppSpecIngressRuleMatchAuthorityArgs']]:
3430
+ """
3431
+ The authority (domain) to match on.
3432
+ """
3433
+ return pulumi.get(self, "authority")
3434
+
3435
+ @authority.setter
3436
+ def authority(self, value: Optional[pulumi.Input['AppSpecIngressRuleMatchAuthorityArgs']]):
3437
+ pulumi.set(self, "authority", value)
3438
+
3409
3439
  @_builtins.property
3410
3440
  @pulumi.getter
3411
3441
  def path(self) -> Optional[pulumi.Input['AppSpecIngressRuleMatchPathArgs']]:
@@ -3419,6 +3449,38 @@ class AppSpecIngressRuleMatchArgs:
3419
3449
  pulumi.set(self, "path", value)
3420
3450
 
3421
3451
 
3452
+ if not MYPY:
3453
+ class AppSpecIngressRuleMatchAuthorityArgsDict(TypedDict):
3454
+ exact: NotRequired[pulumi.Input[_builtins.str]]
3455
+ """
3456
+ Exact match.
3457
+ """
3458
+ elif False:
3459
+ AppSpecIngressRuleMatchAuthorityArgsDict: TypeAlias = Mapping[str, Any]
3460
+
3461
+ @pulumi.input_type
3462
+ class AppSpecIngressRuleMatchAuthorityArgs:
3463
+ def __init__(__self__, *,
3464
+ exact: Optional[pulumi.Input[_builtins.str]] = None):
3465
+ """
3466
+ :param pulumi.Input[_builtins.str] exact: Exact match.
3467
+ """
3468
+ if exact is not None:
3469
+ pulumi.set(__self__, "exact", exact)
3470
+
3471
+ @_builtins.property
3472
+ @pulumi.getter
3473
+ def exact(self) -> Optional[pulumi.Input[_builtins.str]]:
3474
+ """
3475
+ Exact match.
3476
+ """
3477
+ return pulumi.get(self, "exact")
3478
+
3479
+ @exact.setter
3480
+ def exact(self, value: Optional[pulumi.Input[_builtins.str]]):
3481
+ pulumi.set(self, "exact", value)
3482
+
3483
+
3422
3484
  if not MYPY:
3423
3485
  class AppSpecIngressRuleMatchPathArgsDict(TypedDict):
3424
3486
  prefix: NotRequired[pulumi.Input[_builtins.str]]
@@ -18442,6 +18504,71 @@ class GenaiOpenaiApiKeyModelVersionArgs:
18442
18504
  pulumi.set(self, "patch", value)
18443
18505
 
18444
18506
 
18507
+ if not MYPY:
18508
+ class KubernetesClusterAmdGpuDeviceMetricsExporterPluginArgsDict(TypedDict):
18509
+ enabled: pulumi.Input[_builtins.bool]
18510
+ """
18511
+ Boolean flag whether the component is enabled or not.
18512
+ """
18513
+ elif False:
18514
+ KubernetesClusterAmdGpuDeviceMetricsExporterPluginArgsDict: TypeAlias = Mapping[str, Any]
18515
+
18516
+ @pulumi.input_type
18517
+ class KubernetesClusterAmdGpuDeviceMetricsExporterPluginArgs:
18518
+ def __init__(__self__, *,
18519
+ enabled: pulumi.Input[_builtins.bool]):
18520
+ """
18521
+ :param pulumi.Input[_builtins.bool] enabled: Boolean flag whether the component is enabled or not.
18522
+ """
18523
+ pulumi.set(__self__, "enabled", enabled)
18524
+
18525
+ @_builtins.property
18526
+ @pulumi.getter
18527
+ def enabled(self) -> pulumi.Input[_builtins.bool]:
18528
+ """
18529
+ Boolean flag whether the component is enabled or not.
18530
+ """
18531
+ return pulumi.get(self, "enabled")
18532
+
18533
+ @enabled.setter
18534
+ def enabled(self, value: pulumi.Input[_builtins.bool]):
18535
+ pulumi.set(self, "enabled", value)
18536
+
18537
+
18538
+ if not MYPY:
18539
+ class KubernetesClusterAmdGpuDevicePluginArgsDict(TypedDict):
18540
+ enabled: pulumi.Input[_builtins.bool]
18541
+ """
18542
+ Boolean flag whether the component should be enabled or not.
18543
+ `amd_gpu_device_metrics_exporter_plugin` - (Optional) Block containing options for the AMD GPU device metrics exporter component. If not specified, the component will not be installed in the cluster.
18544
+ """
18545
+ elif False:
18546
+ KubernetesClusterAmdGpuDevicePluginArgsDict: TypeAlias = Mapping[str, Any]
18547
+
18548
+ @pulumi.input_type
18549
+ class KubernetesClusterAmdGpuDevicePluginArgs:
18550
+ def __init__(__self__, *,
18551
+ enabled: pulumi.Input[_builtins.bool]):
18552
+ """
18553
+ :param pulumi.Input[_builtins.bool] enabled: Boolean flag whether the component should be enabled or not.
18554
+ `amd_gpu_device_metrics_exporter_plugin` - (Optional) Block containing options for the AMD GPU device metrics exporter component. If not specified, the component will not be installed in the cluster.
18555
+ """
18556
+ pulumi.set(__self__, "enabled", enabled)
18557
+
18558
+ @_builtins.property
18559
+ @pulumi.getter
18560
+ def enabled(self) -> pulumi.Input[_builtins.bool]:
18561
+ """
18562
+ Boolean flag whether the component should be enabled or not.
18563
+ `amd_gpu_device_metrics_exporter_plugin` - (Optional) Block containing options for the AMD GPU device metrics exporter component. If not specified, the component will not be installed in the cluster.
18564
+ """
18565
+ return pulumi.get(self, "enabled")
18566
+
18567
+ @enabled.setter
18568
+ def enabled(self, value: pulumi.Input[_builtins.bool]):
18569
+ pulumi.set(self, "enabled", value)
18570
+
18571
+
18445
18572
  if not MYPY:
18446
18573
  class KubernetesClusterClusterAutoscalerConfigurationArgsDict(TypedDict):
18447
18574
  expanders: NotRequired[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]
@@ -25837,6 +25964,50 @@ class GetImagesSortArgs:
25837
25964
  pulumi.set(self, "direction", value)
25838
25965
 
25839
25966
 
25967
+ if not MYPY:
25968
+ class GetKubernetesClusterAmdGpuDeviceMetricsExporterPluginArgsDict(TypedDict):
25969
+ enabled: _builtins.bool
25970
+ elif False:
25971
+ GetKubernetesClusterAmdGpuDeviceMetricsExporterPluginArgsDict: TypeAlias = Mapping[str, Any]
25972
+
25973
+ @pulumi.input_type
25974
+ class GetKubernetesClusterAmdGpuDeviceMetricsExporterPluginArgs:
25975
+ def __init__(__self__, *,
25976
+ enabled: _builtins.bool):
25977
+ pulumi.set(__self__, "enabled", enabled)
25978
+
25979
+ @_builtins.property
25980
+ @pulumi.getter
25981
+ def enabled(self) -> _builtins.bool:
25982
+ return pulumi.get(self, "enabled")
25983
+
25984
+ @enabled.setter
25985
+ def enabled(self, value: _builtins.bool):
25986
+ pulumi.set(self, "enabled", value)
25987
+
25988
+
25989
+ if not MYPY:
25990
+ class GetKubernetesClusterAmdGpuDevicePluginArgsDict(TypedDict):
25991
+ enabled: _builtins.bool
25992
+ elif False:
25993
+ GetKubernetesClusterAmdGpuDevicePluginArgsDict: TypeAlias = Mapping[str, Any]
25994
+
25995
+ @pulumi.input_type
25996
+ class GetKubernetesClusterAmdGpuDevicePluginArgs:
25997
+ def __init__(__self__, *,
25998
+ enabled: _builtins.bool):
25999
+ pulumi.set(__self__, "enabled", enabled)
26000
+
26001
+ @_builtins.property
26002
+ @pulumi.getter
26003
+ def enabled(self) -> _builtins.bool:
26004
+ return pulumi.get(self, "enabled")
26005
+
26006
+ @enabled.setter
26007
+ def enabled(self, value: _builtins.bool):
26008
+ pulumi.set(self, "enabled", value)
26009
+
26010
+
25840
26011
  if not MYPY:
25841
26012
  class GetKubernetesClusterClusterAutoscalerConfigurationArgsDict(TypedDict):
25842
26013
  expanders: NotRequired[Sequence[_builtins.str]]
@@ -0,0 +1,360 @@
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
+
17
+ __all__ = ['DatabaseKafkaSchemaRegistryArgs', 'DatabaseKafkaSchemaRegistry']
18
+
19
+ @pulumi.input_type
20
+ class DatabaseKafkaSchemaRegistryArgs:
21
+ def __init__(__self__, *,
22
+ cluster_id: pulumi.Input[_builtins.str],
23
+ schema: pulumi.Input[_builtins.str],
24
+ schema_type: pulumi.Input[_builtins.str],
25
+ subject_name: pulumi.Input[_builtins.str]):
26
+ """
27
+ The set of arguments for constructing a DatabaseKafkaSchemaRegistry resource.
28
+ :param pulumi.Input[_builtins.str] cluster_id: The ID of the target Kafka cluster.
29
+ :param pulumi.Input[_builtins.str] schema: The schema definition as a string.
30
+ :param pulumi.Input[_builtins.str] schema_type: The schema type. Available values are: avro, json, or protobuf.
31
+ :param pulumi.Input[_builtins.str] subject_name: The name of the schema subject.
32
+ """
33
+ pulumi.set(__self__, "cluster_id", cluster_id)
34
+ pulumi.set(__self__, "schema", schema)
35
+ pulumi.set(__self__, "schema_type", schema_type)
36
+ pulumi.set(__self__, "subject_name", subject_name)
37
+
38
+ @_builtins.property
39
+ @pulumi.getter(name="clusterId")
40
+ def cluster_id(self) -> pulumi.Input[_builtins.str]:
41
+ """
42
+ The ID of the target Kafka cluster.
43
+ """
44
+ return pulumi.get(self, "cluster_id")
45
+
46
+ @cluster_id.setter
47
+ def cluster_id(self, value: pulumi.Input[_builtins.str]):
48
+ pulumi.set(self, "cluster_id", value)
49
+
50
+ @_builtins.property
51
+ @pulumi.getter
52
+ def schema(self) -> pulumi.Input[_builtins.str]:
53
+ """
54
+ The schema definition as a string.
55
+ """
56
+ return pulumi.get(self, "schema")
57
+
58
+ @schema.setter
59
+ def schema(self, value: pulumi.Input[_builtins.str]):
60
+ pulumi.set(self, "schema", value)
61
+
62
+ @_builtins.property
63
+ @pulumi.getter(name="schemaType")
64
+ def schema_type(self) -> pulumi.Input[_builtins.str]:
65
+ """
66
+ The schema type. Available values are: avro, json, or protobuf.
67
+ """
68
+ return pulumi.get(self, "schema_type")
69
+
70
+ @schema_type.setter
71
+ def schema_type(self, value: pulumi.Input[_builtins.str]):
72
+ pulumi.set(self, "schema_type", value)
73
+
74
+ @_builtins.property
75
+ @pulumi.getter(name="subjectName")
76
+ def subject_name(self) -> pulumi.Input[_builtins.str]:
77
+ """
78
+ The name of the schema subject.
79
+ """
80
+ return pulumi.get(self, "subject_name")
81
+
82
+ @subject_name.setter
83
+ def subject_name(self, value: pulumi.Input[_builtins.str]):
84
+ pulumi.set(self, "subject_name", value)
85
+
86
+
87
+ @pulumi.input_type
88
+ class _DatabaseKafkaSchemaRegistryState:
89
+ def __init__(__self__, *,
90
+ cluster_id: Optional[pulumi.Input[_builtins.str]] = None,
91
+ schema: Optional[pulumi.Input[_builtins.str]] = None,
92
+ schema_type: Optional[pulumi.Input[_builtins.str]] = None,
93
+ subject_name: Optional[pulumi.Input[_builtins.str]] = None):
94
+ """
95
+ Input properties used for looking up and filtering DatabaseKafkaSchemaRegistry resources.
96
+ :param pulumi.Input[_builtins.str] cluster_id: The ID of the target Kafka cluster.
97
+ :param pulumi.Input[_builtins.str] schema: The schema definition as a string.
98
+ :param pulumi.Input[_builtins.str] schema_type: The schema type. Available values are: avro, json, or protobuf.
99
+ :param pulumi.Input[_builtins.str] subject_name: The name of the schema subject.
100
+ """
101
+ if cluster_id is not None:
102
+ pulumi.set(__self__, "cluster_id", cluster_id)
103
+ if schema is not None:
104
+ pulumi.set(__self__, "schema", schema)
105
+ if schema_type is not None:
106
+ pulumi.set(__self__, "schema_type", schema_type)
107
+ if subject_name is not None:
108
+ pulumi.set(__self__, "subject_name", subject_name)
109
+
110
+ @_builtins.property
111
+ @pulumi.getter(name="clusterId")
112
+ def cluster_id(self) -> Optional[pulumi.Input[_builtins.str]]:
113
+ """
114
+ The ID of the target Kafka cluster.
115
+ """
116
+ return pulumi.get(self, "cluster_id")
117
+
118
+ @cluster_id.setter
119
+ def cluster_id(self, value: Optional[pulumi.Input[_builtins.str]]):
120
+ pulumi.set(self, "cluster_id", value)
121
+
122
+ @_builtins.property
123
+ @pulumi.getter
124
+ def schema(self) -> Optional[pulumi.Input[_builtins.str]]:
125
+ """
126
+ The schema definition as a string.
127
+ """
128
+ return pulumi.get(self, "schema")
129
+
130
+ @schema.setter
131
+ def schema(self, value: Optional[pulumi.Input[_builtins.str]]):
132
+ pulumi.set(self, "schema", value)
133
+
134
+ @_builtins.property
135
+ @pulumi.getter(name="schemaType")
136
+ def schema_type(self) -> Optional[pulumi.Input[_builtins.str]]:
137
+ """
138
+ The schema type. Available values are: avro, json, or protobuf.
139
+ """
140
+ return pulumi.get(self, "schema_type")
141
+
142
+ @schema_type.setter
143
+ def schema_type(self, value: Optional[pulumi.Input[_builtins.str]]):
144
+ pulumi.set(self, "schema_type", value)
145
+
146
+ @_builtins.property
147
+ @pulumi.getter(name="subjectName")
148
+ def subject_name(self) -> Optional[pulumi.Input[_builtins.str]]:
149
+ """
150
+ The name of the schema subject.
151
+ """
152
+ return pulumi.get(self, "subject_name")
153
+
154
+ @subject_name.setter
155
+ def subject_name(self, value: Optional[pulumi.Input[_builtins.str]]):
156
+ pulumi.set(self, "subject_name", value)
157
+
158
+
159
+ @pulumi.type_token("digitalocean:index/databaseKafkaSchemaRegistry:DatabaseKafkaSchemaRegistry")
160
+ class DatabaseKafkaSchemaRegistry(pulumi.CustomResource):
161
+ @overload
162
+ def __init__(__self__,
163
+ resource_name: str,
164
+ opts: Optional[pulumi.ResourceOptions] = None,
165
+ cluster_id: Optional[pulumi.Input[_builtins.str]] = None,
166
+ schema: Optional[pulumi.Input[_builtins.str]] = None,
167
+ schema_type: Optional[pulumi.Input[_builtins.str]] = None,
168
+ subject_name: Optional[pulumi.Input[_builtins.str]] = None,
169
+ __props__=None):
170
+ """
171
+ Provides a DigitalOcean Kafka schema registry for Kafka clusters.
172
+
173
+ ## Example Usage
174
+
175
+ ### Create a new Kafka Schema Registry
176
+ ```python
177
+ import pulumi
178
+ import pulumi_digitalocean as digitalocean
179
+
180
+ kafka_example = digitalocean.DatabaseCluster("kafka-example",
181
+ name="example-kafka-cluster",
182
+ engine="kafka",
183
+ version="3.5",
184
+ size="gd-2vcpu-8gb",
185
+ region=digitalocean.Region.BLR1,
186
+ node_count=3,
187
+ tags=["production"])
188
+ schema_01 = digitalocean.DatabaseKafkaSchemaRegistry("schema-01",
189
+ cluster_id=kafka_example.id,
190
+ subject_name="test-schema",
191
+ schema_type="avro",
192
+ schema=\"\"\"{
193
+ "type": "record",
194
+ "namespace": "example",
195
+ "name": "TestRecord",
196
+ "fields": [
197
+ {"name": "id", "type": "string"},
198
+ {"name": "name", "type": "string"},
199
+ {"name": "value", "type": "int"}
200
+ ]
201
+ }
202
+ \"\"\")
203
+ ```
204
+
205
+ :param str resource_name: The name of the resource.
206
+ :param pulumi.ResourceOptions opts: Options for the resource.
207
+ :param pulumi.Input[_builtins.str] cluster_id: The ID of the target Kafka cluster.
208
+ :param pulumi.Input[_builtins.str] schema: The schema definition as a string.
209
+ :param pulumi.Input[_builtins.str] schema_type: The schema type. Available values are: avro, json, or protobuf.
210
+ :param pulumi.Input[_builtins.str] subject_name: The name of the schema subject.
211
+ """
212
+ ...
213
+ @overload
214
+ def __init__(__self__,
215
+ resource_name: str,
216
+ args: DatabaseKafkaSchemaRegistryArgs,
217
+ opts: Optional[pulumi.ResourceOptions] = None):
218
+ """
219
+ Provides a DigitalOcean Kafka schema registry for Kafka clusters.
220
+
221
+ ## Example Usage
222
+
223
+ ### Create a new Kafka Schema Registry
224
+ ```python
225
+ import pulumi
226
+ import pulumi_digitalocean as digitalocean
227
+
228
+ kafka_example = digitalocean.DatabaseCluster("kafka-example",
229
+ name="example-kafka-cluster",
230
+ engine="kafka",
231
+ version="3.5",
232
+ size="gd-2vcpu-8gb",
233
+ region=digitalocean.Region.BLR1,
234
+ node_count=3,
235
+ tags=["production"])
236
+ schema_01 = digitalocean.DatabaseKafkaSchemaRegistry("schema-01",
237
+ cluster_id=kafka_example.id,
238
+ subject_name="test-schema",
239
+ schema_type="avro",
240
+ schema=\"\"\"{
241
+ "type": "record",
242
+ "namespace": "example",
243
+ "name": "TestRecord",
244
+ "fields": [
245
+ {"name": "id", "type": "string"},
246
+ {"name": "name", "type": "string"},
247
+ {"name": "value", "type": "int"}
248
+ ]
249
+ }
250
+ \"\"\")
251
+ ```
252
+
253
+ :param str resource_name: The name of the resource.
254
+ :param DatabaseKafkaSchemaRegistryArgs args: The arguments to use to populate this resource's properties.
255
+ :param pulumi.ResourceOptions opts: Options for the resource.
256
+ """
257
+ ...
258
+ def __init__(__self__, resource_name: str, *args, **kwargs):
259
+ resource_args, opts = _utilities.get_resource_args_opts(DatabaseKafkaSchemaRegistryArgs, pulumi.ResourceOptions, *args, **kwargs)
260
+ if resource_args is not None:
261
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
262
+ else:
263
+ __self__._internal_init(resource_name, *args, **kwargs)
264
+
265
+ def _internal_init(__self__,
266
+ resource_name: str,
267
+ opts: Optional[pulumi.ResourceOptions] = None,
268
+ cluster_id: Optional[pulumi.Input[_builtins.str]] = None,
269
+ schema: Optional[pulumi.Input[_builtins.str]] = None,
270
+ schema_type: Optional[pulumi.Input[_builtins.str]] = None,
271
+ subject_name: Optional[pulumi.Input[_builtins.str]] = None,
272
+ __props__=None):
273
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
274
+ if not isinstance(opts, pulumi.ResourceOptions):
275
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
276
+ if opts.id is None:
277
+ if __props__ is not None:
278
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
279
+ __props__ = DatabaseKafkaSchemaRegistryArgs.__new__(DatabaseKafkaSchemaRegistryArgs)
280
+
281
+ if cluster_id is None and not opts.urn:
282
+ raise TypeError("Missing required property 'cluster_id'")
283
+ __props__.__dict__["cluster_id"] = cluster_id
284
+ if schema is None and not opts.urn:
285
+ raise TypeError("Missing required property 'schema'")
286
+ __props__.__dict__["schema"] = schema
287
+ if schema_type is None and not opts.urn:
288
+ raise TypeError("Missing required property 'schema_type'")
289
+ __props__.__dict__["schema_type"] = schema_type
290
+ if subject_name is None and not opts.urn:
291
+ raise TypeError("Missing required property 'subject_name'")
292
+ __props__.__dict__["subject_name"] = subject_name
293
+ super(DatabaseKafkaSchemaRegistry, __self__).__init__(
294
+ 'digitalocean:index/databaseKafkaSchemaRegistry:DatabaseKafkaSchemaRegistry',
295
+ resource_name,
296
+ __props__,
297
+ opts)
298
+
299
+ @staticmethod
300
+ def get(resource_name: str,
301
+ id: pulumi.Input[str],
302
+ opts: Optional[pulumi.ResourceOptions] = None,
303
+ cluster_id: Optional[pulumi.Input[_builtins.str]] = None,
304
+ schema: Optional[pulumi.Input[_builtins.str]] = None,
305
+ schema_type: Optional[pulumi.Input[_builtins.str]] = None,
306
+ subject_name: Optional[pulumi.Input[_builtins.str]] = None) -> 'DatabaseKafkaSchemaRegistry':
307
+ """
308
+ Get an existing DatabaseKafkaSchemaRegistry resource's state with the given name, id, and optional extra
309
+ properties used to qualify the lookup.
310
+
311
+ :param str resource_name: The unique name of the resulting resource.
312
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
313
+ :param pulumi.ResourceOptions opts: Options for the resource.
314
+ :param pulumi.Input[_builtins.str] cluster_id: The ID of the target Kafka cluster.
315
+ :param pulumi.Input[_builtins.str] schema: The schema definition as a string.
316
+ :param pulumi.Input[_builtins.str] schema_type: The schema type. Available values are: avro, json, or protobuf.
317
+ :param pulumi.Input[_builtins.str] subject_name: The name of the schema subject.
318
+ """
319
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
320
+
321
+ __props__ = _DatabaseKafkaSchemaRegistryState.__new__(_DatabaseKafkaSchemaRegistryState)
322
+
323
+ __props__.__dict__["cluster_id"] = cluster_id
324
+ __props__.__dict__["schema"] = schema
325
+ __props__.__dict__["schema_type"] = schema_type
326
+ __props__.__dict__["subject_name"] = subject_name
327
+ return DatabaseKafkaSchemaRegistry(resource_name, opts=opts, __props__=__props__)
328
+
329
+ @_builtins.property
330
+ @pulumi.getter(name="clusterId")
331
+ def cluster_id(self) -> pulumi.Output[_builtins.str]:
332
+ """
333
+ The ID of the target Kafka cluster.
334
+ """
335
+ return pulumi.get(self, "cluster_id")
336
+
337
+ @_builtins.property
338
+ @pulumi.getter
339
+ def schema(self) -> pulumi.Output[_builtins.str]:
340
+ """
341
+ The schema definition as a string.
342
+ """
343
+ return pulumi.get(self, "schema")
344
+
345
+ @_builtins.property
346
+ @pulumi.getter(name="schemaType")
347
+ def schema_type(self) -> pulumi.Output[_builtins.str]:
348
+ """
349
+ The schema type. Available values are: avro, json, or protobuf.
350
+ """
351
+ return pulumi.get(self, "schema_type")
352
+
353
+ @_builtins.property
354
+ @pulumi.getter(name="subjectName")
355
+ def subject_name(self) -> pulumi.Output[_builtins.str]:
356
+ """
357
+ The name of the schema subject.
358
+ """
359
+ return pulumi.get(self, "subject_name")
360
+