pulumi-digitalocean 4.49.0a1751946418__py3-none-any.whl → 4.50.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.

Files changed (134) hide show
  1. pulumi_digitalocean/__init__.py +81 -1
  2. pulumi_digitalocean/_enums.py +9 -9
  3. pulumi_digitalocean/_inputs.py +11204 -8486
  4. pulumi_digitalocean/app.py +137 -88
  5. pulumi_digitalocean/cdn.py +104 -105
  6. pulumi_digitalocean/certificate.py +137 -138
  7. pulumi_digitalocean/config/__init__.py +1 -1
  8. pulumi_digitalocean/config/__init__.pyi +1 -2
  9. pulumi_digitalocean/config/vars.py +10 -11
  10. pulumi_digitalocean/container_registry.py +88 -89
  11. pulumi_digitalocean/container_registry_docker_credentials.py +70 -71
  12. pulumi_digitalocean/custom_image.py +175 -176
  13. pulumi_digitalocean/database_cluster.py +374 -347
  14. pulumi_digitalocean/database_connection_pool.py +157 -158
  15. pulumi_digitalocean/database_db.py +35 -36
  16. pulumi_digitalocean/database_firewall.py +21 -22
  17. pulumi_digitalocean/database_kafka_config.py +307 -308
  18. pulumi_digitalocean/database_kafka_topic.py +81 -82
  19. pulumi_digitalocean/database_mongodb_config.py +103 -104
  20. pulumi_digitalocean/database_mysql_config.py +477 -478
  21. pulumi_digitalocean/database_online_migration.py +460 -0
  22. pulumi_digitalocean/database_opensearch_config.py +664 -665
  23. pulumi_digitalocean/database_postgresql_config.py +857 -858
  24. pulumi_digitalocean/database_redis_config.py +209 -206
  25. pulumi_digitalocean/database_replica.py +197 -198
  26. pulumi_digitalocean/database_user.py +91 -92
  27. pulumi_digitalocean/database_valkey_config.py +804 -0
  28. pulumi_digitalocean/dns_record.py +180 -181
  29. pulumi_digitalocean/domain.py +53 -54
  30. pulumi_digitalocean/droplet.py +388 -389
  31. pulumi_digitalocean/droplet_autoscale.py +53 -54
  32. pulumi_digitalocean/droplet_snapshot.py +71 -72
  33. pulumi_digitalocean/firewall.py +78 -79
  34. pulumi_digitalocean/floating_ip.py +61 -62
  35. pulumi_digitalocean/floating_ip_assignment.py +35 -36
  36. pulumi_digitalocean/genai_agent.py +452 -453
  37. pulumi_digitalocean/genai_agent_knowledge_base_attachment.py +198 -0
  38. pulumi_digitalocean/genai_agent_route.py +354 -0
  39. pulumi_digitalocean/genai_function.py +464 -0
  40. pulumi_digitalocean/genai_knowledge_base.py +627 -0
  41. pulumi_digitalocean/genai_knowledge_base_data_source.py +220 -0
  42. pulumi_digitalocean/genai_openai_api_key.py +386 -0
  43. pulumi_digitalocean/get_account.py +17 -18
  44. pulumi_digitalocean/get_app.py +27 -28
  45. pulumi_digitalocean/get_certificate.py +21 -22
  46. pulumi_digitalocean/get_container_registry.py +21 -22
  47. pulumi_digitalocean/get_database_ca.py +11 -12
  48. pulumi_digitalocean/get_database_cluster.py +75 -62
  49. pulumi_digitalocean/get_database_connection_pool.py +35 -36
  50. pulumi_digitalocean/get_database_metrics_credentials.py +120 -0
  51. pulumi_digitalocean/get_database_replica.py +45 -46
  52. pulumi_digitalocean/get_database_user.py +26 -27
  53. pulumi_digitalocean/get_domain.py +15 -16
  54. pulumi_digitalocean/get_domains.py +6 -7
  55. pulumi_digitalocean/get_droplet.py +71 -72
  56. pulumi_digitalocean/get_droplet_autoscale.py +22 -23
  57. pulumi_digitalocean/get_droplet_snapshot.py +37 -38
  58. pulumi_digitalocean/get_droplets.py +12 -13
  59. pulumi_digitalocean/get_firewall.py +30 -31
  60. pulumi_digitalocean/get_floating_ip.py +15 -16
  61. pulumi_digitalocean/get_genai_agent.py +89 -90
  62. pulumi_digitalocean/get_genai_agent_versions.py +128 -0
  63. pulumi_digitalocean/get_genai_agents.py +10 -11
  64. pulumi_digitalocean/get_genai_agents_by_openai_api_key.py +97 -0
  65. pulumi_digitalocean/get_genai_knowledge_base.py +259 -0
  66. pulumi_digitalocean/get_genai_knowledge_base_data_sources.py +97 -0
  67. pulumi_digitalocean/get_genai_knowledge_bases.py +113 -0
  68. pulumi_digitalocean/get_genai_openai_api_key.py +152 -0
  69. pulumi_digitalocean/get_genai_openai_api_keys.py +113 -0
  70. pulumi_digitalocean/get_image.py +49 -50
  71. pulumi_digitalocean/get_images.py +6 -7
  72. pulumi_digitalocean/get_kubernetes_cluster.py +53 -54
  73. pulumi_digitalocean/get_kubernetes_versions.py +13 -14
  74. pulumi_digitalocean/get_load_balancer.py +59 -60
  75. pulumi_digitalocean/get_partner_attachment.py +30 -31
  76. pulumi_digitalocean/get_partner_attachment_service_key.py +13 -14
  77. pulumi_digitalocean/get_project.py +31 -32
  78. pulumi_digitalocean/get_projects.py +6 -7
  79. pulumi_digitalocean/get_record.py +31 -32
  80. pulumi_digitalocean/get_records.py +12 -13
  81. pulumi_digitalocean/get_region.py +17 -18
  82. pulumi_digitalocean/get_regions.py +6 -7
  83. pulumi_digitalocean/get_reserved_ip.py +15 -16
  84. pulumi_digitalocean/get_reserved_ipv6.py +15 -16
  85. pulumi_digitalocean/get_sizes.py +6 -7
  86. pulumi_digitalocean/get_spaces_bucket.py +21 -22
  87. pulumi_digitalocean/get_spaces_bucket_object.py +57 -58
  88. pulumi_digitalocean/get_spaces_bucket_objects.py +45 -46
  89. pulumi_digitalocean/get_spaces_buckets.py +6 -7
  90. pulumi_digitalocean/get_spaces_key.py +14 -15
  91. pulumi_digitalocean/get_ssh_key.py +13 -14
  92. pulumi_digitalocean/get_ssh_keys.py +6 -7
  93. pulumi_digitalocean/get_tag.py +21 -22
  94. pulumi_digitalocean/get_tags.py +6 -7
  95. pulumi_digitalocean/get_volume.py +33 -34
  96. pulumi_digitalocean/get_volume_snapshot.py +39 -40
  97. pulumi_digitalocean/get_vpc.py +29 -30
  98. pulumi_digitalocean/get_vpc_nat_gateway.py +33 -34
  99. pulumi_digitalocean/get_vpc_peering.py +23 -24
  100. pulumi_digitalocean/kubernetes_cluster.py +293 -294
  101. pulumi_digitalocean/kubernetes_node_pool.py +168 -169
  102. pulumi_digitalocean/load_balancer.py +374 -375
  103. pulumi_digitalocean/monitor_alert.py +149 -150
  104. pulumi_digitalocean/outputs.py +20079 -12647
  105. pulumi_digitalocean/partner_attachment.py +150 -151
  106. pulumi_digitalocean/project.py +139 -140
  107. pulumi_digitalocean/project_resources.py +35 -36
  108. pulumi_digitalocean/provider.py +84 -85
  109. pulumi_digitalocean/pulumi-plugin.json +1 -1
  110. pulumi_digitalocean/reserved_ip.py +61 -62
  111. pulumi_digitalocean/reserved_ip_assignment.py +35 -36
  112. pulumi_digitalocean/reserved_ipv6.py +53 -54
  113. pulumi_digitalocean/reserved_ipv6_assignment.py +35 -36
  114. pulumi_digitalocean/spaces_bucket.py +105 -106
  115. pulumi_digitalocean/spaces_bucket_cors_configuration.py +38 -39
  116. pulumi_digitalocean/spaces_bucket_logging.py +69 -70
  117. pulumi_digitalocean/spaces_bucket_object.py +282 -283
  118. pulumi_digitalocean/spaces_bucket_policy.py +52 -53
  119. pulumi_digitalocean/spaces_key.py +48 -49
  120. pulumi_digitalocean/ssh_key.py +44 -45
  121. pulumi_digitalocean/tag.py +72 -73
  122. pulumi_digitalocean/uptime_alert.py +106 -107
  123. pulumi_digitalocean/uptime_check.py +86 -87
  124. pulumi_digitalocean/volume.py +181 -182
  125. pulumi_digitalocean/volume_attachment.py +35 -36
  126. pulumi_digitalocean/volume_snapshot.py +88 -89
  127. pulumi_digitalocean/vpc.py +96 -97
  128. pulumi_digitalocean/vpc_nat_gateway.py +152 -153
  129. pulumi_digitalocean/vpc_peering.py +53 -54
  130. {pulumi_digitalocean-4.49.0a1751946418.dist-info → pulumi_digitalocean-4.50.0.dist-info}/METADATA +1 -1
  131. pulumi_digitalocean-4.50.0.dist-info/RECORD +135 -0
  132. pulumi_digitalocean-4.49.0a1751946418.dist-info/RECORD +0 -119
  133. {pulumi_digitalocean-4.49.0a1751946418.dist-info → pulumi_digitalocean-4.50.0.dist-info}/WHEEL +0 -0
  134. {pulumi_digitalocean-4.49.0a1751946418.dist-info → pulumi_digitalocean-4.50.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,464 @@
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__ = ['GenaiFunctionArgs', 'GenaiFunction']
18
+
19
+ @pulumi.input_type
20
+ class GenaiFunctionArgs:
21
+ def __init__(__self__, *,
22
+ agent_id: pulumi.Input[_builtins.str],
23
+ description: pulumi.Input[_builtins.str],
24
+ faas_namespace: pulumi.Input[_builtins.str],
25
+ function_name: pulumi.Input[_builtins.str],
26
+ input_schema: pulumi.Input[_builtins.str],
27
+ faas_name: Optional[pulumi.Input[_builtins.str]] = None,
28
+ output_schema: Optional[pulumi.Input[_builtins.str]] = None):
29
+ """
30
+ The set of arguments for constructing a GenaiFunction resource.
31
+ :param pulumi.Input[_builtins.str] agent_id: The name of the GenAI resource.
32
+ :param pulumi.Input[_builtins.str] description: The region where the GenAI resource will be created.
33
+ :param pulumi.Input[_builtins.str] faas_namespace: The current status of the GenAI resource.
34
+ :param pulumi.Input[_builtins.str] function_name: The creation timestamp of the GenAI resource.
35
+ :param pulumi.Input[_builtins.str] input_schema: The input schema of the GenAI resource.
36
+ :param pulumi.Input[_builtins.str] faas_name: The model to use for the GenAI resource.
37
+ :param pulumi.Input[_builtins.str] output_schema: The output schema of the GenAI resource.
38
+ """
39
+ pulumi.set(__self__, "agent_id", agent_id)
40
+ pulumi.set(__self__, "description", description)
41
+ pulumi.set(__self__, "faas_namespace", faas_namespace)
42
+ pulumi.set(__self__, "function_name", function_name)
43
+ pulumi.set(__self__, "input_schema", input_schema)
44
+ if faas_name is not None:
45
+ pulumi.set(__self__, "faas_name", faas_name)
46
+ if output_schema is not None:
47
+ pulumi.set(__self__, "output_schema", output_schema)
48
+
49
+ @_builtins.property
50
+ @pulumi.getter(name="agentId")
51
+ def agent_id(self) -> pulumi.Input[_builtins.str]:
52
+ """
53
+ The name of the GenAI resource.
54
+ """
55
+ return pulumi.get(self, "agent_id")
56
+
57
+ @agent_id.setter
58
+ def agent_id(self, value: pulumi.Input[_builtins.str]):
59
+ pulumi.set(self, "agent_id", value)
60
+
61
+ @_builtins.property
62
+ @pulumi.getter
63
+ def description(self) -> pulumi.Input[_builtins.str]:
64
+ """
65
+ The region where the GenAI resource will be created.
66
+ """
67
+ return pulumi.get(self, "description")
68
+
69
+ @description.setter
70
+ def description(self, value: pulumi.Input[_builtins.str]):
71
+ pulumi.set(self, "description", value)
72
+
73
+ @_builtins.property
74
+ @pulumi.getter(name="faasNamespace")
75
+ def faas_namespace(self) -> pulumi.Input[_builtins.str]:
76
+ """
77
+ The current status of the GenAI resource.
78
+ """
79
+ return pulumi.get(self, "faas_namespace")
80
+
81
+ @faas_namespace.setter
82
+ def faas_namespace(self, value: pulumi.Input[_builtins.str]):
83
+ pulumi.set(self, "faas_namespace", value)
84
+
85
+ @_builtins.property
86
+ @pulumi.getter(name="functionName")
87
+ def function_name(self) -> pulumi.Input[_builtins.str]:
88
+ """
89
+ The creation timestamp of the GenAI resource.
90
+ """
91
+ return pulumi.get(self, "function_name")
92
+
93
+ @function_name.setter
94
+ def function_name(self, value: pulumi.Input[_builtins.str]):
95
+ pulumi.set(self, "function_name", value)
96
+
97
+ @_builtins.property
98
+ @pulumi.getter(name="inputSchema")
99
+ def input_schema(self) -> pulumi.Input[_builtins.str]:
100
+ """
101
+ The input schema of the GenAI resource.
102
+ """
103
+ return pulumi.get(self, "input_schema")
104
+
105
+ @input_schema.setter
106
+ def input_schema(self, value: pulumi.Input[_builtins.str]):
107
+ pulumi.set(self, "input_schema", value)
108
+
109
+ @_builtins.property
110
+ @pulumi.getter(name="faasName")
111
+ def faas_name(self) -> Optional[pulumi.Input[_builtins.str]]:
112
+ """
113
+ The model to use for the GenAI resource.
114
+ """
115
+ return pulumi.get(self, "faas_name")
116
+
117
+ @faas_name.setter
118
+ def faas_name(self, value: Optional[pulumi.Input[_builtins.str]]):
119
+ pulumi.set(self, "faas_name", value)
120
+
121
+ @_builtins.property
122
+ @pulumi.getter(name="outputSchema")
123
+ def output_schema(self) -> Optional[pulumi.Input[_builtins.str]]:
124
+ """
125
+ The output schema of the GenAI resource.
126
+ """
127
+ return pulumi.get(self, "output_schema")
128
+
129
+ @output_schema.setter
130
+ def output_schema(self, value: Optional[pulumi.Input[_builtins.str]]):
131
+ pulumi.set(self, "output_schema", value)
132
+
133
+
134
+ @pulumi.input_type
135
+ class _GenaiFunctionState:
136
+ def __init__(__self__, *,
137
+ agent_id: Optional[pulumi.Input[_builtins.str]] = None,
138
+ description: Optional[pulumi.Input[_builtins.str]] = None,
139
+ faas_name: Optional[pulumi.Input[_builtins.str]] = None,
140
+ faas_namespace: Optional[pulumi.Input[_builtins.str]] = None,
141
+ function_name: Optional[pulumi.Input[_builtins.str]] = None,
142
+ function_uuid: Optional[pulumi.Input[_builtins.str]] = None,
143
+ input_schema: Optional[pulumi.Input[_builtins.str]] = None,
144
+ output_schema: Optional[pulumi.Input[_builtins.str]] = None):
145
+ """
146
+ Input properties used for looking up and filtering GenaiFunction resources.
147
+ :param pulumi.Input[_builtins.str] agent_id: The name of the GenAI resource.
148
+ :param pulumi.Input[_builtins.str] description: The region where the GenAI resource will be created.
149
+ :param pulumi.Input[_builtins.str] faas_name: The model to use for the GenAI resource.
150
+ :param pulumi.Input[_builtins.str] faas_namespace: The current status of the GenAI resource.
151
+ :param pulumi.Input[_builtins.str] function_name: The creation timestamp of the GenAI resource.
152
+ :param pulumi.Input[_builtins.str] function_uuid: The unique identifier of the GenAI function.
153
+ :param pulumi.Input[_builtins.str] input_schema: The input schema of the GenAI resource.
154
+ :param pulumi.Input[_builtins.str] output_schema: The output schema of the GenAI resource.
155
+ """
156
+ if agent_id is not None:
157
+ pulumi.set(__self__, "agent_id", agent_id)
158
+ if description is not None:
159
+ pulumi.set(__self__, "description", description)
160
+ if faas_name is not None:
161
+ pulumi.set(__self__, "faas_name", faas_name)
162
+ if faas_namespace is not None:
163
+ pulumi.set(__self__, "faas_namespace", faas_namespace)
164
+ if function_name is not None:
165
+ pulumi.set(__self__, "function_name", function_name)
166
+ if function_uuid is not None:
167
+ pulumi.set(__self__, "function_uuid", function_uuid)
168
+ if input_schema is not None:
169
+ pulumi.set(__self__, "input_schema", input_schema)
170
+ if output_schema is not None:
171
+ pulumi.set(__self__, "output_schema", output_schema)
172
+
173
+ @_builtins.property
174
+ @pulumi.getter(name="agentId")
175
+ def agent_id(self) -> Optional[pulumi.Input[_builtins.str]]:
176
+ """
177
+ The name of the GenAI resource.
178
+ """
179
+ return pulumi.get(self, "agent_id")
180
+
181
+ @agent_id.setter
182
+ def agent_id(self, value: Optional[pulumi.Input[_builtins.str]]):
183
+ pulumi.set(self, "agent_id", value)
184
+
185
+ @_builtins.property
186
+ @pulumi.getter
187
+ def description(self) -> Optional[pulumi.Input[_builtins.str]]:
188
+ """
189
+ The region where the GenAI resource will be created.
190
+ """
191
+ return pulumi.get(self, "description")
192
+
193
+ @description.setter
194
+ def description(self, value: Optional[pulumi.Input[_builtins.str]]):
195
+ pulumi.set(self, "description", value)
196
+
197
+ @_builtins.property
198
+ @pulumi.getter(name="faasName")
199
+ def faas_name(self) -> Optional[pulumi.Input[_builtins.str]]:
200
+ """
201
+ The model to use for the GenAI resource.
202
+ """
203
+ return pulumi.get(self, "faas_name")
204
+
205
+ @faas_name.setter
206
+ def faas_name(self, value: Optional[pulumi.Input[_builtins.str]]):
207
+ pulumi.set(self, "faas_name", value)
208
+
209
+ @_builtins.property
210
+ @pulumi.getter(name="faasNamespace")
211
+ def faas_namespace(self) -> Optional[pulumi.Input[_builtins.str]]:
212
+ """
213
+ The current status of the GenAI resource.
214
+ """
215
+ return pulumi.get(self, "faas_namespace")
216
+
217
+ @faas_namespace.setter
218
+ def faas_namespace(self, value: Optional[pulumi.Input[_builtins.str]]):
219
+ pulumi.set(self, "faas_namespace", value)
220
+
221
+ @_builtins.property
222
+ @pulumi.getter(name="functionName")
223
+ def function_name(self) -> Optional[pulumi.Input[_builtins.str]]:
224
+ """
225
+ The creation timestamp of the GenAI resource.
226
+ """
227
+ return pulumi.get(self, "function_name")
228
+
229
+ @function_name.setter
230
+ def function_name(self, value: Optional[pulumi.Input[_builtins.str]]):
231
+ pulumi.set(self, "function_name", value)
232
+
233
+ @_builtins.property
234
+ @pulumi.getter(name="functionUuid")
235
+ def function_uuid(self) -> Optional[pulumi.Input[_builtins.str]]:
236
+ """
237
+ The unique identifier of the GenAI function.
238
+ """
239
+ return pulumi.get(self, "function_uuid")
240
+
241
+ @function_uuid.setter
242
+ def function_uuid(self, value: Optional[pulumi.Input[_builtins.str]]):
243
+ pulumi.set(self, "function_uuid", value)
244
+
245
+ @_builtins.property
246
+ @pulumi.getter(name="inputSchema")
247
+ def input_schema(self) -> Optional[pulumi.Input[_builtins.str]]:
248
+ """
249
+ The input schema of the GenAI resource.
250
+ """
251
+ return pulumi.get(self, "input_schema")
252
+
253
+ @input_schema.setter
254
+ def input_schema(self, value: Optional[pulumi.Input[_builtins.str]]):
255
+ pulumi.set(self, "input_schema", value)
256
+
257
+ @_builtins.property
258
+ @pulumi.getter(name="outputSchema")
259
+ def output_schema(self) -> Optional[pulumi.Input[_builtins.str]]:
260
+ """
261
+ The output schema of the GenAI resource.
262
+ """
263
+ return pulumi.get(self, "output_schema")
264
+
265
+ @output_schema.setter
266
+ def output_schema(self, value: Optional[pulumi.Input[_builtins.str]]):
267
+ pulumi.set(self, "output_schema", value)
268
+
269
+
270
+ @pulumi.type_token("digitalocean:index/genaiFunction:GenaiFunction")
271
+ class GenaiFunction(pulumi.CustomResource):
272
+ @overload
273
+ def __init__(__self__,
274
+ resource_name: str,
275
+ opts: Optional[pulumi.ResourceOptions] = None,
276
+ agent_id: Optional[pulumi.Input[_builtins.str]] = None,
277
+ description: Optional[pulumi.Input[_builtins.str]] = None,
278
+ faas_name: Optional[pulumi.Input[_builtins.str]] = None,
279
+ faas_namespace: Optional[pulumi.Input[_builtins.str]] = None,
280
+ function_name: Optional[pulumi.Input[_builtins.str]] = None,
281
+ input_schema: Optional[pulumi.Input[_builtins.str]] = None,
282
+ output_schema: Optional[pulumi.Input[_builtins.str]] = None,
283
+ __props__=None):
284
+ """
285
+ Create a GenaiFunction resource with the given unique name, props, and options.
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] agent_id: The name of the GenAI resource.
289
+ :param pulumi.Input[_builtins.str] description: The region where the GenAI resource will be created.
290
+ :param pulumi.Input[_builtins.str] faas_name: The model to use for the GenAI resource.
291
+ :param pulumi.Input[_builtins.str] faas_namespace: The current status of the GenAI resource.
292
+ :param pulumi.Input[_builtins.str] function_name: The creation timestamp of the GenAI resource.
293
+ :param pulumi.Input[_builtins.str] input_schema: The input schema of the GenAI resource.
294
+ :param pulumi.Input[_builtins.str] output_schema: The output schema of the GenAI resource.
295
+ """
296
+ ...
297
+ @overload
298
+ def __init__(__self__,
299
+ resource_name: str,
300
+ args: GenaiFunctionArgs,
301
+ opts: Optional[pulumi.ResourceOptions] = None):
302
+ """
303
+ Create a GenaiFunction resource with the given unique name, props, and options.
304
+ :param str resource_name: The name of the resource.
305
+ :param GenaiFunctionArgs args: The arguments to use to populate this resource's properties.
306
+ :param pulumi.ResourceOptions opts: Options for the resource.
307
+ """
308
+ ...
309
+ def __init__(__self__, resource_name: str, *args, **kwargs):
310
+ resource_args, opts = _utilities.get_resource_args_opts(GenaiFunctionArgs, pulumi.ResourceOptions, *args, **kwargs)
311
+ if resource_args is not None:
312
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
313
+ else:
314
+ __self__._internal_init(resource_name, *args, **kwargs)
315
+
316
+ def _internal_init(__self__,
317
+ resource_name: str,
318
+ opts: Optional[pulumi.ResourceOptions] = None,
319
+ agent_id: Optional[pulumi.Input[_builtins.str]] = None,
320
+ description: Optional[pulumi.Input[_builtins.str]] = None,
321
+ faas_name: Optional[pulumi.Input[_builtins.str]] = None,
322
+ faas_namespace: Optional[pulumi.Input[_builtins.str]] = None,
323
+ function_name: Optional[pulumi.Input[_builtins.str]] = None,
324
+ input_schema: Optional[pulumi.Input[_builtins.str]] = None,
325
+ output_schema: Optional[pulumi.Input[_builtins.str]] = None,
326
+ __props__=None):
327
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
328
+ if not isinstance(opts, pulumi.ResourceOptions):
329
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
330
+ if opts.id is None:
331
+ if __props__ is not None:
332
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
333
+ __props__ = GenaiFunctionArgs.__new__(GenaiFunctionArgs)
334
+
335
+ if agent_id is None and not opts.urn:
336
+ raise TypeError("Missing required property 'agent_id'")
337
+ __props__.__dict__["agent_id"] = agent_id
338
+ if description is None and not opts.urn:
339
+ raise TypeError("Missing required property 'description'")
340
+ __props__.__dict__["description"] = description
341
+ __props__.__dict__["faas_name"] = faas_name
342
+ if faas_namespace is None and not opts.urn:
343
+ raise TypeError("Missing required property 'faas_namespace'")
344
+ __props__.__dict__["faas_namespace"] = faas_namespace
345
+ if function_name is None and not opts.urn:
346
+ raise TypeError("Missing required property 'function_name'")
347
+ __props__.__dict__["function_name"] = function_name
348
+ if input_schema is None and not opts.urn:
349
+ raise TypeError("Missing required property 'input_schema'")
350
+ __props__.__dict__["input_schema"] = input_schema
351
+ __props__.__dict__["output_schema"] = output_schema
352
+ __props__.__dict__["function_uuid"] = None
353
+ super(GenaiFunction, __self__).__init__(
354
+ 'digitalocean:index/genaiFunction:GenaiFunction',
355
+ resource_name,
356
+ __props__,
357
+ opts)
358
+
359
+ @staticmethod
360
+ def get(resource_name: str,
361
+ id: pulumi.Input[str],
362
+ opts: Optional[pulumi.ResourceOptions] = None,
363
+ agent_id: Optional[pulumi.Input[_builtins.str]] = None,
364
+ description: Optional[pulumi.Input[_builtins.str]] = None,
365
+ faas_name: Optional[pulumi.Input[_builtins.str]] = None,
366
+ faas_namespace: Optional[pulumi.Input[_builtins.str]] = None,
367
+ function_name: Optional[pulumi.Input[_builtins.str]] = None,
368
+ function_uuid: Optional[pulumi.Input[_builtins.str]] = None,
369
+ input_schema: Optional[pulumi.Input[_builtins.str]] = None,
370
+ output_schema: Optional[pulumi.Input[_builtins.str]] = None) -> 'GenaiFunction':
371
+ """
372
+ Get an existing GenaiFunction resource's state with the given name, id, and optional extra
373
+ properties used to qualify the lookup.
374
+
375
+ :param str resource_name: The unique name of the resulting resource.
376
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
377
+ :param pulumi.ResourceOptions opts: Options for the resource.
378
+ :param pulumi.Input[_builtins.str] agent_id: The name of the GenAI resource.
379
+ :param pulumi.Input[_builtins.str] description: The region where the GenAI resource will be created.
380
+ :param pulumi.Input[_builtins.str] faas_name: The model to use for the GenAI resource.
381
+ :param pulumi.Input[_builtins.str] faas_namespace: The current status of the GenAI resource.
382
+ :param pulumi.Input[_builtins.str] function_name: The creation timestamp of the GenAI resource.
383
+ :param pulumi.Input[_builtins.str] function_uuid: The unique identifier of the GenAI function.
384
+ :param pulumi.Input[_builtins.str] input_schema: The input schema of the GenAI resource.
385
+ :param pulumi.Input[_builtins.str] output_schema: The output schema of the GenAI resource.
386
+ """
387
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
388
+
389
+ __props__ = _GenaiFunctionState.__new__(_GenaiFunctionState)
390
+
391
+ __props__.__dict__["agent_id"] = agent_id
392
+ __props__.__dict__["description"] = description
393
+ __props__.__dict__["faas_name"] = faas_name
394
+ __props__.__dict__["faas_namespace"] = faas_namespace
395
+ __props__.__dict__["function_name"] = function_name
396
+ __props__.__dict__["function_uuid"] = function_uuid
397
+ __props__.__dict__["input_schema"] = input_schema
398
+ __props__.__dict__["output_schema"] = output_schema
399
+ return GenaiFunction(resource_name, opts=opts, __props__=__props__)
400
+
401
+ @_builtins.property
402
+ @pulumi.getter(name="agentId")
403
+ def agent_id(self) -> pulumi.Output[_builtins.str]:
404
+ """
405
+ The name of the GenAI resource.
406
+ """
407
+ return pulumi.get(self, "agent_id")
408
+
409
+ @_builtins.property
410
+ @pulumi.getter
411
+ def description(self) -> pulumi.Output[_builtins.str]:
412
+ """
413
+ The region where the GenAI resource will be created.
414
+ """
415
+ return pulumi.get(self, "description")
416
+
417
+ @_builtins.property
418
+ @pulumi.getter(name="faasName")
419
+ def faas_name(self) -> pulumi.Output[Optional[_builtins.str]]:
420
+ """
421
+ The model to use for the GenAI resource.
422
+ """
423
+ return pulumi.get(self, "faas_name")
424
+
425
+ @_builtins.property
426
+ @pulumi.getter(name="faasNamespace")
427
+ def faas_namespace(self) -> pulumi.Output[_builtins.str]:
428
+ """
429
+ The current status of the GenAI resource.
430
+ """
431
+ return pulumi.get(self, "faas_namespace")
432
+
433
+ @_builtins.property
434
+ @pulumi.getter(name="functionName")
435
+ def function_name(self) -> pulumi.Output[_builtins.str]:
436
+ """
437
+ The creation timestamp of the GenAI resource.
438
+ """
439
+ return pulumi.get(self, "function_name")
440
+
441
+ @_builtins.property
442
+ @pulumi.getter(name="functionUuid")
443
+ def function_uuid(self) -> pulumi.Output[_builtins.str]:
444
+ """
445
+ The unique identifier of the GenAI function.
446
+ """
447
+ return pulumi.get(self, "function_uuid")
448
+
449
+ @_builtins.property
450
+ @pulumi.getter(name="inputSchema")
451
+ def input_schema(self) -> pulumi.Output[_builtins.str]:
452
+ """
453
+ The input schema of the GenAI resource.
454
+ """
455
+ return pulumi.get(self, "input_schema")
456
+
457
+ @_builtins.property
458
+ @pulumi.getter(name="outputSchema")
459
+ def output_schema(self) -> pulumi.Output[Optional[_builtins.str]]:
460
+ """
461
+ The output schema of the GenAI resource.
462
+ """
463
+ return pulumi.get(self, "output_schema")
464
+