pulumi-digitalocean 4.46.0a1747979086__py3-none-any.whl → 4.56.0a1766428645__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 (154) hide show
  1. pulumi_digitalocean/__init__.py +195 -2
  2. pulumi_digitalocean/_enums.py +10 -10
  3. pulumi_digitalocean/_inputs.py +16851 -4937
  4. pulumi_digitalocean/_utilities.py +1 -1
  5. pulumi_digitalocean/app.py +237 -89
  6. pulumi_digitalocean/byoip_prefix.py +452 -0
  7. pulumi_digitalocean/cdn.py +105 -106
  8. pulumi_digitalocean/certificate.py +138 -139
  9. pulumi_digitalocean/config/__init__.py +2 -2
  10. pulumi_digitalocean/config/__init__.pyi +2 -3
  11. pulumi_digitalocean/config/vars.py +11 -12
  12. pulumi_digitalocean/container_registries.py +285 -0
  13. pulumi_digitalocean/container_registry.py +89 -90
  14. pulumi_digitalocean/container_registry_docker_credentials.py +83 -84
  15. pulumi_digitalocean/custom_image.py +176 -177
  16. pulumi_digitalocean/database_cluster.py +375 -348
  17. pulumi_digitalocean/database_connection_pool.py +158 -159
  18. pulumi_digitalocean/database_db.py +36 -37
  19. pulumi_digitalocean/database_firewall.py +22 -23
  20. pulumi_digitalocean/database_kafka_config.py +308 -309
  21. pulumi_digitalocean/database_kafka_schema_registry.py +360 -0
  22. pulumi_digitalocean/database_kafka_topic.py +82 -83
  23. pulumi_digitalocean/database_logsink_opensearch.py +680 -0
  24. pulumi_digitalocean/database_logsink_rsyslog.py +842 -0
  25. pulumi_digitalocean/database_mongodb_config.py +104 -105
  26. pulumi_digitalocean/database_mysql_config.py +478 -479
  27. pulumi_digitalocean/database_online_migration.py +460 -0
  28. pulumi_digitalocean/database_opensearch_config.py +665 -666
  29. pulumi_digitalocean/database_postgresql_config.py +858 -859
  30. pulumi_digitalocean/database_redis_config.py +210 -207
  31. pulumi_digitalocean/database_replica.py +198 -199
  32. pulumi_digitalocean/database_user.py +92 -93
  33. pulumi_digitalocean/database_valkey_config.py +776 -0
  34. pulumi_digitalocean/dns_record.py +181 -182
  35. pulumi_digitalocean/domain.py +54 -55
  36. pulumi_digitalocean/droplet.py +389 -390
  37. pulumi_digitalocean/droplet_autoscale.py +54 -55
  38. pulumi_digitalocean/droplet_snapshot.py +72 -73
  39. pulumi_digitalocean/firewall.py +79 -80
  40. pulumi_digitalocean/floating_ip.py +62 -63
  41. pulumi_digitalocean/floating_ip_assignment.py +36 -37
  42. pulumi_digitalocean/genai_agent.py +1903 -0
  43. pulumi_digitalocean/genai_agent_knowledge_base_attachment.py +198 -0
  44. pulumi_digitalocean/genai_agent_route.py +354 -0
  45. pulumi_digitalocean/genai_function.py +464 -0
  46. pulumi_digitalocean/genai_indexing_job_cancel.py +542 -0
  47. pulumi_digitalocean/genai_knowledge_base.py +627 -0
  48. pulumi_digitalocean/genai_knowledge_base_data_source.py +220 -0
  49. pulumi_digitalocean/genai_openai_api_key.py +386 -0
  50. pulumi_digitalocean/get_account.py +18 -19
  51. pulumi_digitalocean/get_app.py +28 -29
  52. pulumi_digitalocean/get_byoip_prefix.py +214 -0
  53. pulumi_digitalocean/get_byoip_prefix_resources.py +150 -0
  54. pulumi_digitalocean/get_certificate.py +22 -23
  55. pulumi_digitalocean/get_container_registries.py +151 -0
  56. pulumi_digitalocean/get_container_registry.py +22 -23
  57. pulumi_digitalocean/get_database_ca.py +12 -13
  58. pulumi_digitalocean/get_database_cluster.py +76 -63
  59. pulumi_digitalocean/get_database_connection_pool.py +36 -37
  60. pulumi_digitalocean/get_database_metrics_credentials.py +120 -0
  61. pulumi_digitalocean/get_database_replica.py +46 -47
  62. pulumi_digitalocean/get_database_user.py +27 -28
  63. pulumi_digitalocean/get_domain.py +16 -17
  64. pulumi_digitalocean/get_domains.py +7 -8
  65. pulumi_digitalocean/get_droplet.py +72 -73
  66. pulumi_digitalocean/get_droplet_autoscale.py +23 -24
  67. pulumi_digitalocean/get_droplet_snapshot.py +38 -39
  68. pulumi_digitalocean/get_droplets.py +13 -14
  69. pulumi_digitalocean/get_firewall.py +31 -32
  70. pulumi_digitalocean/get_floating_ip.py +16 -17
  71. pulumi_digitalocean/get_genai_agent.py +572 -0
  72. pulumi_digitalocean/get_genai_agent_versions.py +128 -0
  73. pulumi_digitalocean/get_genai_agents.py +128 -0
  74. pulumi_digitalocean/get_genai_agents_by_openai_api_key.py +97 -0
  75. pulumi_digitalocean/get_genai_indexing_job.py +239 -0
  76. pulumi_digitalocean/get_genai_indexing_job_data_sources.py +97 -0
  77. pulumi_digitalocean/get_genai_knowledge_base.py +259 -0
  78. pulumi_digitalocean/get_genai_knowledge_base_data_sources.py +97 -0
  79. pulumi_digitalocean/get_genai_knowledge_base_indexing_jobs.py +108 -0
  80. pulumi_digitalocean/get_genai_knowledge_bases.py +113 -0
  81. pulumi_digitalocean/get_genai_models.py +113 -0
  82. pulumi_digitalocean/get_genai_openai_api_key.py +152 -0
  83. pulumi_digitalocean/get_genai_openai_api_keys.py +113 -0
  84. pulumi_digitalocean/get_genai_regions.py +113 -0
  85. pulumi_digitalocean/get_image.py +50 -51
  86. pulumi_digitalocean/get_images.py +7 -8
  87. pulumi_digitalocean/get_kubernetes_cluster.py +117 -58
  88. pulumi_digitalocean/get_kubernetes_versions.py +14 -15
  89. pulumi_digitalocean/get_load_balancer.py +60 -61
  90. pulumi_digitalocean/get_nfs.py +205 -0
  91. pulumi_digitalocean/get_nfs_snapshot.py +188 -0
  92. pulumi_digitalocean/get_partner_attachment.py +61 -25
  93. pulumi_digitalocean/get_partner_attachment_service_key.py +118 -0
  94. pulumi_digitalocean/get_project.py +32 -33
  95. pulumi_digitalocean/get_projects.py +7 -8
  96. pulumi_digitalocean/get_record.py +32 -33
  97. pulumi_digitalocean/get_records.py +13 -14
  98. pulumi_digitalocean/get_region.py +18 -19
  99. pulumi_digitalocean/get_regions.py +7 -8
  100. pulumi_digitalocean/get_reserved_ip.py +16 -17
  101. pulumi_digitalocean/get_reserved_ipv6.py +16 -17
  102. pulumi_digitalocean/get_sizes.py +141 -8
  103. pulumi_digitalocean/get_spaces_bucket.py +22 -23
  104. pulumi_digitalocean/get_spaces_bucket_object.py +58 -59
  105. pulumi_digitalocean/get_spaces_bucket_objects.py +46 -47
  106. pulumi_digitalocean/get_spaces_buckets.py +7 -8
  107. pulumi_digitalocean/get_spaces_key.py +15 -16
  108. pulumi_digitalocean/get_ssh_key.py +14 -15
  109. pulumi_digitalocean/get_ssh_keys.py +7 -8
  110. pulumi_digitalocean/get_tag.py +22 -23
  111. pulumi_digitalocean/get_tags.py +7 -8
  112. pulumi_digitalocean/get_volume.py +34 -35
  113. pulumi_digitalocean/get_volume_snapshot.py +40 -41
  114. pulumi_digitalocean/get_vpc.py +30 -31
  115. pulumi_digitalocean/get_vpc_nat_gateway.py +263 -0
  116. pulumi_digitalocean/get_vpc_peering.py +24 -25
  117. pulumi_digitalocean/kubernetes_cluster.py +483 -296
  118. pulumi_digitalocean/kubernetes_node_pool.py +169 -170
  119. pulumi_digitalocean/load_balancer.py +375 -376
  120. pulumi_digitalocean/monitor_alert.py +150 -151
  121. pulumi_digitalocean/nfs.py +481 -0
  122. pulumi_digitalocean/nfs_attachment.py +289 -0
  123. pulumi_digitalocean/nfs_snapshot.py +379 -0
  124. pulumi_digitalocean/outputs.py +26671 -7785
  125. pulumi_digitalocean/partner_attachment.py +231 -110
  126. pulumi_digitalocean/project.py +140 -141
  127. pulumi_digitalocean/project_resources.py +36 -37
  128. pulumi_digitalocean/provider.py +85 -86
  129. pulumi_digitalocean/pulumi-plugin.json +1 -1
  130. pulumi_digitalocean/reserved_ip.py +62 -63
  131. pulumi_digitalocean/reserved_ip_assignment.py +36 -37
  132. pulumi_digitalocean/reserved_ipv6.py +64 -65
  133. pulumi_digitalocean/reserved_ipv6_assignment.py +36 -37
  134. pulumi_digitalocean/spaces_bucket.py +106 -107
  135. pulumi_digitalocean/spaces_bucket_cors_configuration.py +39 -40
  136. pulumi_digitalocean/spaces_bucket_logging.py +70 -71
  137. pulumi_digitalocean/spaces_bucket_object.py +283 -284
  138. pulumi_digitalocean/spaces_bucket_policy.py +53 -54
  139. pulumi_digitalocean/spaces_key.py +49 -50
  140. pulumi_digitalocean/ssh_key.py +45 -46
  141. pulumi_digitalocean/tag.py +73 -74
  142. pulumi_digitalocean/uptime_alert.py +107 -108
  143. pulumi_digitalocean/uptime_check.py +87 -88
  144. pulumi_digitalocean/volume.py +182 -183
  145. pulumi_digitalocean/volume_attachment.py +36 -37
  146. pulumi_digitalocean/volume_snapshot.py +89 -90
  147. pulumi_digitalocean/vpc.py +97 -98
  148. pulumi_digitalocean/vpc_nat_gateway.py +722 -0
  149. pulumi_digitalocean/vpc_peering.py +54 -59
  150. {pulumi_digitalocean-4.46.0a1747979086.dist-info → pulumi_digitalocean-4.56.0a1766428645.dist-info}/METADATA +1 -1
  151. pulumi_digitalocean-4.56.0a1766428645.dist-info/RECORD +154 -0
  152. {pulumi_digitalocean-4.46.0a1747979086.dist-info → pulumi_digitalocean-4.56.0a1766428645.dist-info}/WHEEL +1 -1
  153. pulumi_digitalocean-4.46.0a1747979086.dist-info/RECORD +0 -113
  154. {pulumi_digitalocean-4.46.0a1747979086.dist-info → pulumi_digitalocean-4.56.0a1766428645.dist-info}/top_level.txt +0 -0
@@ -1,9 +1,8 @@
1
1
  # coding=utf-8
2
- # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
- import builtins
6
- import copy
5
+ import builtins as _builtins
7
6
  import warnings
8
7
  import sys
9
8
  import pulumi
@@ -114,145 +113,145 @@ class GetLoadBalancerResult:
114
113
  raise TypeError("Expected argument 'vpc_uuid' to be a str")
115
114
  pulumi.set(__self__, "vpc_uuid", vpc_uuid)
116
115
 
117
- @property
116
+ @_builtins.property
118
117
  @pulumi.getter
119
118
  @_utilities.deprecated("""This field has been deprecated. You can no longer specify an algorithm for load balancers.""")
120
- def algorithm(self) -> builtins.str:
119
+ def algorithm(self) -> _builtins.str:
121
120
  return pulumi.get(self, "algorithm")
122
121
 
123
- @property
122
+ @_builtins.property
124
123
  @pulumi.getter(name="disableLetsEncryptDnsRecords")
125
- def disable_lets_encrypt_dns_records(self) -> builtins.bool:
124
+ def disable_lets_encrypt_dns_records(self) -> _builtins.bool:
126
125
  return pulumi.get(self, "disable_lets_encrypt_dns_records")
127
126
 
128
- @property
127
+ @_builtins.property
129
128
  @pulumi.getter
130
129
  def domains(self) -> Sequence['outputs.GetLoadBalancerDomainResult']:
131
130
  return pulumi.get(self, "domains")
132
131
 
133
- @property
132
+ @_builtins.property
134
133
  @pulumi.getter(name="dropletIds")
135
- def droplet_ids(self) -> Sequence[builtins.int]:
134
+ def droplet_ids(self) -> Sequence[_builtins.int]:
136
135
  return pulumi.get(self, "droplet_ids")
137
136
 
138
- @property
137
+ @_builtins.property
139
138
  @pulumi.getter(name="dropletTag")
140
- def droplet_tag(self) -> builtins.str:
139
+ def droplet_tag(self) -> _builtins.str:
141
140
  return pulumi.get(self, "droplet_tag")
142
141
 
143
- @property
142
+ @_builtins.property
144
143
  @pulumi.getter(name="enableBackendKeepalive")
145
- def enable_backend_keepalive(self) -> builtins.bool:
144
+ def enable_backend_keepalive(self) -> _builtins.bool:
146
145
  return pulumi.get(self, "enable_backend_keepalive")
147
146
 
148
- @property
147
+ @_builtins.property
149
148
  @pulumi.getter(name="enableProxyProtocol")
150
- def enable_proxy_protocol(self) -> builtins.bool:
149
+ def enable_proxy_protocol(self) -> _builtins.bool:
151
150
  return pulumi.get(self, "enable_proxy_protocol")
152
151
 
153
- @property
152
+ @_builtins.property
154
153
  @pulumi.getter
155
154
  def firewalls(self) -> Sequence['outputs.GetLoadBalancerFirewallResult']:
156
155
  return pulumi.get(self, "firewalls")
157
156
 
158
- @property
157
+ @_builtins.property
159
158
  @pulumi.getter(name="forwardingRules")
160
159
  def forwarding_rules(self) -> Sequence['outputs.GetLoadBalancerForwardingRuleResult']:
161
160
  return pulumi.get(self, "forwarding_rules")
162
161
 
163
- @property
162
+ @_builtins.property
164
163
  @pulumi.getter(name="glbSettings")
165
164
  def glb_settings(self) -> Sequence['outputs.GetLoadBalancerGlbSettingResult']:
166
165
  return pulumi.get(self, "glb_settings")
167
166
 
168
- @property
167
+ @_builtins.property
169
168
  @pulumi.getter
170
169
  def healthchecks(self) -> Sequence['outputs.GetLoadBalancerHealthcheckResult']:
171
170
  return pulumi.get(self, "healthchecks")
172
171
 
173
- @property
172
+ @_builtins.property
174
173
  @pulumi.getter(name="httpIdleTimeoutSeconds")
175
- def http_idle_timeout_seconds(self) -> builtins.int:
174
+ def http_idle_timeout_seconds(self) -> _builtins.int:
176
175
  return pulumi.get(self, "http_idle_timeout_seconds")
177
176
 
178
- @property
177
+ @_builtins.property
179
178
  @pulumi.getter
180
- def id(self) -> Optional[builtins.str]:
179
+ def id(self) -> Optional[_builtins.str]:
181
180
  return pulumi.get(self, "id")
182
181
 
183
- @property
182
+ @_builtins.property
184
183
  @pulumi.getter
185
- def ip(self) -> builtins.str:
184
+ def ip(self) -> _builtins.str:
186
185
  return pulumi.get(self, "ip")
187
186
 
188
- @property
187
+ @_builtins.property
189
188
  @pulumi.getter
190
- def ipv6(self) -> builtins.str:
189
+ def ipv6(self) -> _builtins.str:
191
190
  return pulumi.get(self, "ipv6")
192
191
 
193
- @property
192
+ @_builtins.property
194
193
  @pulumi.getter(name="loadBalancerUrn")
195
- def load_balancer_urn(self) -> builtins.str:
194
+ def load_balancer_urn(self) -> _builtins.str:
196
195
  return pulumi.get(self, "load_balancer_urn")
197
196
 
198
- @property
197
+ @_builtins.property
199
198
  @pulumi.getter
200
- def name(self) -> Optional[builtins.str]:
199
+ def name(self) -> Optional[_builtins.str]:
201
200
  return pulumi.get(self, "name")
202
201
 
203
- @property
202
+ @_builtins.property
204
203
  @pulumi.getter
205
- def network(self) -> builtins.str:
204
+ def network(self) -> _builtins.str:
206
205
  return pulumi.get(self, "network")
207
206
 
208
- @property
207
+ @_builtins.property
209
208
  @pulumi.getter(name="projectId")
210
- def project_id(self) -> builtins.str:
209
+ def project_id(self) -> _builtins.str:
211
210
  return pulumi.get(self, "project_id")
212
211
 
213
- @property
212
+ @_builtins.property
214
213
  @pulumi.getter(name="redirectHttpToHttps")
215
- def redirect_http_to_https(self) -> builtins.bool:
214
+ def redirect_http_to_https(self) -> _builtins.bool:
216
215
  return pulumi.get(self, "redirect_http_to_https")
217
216
 
218
- @property
217
+ @_builtins.property
219
218
  @pulumi.getter
220
- def region(self) -> builtins.str:
219
+ def region(self) -> _builtins.str:
221
220
  return pulumi.get(self, "region")
222
221
 
223
- @property
222
+ @_builtins.property
224
223
  @pulumi.getter
225
- def size(self) -> builtins.str:
224
+ def size(self) -> _builtins.str:
226
225
  return pulumi.get(self, "size")
227
226
 
228
- @property
227
+ @_builtins.property
229
228
  @pulumi.getter(name="sizeUnit")
230
- def size_unit(self) -> builtins.int:
229
+ def size_unit(self) -> _builtins.int:
231
230
  return pulumi.get(self, "size_unit")
232
231
 
233
- @property
232
+ @_builtins.property
234
233
  @pulumi.getter
235
- def status(self) -> builtins.str:
234
+ def status(self) -> _builtins.str:
236
235
  return pulumi.get(self, "status")
237
236
 
238
- @property
237
+ @_builtins.property
239
238
  @pulumi.getter(name="stickySessions")
240
239
  def sticky_sessions(self) -> Sequence['outputs.GetLoadBalancerStickySessionResult']:
241
240
  return pulumi.get(self, "sticky_sessions")
242
241
 
243
- @property
242
+ @_builtins.property
244
243
  @pulumi.getter(name="targetLoadBalancerIds")
245
- def target_load_balancer_ids(self) -> Sequence[builtins.str]:
244
+ def target_load_balancer_ids(self) -> Sequence[_builtins.str]:
246
245
  return pulumi.get(self, "target_load_balancer_ids")
247
246
 
248
- @property
247
+ @_builtins.property
249
248
  @pulumi.getter
250
- def type(self) -> builtins.str:
249
+ def type(self) -> _builtins.str:
251
250
  return pulumi.get(self, "type")
252
251
 
253
- @property
252
+ @_builtins.property
254
253
  @pulumi.getter(name="vpcUuid")
255
- def vpc_uuid(self) -> builtins.str:
254
+ def vpc_uuid(self) -> _builtins.str:
256
255
  return pulumi.get(self, "vpc_uuid")
257
256
 
258
257
 
@@ -292,8 +291,8 @@ class AwaitableGetLoadBalancerResult(GetLoadBalancerResult):
292
291
  vpc_uuid=self.vpc_uuid)
293
292
 
294
293
 
295
- def get_load_balancer(id: Optional[builtins.str] = None,
296
- name: Optional[builtins.str] = None,
294
+ def get_load_balancer(id: Optional[_builtins.str] = None,
295
+ name: Optional[_builtins.str] = None,
297
296
  opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetLoadBalancerResult:
298
297
  """
299
298
  Get information on a load balancer for use in other resources. This data source
@@ -325,8 +324,8 @@ def get_load_balancer(id: Optional[builtins.str] = None,
325
324
  ```
326
325
 
327
326
 
328
- :param builtins.str id: The ID of load balancer.
329
- :param builtins.str name: The name of load balancer.
327
+ :param _builtins.str id: The ID of load balancer.
328
+ :param _builtins.str name: The name of load balancer.
330
329
  """
331
330
  __args__ = dict()
332
331
  __args__['id'] = id
@@ -363,8 +362,8 @@ def get_load_balancer(id: Optional[builtins.str] = None,
363
362
  target_load_balancer_ids=pulumi.get(__ret__, 'target_load_balancer_ids'),
364
363
  type=pulumi.get(__ret__, 'type'),
365
364
  vpc_uuid=pulumi.get(__ret__, 'vpc_uuid'))
366
- def get_load_balancer_output(id: Optional[pulumi.Input[Optional[builtins.str]]] = None,
367
- name: Optional[pulumi.Input[Optional[builtins.str]]] = None,
365
+ def get_load_balancer_output(id: Optional[pulumi.Input[Optional[_builtins.str]]] = None,
366
+ name: Optional[pulumi.Input[Optional[_builtins.str]]] = None,
368
367
  opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetLoadBalancerResult]:
369
368
  """
370
369
  Get information on a load balancer for use in other resources. This data source
@@ -396,8 +395,8 @@ def get_load_balancer_output(id: Optional[pulumi.Input[Optional[builtins.str]]]
396
395
  ```
397
396
 
398
397
 
399
- :param builtins.str id: The ID of load balancer.
400
- :param builtins.str name: The name of load balancer.
398
+ :param _builtins.str id: The ID of load balancer.
399
+ :param _builtins.str name: The name of load balancer.
401
400
  """
402
401
  __args__ = dict()
403
402
  __args__['id'] = id
@@ -0,0 +1,205 @@
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__ = [
18
+ 'GetNfsResult',
19
+ 'AwaitableGetNfsResult',
20
+ 'get_nfs',
21
+ 'get_nfs_output',
22
+ ]
23
+
24
+ @pulumi.output_type
25
+ class GetNfsResult:
26
+ """
27
+ A collection of values returned by getNfs.
28
+ """
29
+ def __init__(__self__, host=None, id=None, mount_path=None, name=None, region=None, size=None, status=None, tags=None):
30
+ if host and not isinstance(host, str):
31
+ raise TypeError("Expected argument 'host' to be a str")
32
+ pulumi.set(__self__, "host", host)
33
+ if id and not isinstance(id, str):
34
+ raise TypeError("Expected argument 'id' to be a str")
35
+ pulumi.set(__self__, "id", id)
36
+ if mount_path and not isinstance(mount_path, str):
37
+ raise TypeError("Expected argument 'mount_path' to be a str")
38
+ pulumi.set(__self__, "mount_path", mount_path)
39
+ if name and not isinstance(name, str):
40
+ raise TypeError("Expected argument 'name' to be a str")
41
+ pulumi.set(__self__, "name", name)
42
+ if region and not isinstance(region, str):
43
+ raise TypeError("Expected argument 'region' to be a str")
44
+ pulumi.set(__self__, "region", region)
45
+ if size and not isinstance(size, int):
46
+ raise TypeError("Expected argument 'size' to be a int")
47
+ pulumi.set(__self__, "size", size)
48
+ if status and not isinstance(status, str):
49
+ raise TypeError("Expected argument 'status' to be a str")
50
+ pulumi.set(__self__, "status", status)
51
+ if tags and not isinstance(tags, list):
52
+ raise TypeError("Expected argument 'tags' to be a list")
53
+ pulumi.set(__self__, "tags", tags)
54
+
55
+ @_builtins.property
56
+ @pulumi.getter
57
+ def host(self) -> _builtins.str:
58
+ """
59
+ The host IP of the NFS server accessible from the associated VPC.
60
+ """
61
+ return pulumi.get(self, "host")
62
+
63
+ @_builtins.property
64
+ @pulumi.getter
65
+ def id(self) -> _builtins.str:
66
+ """
67
+ The provider-assigned unique ID for this managed resource.
68
+ """
69
+ return pulumi.get(self, "id")
70
+
71
+ @_builtins.property
72
+ @pulumi.getter(name="mountPath")
73
+ def mount_path(self) -> _builtins.str:
74
+ """
75
+ The mount path for accessing the NFS share.
76
+ """
77
+ return pulumi.get(self, "mount_path")
78
+
79
+ @_builtins.property
80
+ @pulumi.getter
81
+ def name(self) -> _builtins.str:
82
+ """
83
+ Name of the NFS share.
84
+ """
85
+ return pulumi.get(self, "name")
86
+
87
+ @_builtins.property
88
+ @pulumi.getter
89
+ def region(self) -> Optional[_builtins.str]:
90
+ """
91
+ The region where the NFS share is located.
92
+ """
93
+ return pulumi.get(self, "region")
94
+
95
+ @_builtins.property
96
+ @pulumi.getter
97
+ def size(self) -> _builtins.int:
98
+ """
99
+ The size of the NFS share in GiB.
100
+ """
101
+ return pulumi.get(self, "size")
102
+
103
+ @_builtins.property
104
+ @pulumi.getter
105
+ def status(self) -> _builtins.str:
106
+ """
107
+ The current status of the NFS share.
108
+ """
109
+ return pulumi.get(self, "status")
110
+
111
+ @_builtins.property
112
+ @pulumi.getter
113
+ def tags(self) -> Sequence[_builtins.str]:
114
+ return pulumi.get(self, "tags")
115
+
116
+
117
+ class AwaitableGetNfsResult(GetNfsResult):
118
+ # pylint: disable=using-constant-test
119
+ def __await__(self):
120
+ if False:
121
+ yield self
122
+ return GetNfsResult(
123
+ host=self.host,
124
+ id=self.id,
125
+ mount_path=self.mount_path,
126
+ name=self.name,
127
+ region=self.region,
128
+ size=self.size,
129
+ status=self.status,
130
+ tags=self.tags)
131
+
132
+
133
+ def get_nfs(name: Optional[_builtins.str] = None,
134
+ region: Optional[_builtins.str] = None,
135
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetNfsResult:
136
+ """
137
+ Get information about a DigitalOcean NFS share.
138
+
139
+ ## Example Usage
140
+
141
+ Get the NFS share by name and region:
142
+
143
+ ```python
144
+ import pulumi
145
+ import pulumi_digitalocean as digitalocean
146
+
147
+ example = digitalocean.get_nfs(name="example-nfs",
148
+ region="nyc1")
149
+ ```
150
+
151
+
152
+ :param _builtins.str name: The name of the NFS share.
153
+ :param _builtins.str region: The region where the NFS share is located.
154
+ """
155
+ __args__ = dict()
156
+ __args__['name'] = name
157
+ __args__['region'] = region
158
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
159
+ __ret__ = pulumi.runtime.invoke('digitalocean:index/getNfs:getNfs', __args__, opts=opts, typ=GetNfsResult).value
160
+
161
+ return AwaitableGetNfsResult(
162
+ host=pulumi.get(__ret__, 'host'),
163
+ id=pulumi.get(__ret__, 'id'),
164
+ mount_path=pulumi.get(__ret__, 'mount_path'),
165
+ name=pulumi.get(__ret__, 'name'),
166
+ region=pulumi.get(__ret__, 'region'),
167
+ size=pulumi.get(__ret__, 'size'),
168
+ status=pulumi.get(__ret__, 'status'),
169
+ tags=pulumi.get(__ret__, 'tags'))
170
+ def get_nfs_output(name: Optional[pulumi.Input[_builtins.str]] = None,
171
+ region: Optional[pulumi.Input[Optional[_builtins.str]]] = None,
172
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetNfsResult]:
173
+ """
174
+ Get information about a DigitalOcean NFS share.
175
+
176
+ ## Example Usage
177
+
178
+ Get the NFS share by name and region:
179
+
180
+ ```python
181
+ import pulumi
182
+ import pulumi_digitalocean as digitalocean
183
+
184
+ example = digitalocean.get_nfs(name="example-nfs",
185
+ region="nyc1")
186
+ ```
187
+
188
+
189
+ :param _builtins.str name: The name of the NFS share.
190
+ :param _builtins.str region: The region where the NFS share is located.
191
+ """
192
+ __args__ = dict()
193
+ __args__['name'] = name
194
+ __args__['region'] = region
195
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
196
+ __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getNfs:getNfs', __args__, opts=opts, typ=GetNfsResult)
197
+ return __ret__.apply(lambda __response__: GetNfsResult(
198
+ host=pulumi.get(__response__, 'host'),
199
+ id=pulumi.get(__response__, 'id'),
200
+ mount_path=pulumi.get(__response__, 'mount_path'),
201
+ name=pulumi.get(__response__, 'name'),
202
+ region=pulumi.get(__response__, 'region'),
203
+ size=pulumi.get(__response__, 'size'),
204
+ status=pulumi.get(__response__, 'status'),
205
+ tags=pulumi.get(__response__, 'tags')))
@@ -0,0 +1,188 @@
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__ = [
18
+ 'GetNfsSnapshotResult',
19
+ 'AwaitableGetNfsSnapshotResult',
20
+ 'get_nfs_snapshot',
21
+ 'get_nfs_snapshot_output',
22
+ ]
23
+
24
+ @pulumi.output_type
25
+ class GetNfsSnapshotResult:
26
+ """
27
+ A collection of values returned by getNfsSnapshot.
28
+ """
29
+ def __init__(__self__, created_at=None, id=None, name=None, name_regex=None, region=None, share_id=None, size=None, status=None, tags=None):
30
+ if created_at and not isinstance(created_at, str):
31
+ raise TypeError("Expected argument 'created_at' to be a str")
32
+ pulumi.set(__self__, "created_at", created_at)
33
+ if id and not isinstance(id, str):
34
+ raise TypeError("Expected argument 'id' to be a str")
35
+ pulumi.set(__self__, "id", id)
36
+ if name and not isinstance(name, str):
37
+ raise TypeError("Expected argument 'name' to be a str")
38
+ pulumi.set(__self__, "name", name)
39
+ if name_regex and not isinstance(name_regex, str):
40
+ raise TypeError("Expected argument 'name_regex' to be a str")
41
+ pulumi.set(__self__, "name_regex", name_regex)
42
+ if region and not isinstance(region, str):
43
+ raise TypeError("Expected argument 'region' to be a str")
44
+ pulumi.set(__self__, "region", region)
45
+ if share_id and not isinstance(share_id, str):
46
+ raise TypeError("Expected argument 'share_id' to be a str")
47
+ pulumi.set(__self__, "share_id", share_id)
48
+ if size and not isinstance(size, int):
49
+ raise TypeError("Expected argument 'size' to be a int")
50
+ pulumi.set(__self__, "size", size)
51
+ if status and not isinstance(status, int):
52
+ raise TypeError("Expected argument 'status' to be a int")
53
+ pulumi.set(__self__, "status", status)
54
+ if tags and not isinstance(tags, list):
55
+ raise TypeError("Expected argument 'tags' to be a list")
56
+ pulumi.set(__self__, "tags", tags)
57
+
58
+ @_builtins.property
59
+ @pulumi.getter(name="createdAt")
60
+ def created_at(self) -> _builtins.str:
61
+ return pulumi.get(self, "created_at")
62
+
63
+ @_builtins.property
64
+ @pulumi.getter
65
+ def id(self) -> _builtins.str:
66
+ """
67
+ The provider-assigned unique ID for this managed resource.
68
+ """
69
+ return pulumi.get(self, "id")
70
+
71
+ @_builtins.property
72
+ @pulumi.getter
73
+ def name(self) -> Optional[_builtins.str]:
74
+ return pulumi.get(self, "name")
75
+
76
+ @_builtins.property
77
+ @pulumi.getter(name="nameRegex")
78
+ def name_regex(self) -> Optional[_builtins.str]:
79
+ return pulumi.get(self, "name_regex")
80
+
81
+ @_builtins.property
82
+ @pulumi.getter
83
+ def region(self) -> Optional[_builtins.str]:
84
+ return pulumi.get(self, "region")
85
+
86
+ @_builtins.property
87
+ @pulumi.getter(name="shareId")
88
+ def share_id(self) -> _builtins.str:
89
+ return pulumi.get(self, "share_id")
90
+
91
+ @_builtins.property
92
+ @pulumi.getter
93
+ def size(self) -> _builtins.int:
94
+ return pulumi.get(self, "size")
95
+
96
+ @_builtins.property
97
+ @pulumi.getter
98
+ def status(self) -> _builtins.int:
99
+ return pulumi.get(self, "status")
100
+
101
+ @_builtins.property
102
+ @pulumi.getter
103
+ def tags(self) -> Sequence[_builtins.str]:
104
+ return pulumi.get(self, "tags")
105
+
106
+
107
+ class AwaitableGetNfsSnapshotResult(GetNfsSnapshotResult):
108
+ # pylint: disable=using-constant-test
109
+ def __await__(self):
110
+ if False:
111
+ yield self
112
+ return GetNfsSnapshotResult(
113
+ created_at=self.created_at,
114
+ id=self.id,
115
+ name=self.name,
116
+ name_regex=self.name_regex,
117
+ region=self.region,
118
+ share_id=self.share_id,
119
+ size=self.size,
120
+ status=self.status,
121
+ tags=self.tags)
122
+
123
+
124
+ def get_nfs_snapshot(name: Optional[_builtins.str] = None,
125
+ name_regex: Optional[_builtins.str] = None,
126
+ region: Optional[_builtins.str] = None,
127
+ share_id: Optional[_builtins.str] = None,
128
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetNfsSnapshotResult:
129
+ """
130
+ Get information about a DigitalOcean NFS snapshot.
131
+
132
+ ## Example Usage
133
+
134
+ Get the NFS snapshot by ID:
135
+
136
+
137
+ :param _builtins.str region: The region where the NFS snapshot is located.
138
+ """
139
+ __args__ = dict()
140
+ __args__['name'] = name
141
+ __args__['nameRegex'] = name_regex
142
+ __args__['region'] = region
143
+ __args__['shareId'] = share_id
144
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
145
+ __ret__ = pulumi.runtime.invoke('digitalocean:index/getNfsSnapshot:getNfsSnapshot', __args__, opts=opts, typ=GetNfsSnapshotResult).value
146
+
147
+ return AwaitableGetNfsSnapshotResult(
148
+ created_at=pulumi.get(__ret__, 'created_at'),
149
+ id=pulumi.get(__ret__, 'id'),
150
+ name=pulumi.get(__ret__, 'name'),
151
+ name_regex=pulumi.get(__ret__, 'name_regex'),
152
+ region=pulumi.get(__ret__, 'region'),
153
+ share_id=pulumi.get(__ret__, 'share_id'),
154
+ size=pulumi.get(__ret__, 'size'),
155
+ status=pulumi.get(__ret__, 'status'),
156
+ tags=pulumi.get(__ret__, 'tags'))
157
+ def get_nfs_snapshot_output(name: Optional[pulumi.Input[Optional[_builtins.str]]] = None,
158
+ name_regex: Optional[pulumi.Input[Optional[_builtins.str]]] = None,
159
+ region: Optional[pulumi.Input[Optional[_builtins.str]]] = None,
160
+ share_id: Optional[pulumi.Input[_builtins.str]] = None,
161
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetNfsSnapshotResult]:
162
+ """
163
+ Get information about a DigitalOcean NFS snapshot.
164
+
165
+ ## Example Usage
166
+
167
+ Get the NFS snapshot by ID:
168
+
169
+
170
+ :param _builtins.str region: The region where the NFS snapshot is located.
171
+ """
172
+ __args__ = dict()
173
+ __args__['name'] = name
174
+ __args__['nameRegex'] = name_regex
175
+ __args__['region'] = region
176
+ __args__['shareId'] = share_id
177
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
178
+ __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getNfsSnapshot:getNfsSnapshot', __args__, opts=opts, typ=GetNfsSnapshotResult)
179
+ return __ret__.apply(lambda __response__: GetNfsSnapshotResult(
180
+ created_at=pulumi.get(__response__, 'created_at'),
181
+ id=pulumi.get(__response__, 'id'),
182
+ name=pulumi.get(__response__, 'name'),
183
+ name_regex=pulumi.get(__response__, 'name_regex'),
184
+ region=pulumi.get(__response__, 'region'),
185
+ share_id=pulumi.get(__response__, 'share_id'),
186
+ size=pulumi.get(__response__, 'size'),
187
+ status=pulumi.get(__response__, 'status'),
188
+ tags=pulumi.get(__response__, 'tags')))