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.
- pulumi_digitalocean/__init__.py +195 -2
- pulumi_digitalocean/_enums.py +10 -10
- pulumi_digitalocean/_inputs.py +16851 -4937
- pulumi_digitalocean/_utilities.py +1 -1
- pulumi_digitalocean/app.py +237 -89
- pulumi_digitalocean/byoip_prefix.py +452 -0
- pulumi_digitalocean/cdn.py +105 -106
- pulumi_digitalocean/certificate.py +138 -139
- pulumi_digitalocean/config/__init__.py +2 -2
- pulumi_digitalocean/config/__init__.pyi +2 -3
- pulumi_digitalocean/config/vars.py +11 -12
- pulumi_digitalocean/container_registries.py +285 -0
- pulumi_digitalocean/container_registry.py +89 -90
- pulumi_digitalocean/container_registry_docker_credentials.py +83 -84
- pulumi_digitalocean/custom_image.py +176 -177
- pulumi_digitalocean/database_cluster.py +375 -348
- pulumi_digitalocean/database_connection_pool.py +158 -159
- pulumi_digitalocean/database_db.py +36 -37
- pulumi_digitalocean/database_firewall.py +22 -23
- pulumi_digitalocean/database_kafka_config.py +308 -309
- pulumi_digitalocean/database_kafka_schema_registry.py +360 -0
- pulumi_digitalocean/database_kafka_topic.py +82 -83
- pulumi_digitalocean/database_logsink_opensearch.py +680 -0
- pulumi_digitalocean/database_logsink_rsyslog.py +842 -0
- pulumi_digitalocean/database_mongodb_config.py +104 -105
- pulumi_digitalocean/database_mysql_config.py +478 -479
- pulumi_digitalocean/database_online_migration.py +460 -0
- pulumi_digitalocean/database_opensearch_config.py +665 -666
- pulumi_digitalocean/database_postgresql_config.py +858 -859
- pulumi_digitalocean/database_redis_config.py +210 -207
- pulumi_digitalocean/database_replica.py +198 -199
- pulumi_digitalocean/database_user.py +92 -93
- pulumi_digitalocean/database_valkey_config.py +776 -0
- pulumi_digitalocean/dns_record.py +181 -182
- pulumi_digitalocean/domain.py +54 -55
- pulumi_digitalocean/droplet.py +389 -390
- pulumi_digitalocean/droplet_autoscale.py +54 -55
- pulumi_digitalocean/droplet_snapshot.py +72 -73
- pulumi_digitalocean/firewall.py +79 -80
- pulumi_digitalocean/floating_ip.py +62 -63
- pulumi_digitalocean/floating_ip_assignment.py +36 -37
- pulumi_digitalocean/genai_agent.py +1903 -0
- pulumi_digitalocean/genai_agent_knowledge_base_attachment.py +198 -0
- pulumi_digitalocean/genai_agent_route.py +354 -0
- pulumi_digitalocean/genai_function.py +464 -0
- pulumi_digitalocean/genai_indexing_job_cancel.py +542 -0
- pulumi_digitalocean/genai_knowledge_base.py +627 -0
- pulumi_digitalocean/genai_knowledge_base_data_source.py +220 -0
- pulumi_digitalocean/genai_openai_api_key.py +386 -0
- pulumi_digitalocean/get_account.py +18 -19
- pulumi_digitalocean/get_app.py +28 -29
- pulumi_digitalocean/get_byoip_prefix.py +214 -0
- pulumi_digitalocean/get_byoip_prefix_resources.py +150 -0
- pulumi_digitalocean/get_certificate.py +22 -23
- pulumi_digitalocean/get_container_registries.py +151 -0
- pulumi_digitalocean/get_container_registry.py +22 -23
- pulumi_digitalocean/get_database_ca.py +12 -13
- pulumi_digitalocean/get_database_cluster.py +76 -63
- pulumi_digitalocean/get_database_connection_pool.py +36 -37
- pulumi_digitalocean/get_database_metrics_credentials.py +120 -0
- pulumi_digitalocean/get_database_replica.py +46 -47
- pulumi_digitalocean/get_database_user.py +27 -28
- pulumi_digitalocean/get_domain.py +16 -17
- pulumi_digitalocean/get_domains.py +7 -8
- pulumi_digitalocean/get_droplet.py +72 -73
- pulumi_digitalocean/get_droplet_autoscale.py +23 -24
- pulumi_digitalocean/get_droplet_snapshot.py +38 -39
- pulumi_digitalocean/get_droplets.py +13 -14
- pulumi_digitalocean/get_firewall.py +31 -32
- pulumi_digitalocean/get_floating_ip.py +16 -17
- pulumi_digitalocean/get_genai_agent.py +572 -0
- pulumi_digitalocean/get_genai_agent_versions.py +128 -0
- pulumi_digitalocean/get_genai_agents.py +128 -0
- pulumi_digitalocean/get_genai_agents_by_openai_api_key.py +97 -0
- pulumi_digitalocean/get_genai_indexing_job.py +239 -0
- pulumi_digitalocean/get_genai_indexing_job_data_sources.py +97 -0
- pulumi_digitalocean/get_genai_knowledge_base.py +259 -0
- pulumi_digitalocean/get_genai_knowledge_base_data_sources.py +97 -0
- pulumi_digitalocean/get_genai_knowledge_base_indexing_jobs.py +108 -0
- pulumi_digitalocean/get_genai_knowledge_bases.py +113 -0
- pulumi_digitalocean/get_genai_models.py +113 -0
- pulumi_digitalocean/get_genai_openai_api_key.py +152 -0
- pulumi_digitalocean/get_genai_openai_api_keys.py +113 -0
- pulumi_digitalocean/get_genai_regions.py +113 -0
- pulumi_digitalocean/get_image.py +50 -51
- pulumi_digitalocean/get_images.py +7 -8
- pulumi_digitalocean/get_kubernetes_cluster.py +117 -58
- pulumi_digitalocean/get_kubernetes_versions.py +14 -15
- pulumi_digitalocean/get_load_balancer.py +60 -61
- pulumi_digitalocean/get_nfs.py +205 -0
- pulumi_digitalocean/get_nfs_snapshot.py +188 -0
- pulumi_digitalocean/get_partner_attachment.py +61 -25
- pulumi_digitalocean/get_partner_attachment_service_key.py +118 -0
- pulumi_digitalocean/get_project.py +32 -33
- pulumi_digitalocean/get_projects.py +7 -8
- pulumi_digitalocean/get_record.py +32 -33
- pulumi_digitalocean/get_records.py +13 -14
- pulumi_digitalocean/get_region.py +18 -19
- pulumi_digitalocean/get_regions.py +7 -8
- pulumi_digitalocean/get_reserved_ip.py +16 -17
- pulumi_digitalocean/get_reserved_ipv6.py +16 -17
- pulumi_digitalocean/get_sizes.py +141 -8
- pulumi_digitalocean/get_spaces_bucket.py +22 -23
- pulumi_digitalocean/get_spaces_bucket_object.py +58 -59
- pulumi_digitalocean/get_spaces_bucket_objects.py +46 -47
- pulumi_digitalocean/get_spaces_buckets.py +7 -8
- pulumi_digitalocean/get_spaces_key.py +15 -16
- pulumi_digitalocean/get_ssh_key.py +14 -15
- pulumi_digitalocean/get_ssh_keys.py +7 -8
- pulumi_digitalocean/get_tag.py +22 -23
- pulumi_digitalocean/get_tags.py +7 -8
- pulumi_digitalocean/get_volume.py +34 -35
- pulumi_digitalocean/get_volume_snapshot.py +40 -41
- pulumi_digitalocean/get_vpc.py +30 -31
- pulumi_digitalocean/get_vpc_nat_gateway.py +263 -0
- pulumi_digitalocean/get_vpc_peering.py +24 -25
- pulumi_digitalocean/kubernetes_cluster.py +483 -296
- pulumi_digitalocean/kubernetes_node_pool.py +169 -170
- pulumi_digitalocean/load_balancer.py +375 -376
- pulumi_digitalocean/monitor_alert.py +150 -151
- pulumi_digitalocean/nfs.py +481 -0
- pulumi_digitalocean/nfs_attachment.py +289 -0
- pulumi_digitalocean/nfs_snapshot.py +379 -0
- pulumi_digitalocean/outputs.py +26671 -7785
- pulumi_digitalocean/partner_attachment.py +231 -110
- pulumi_digitalocean/project.py +140 -141
- pulumi_digitalocean/project_resources.py +36 -37
- pulumi_digitalocean/provider.py +85 -86
- pulumi_digitalocean/pulumi-plugin.json +1 -1
- pulumi_digitalocean/reserved_ip.py +62 -63
- pulumi_digitalocean/reserved_ip_assignment.py +36 -37
- pulumi_digitalocean/reserved_ipv6.py +64 -65
- pulumi_digitalocean/reserved_ipv6_assignment.py +36 -37
- pulumi_digitalocean/spaces_bucket.py +106 -107
- pulumi_digitalocean/spaces_bucket_cors_configuration.py +39 -40
- pulumi_digitalocean/spaces_bucket_logging.py +70 -71
- pulumi_digitalocean/spaces_bucket_object.py +283 -284
- pulumi_digitalocean/spaces_bucket_policy.py +53 -54
- pulumi_digitalocean/spaces_key.py +49 -50
- pulumi_digitalocean/ssh_key.py +45 -46
- pulumi_digitalocean/tag.py +73 -74
- pulumi_digitalocean/uptime_alert.py +107 -108
- pulumi_digitalocean/uptime_check.py +87 -88
- pulumi_digitalocean/volume.py +182 -183
- pulumi_digitalocean/volume_attachment.py +36 -37
- pulumi_digitalocean/volume_snapshot.py +89 -90
- pulumi_digitalocean/vpc.py +97 -98
- pulumi_digitalocean/vpc_nat_gateway.py +722 -0
- pulumi_digitalocean/vpc_peering.py +54 -59
- {pulumi_digitalocean-4.46.0a1747979086.dist-info → pulumi_digitalocean-4.56.0a1766428645.dist-info}/METADATA +1 -1
- pulumi_digitalocean-4.56.0a1766428645.dist-info/RECORD +154 -0
- {pulumi_digitalocean-4.46.0a1747979086.dist-info → pulumi_digitalocean-4.56.0a1766428645.dist-info}/WHEEL +1 -1
- pulumi_digitalocean-4.46.0a1747979086.dist-info/RECORD +0 -113
- {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
|
|
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
|
|
@@ -53,65 +52,65 @@ class GetAccountResult:
|
|
|
53
52
|
raise TypeError("Expected argument 'uuid' to be a str")
|
|
54
53
|
pulumi.set(__self__, "uuid", uuid)
|
|
55
54
|
|
|
56
|
-
@property
|
|
55
|
+
@_builtins.property
|
|
57
56
|
@pulumi.getter(name="dropletLimit")
|
|
58
|
-
def droplet_limit(self) ->
|
|
57
|
+
def droplet_limit(self) -> _builtins.int:
|
|
59
58
|
"""
|
|
60
59
|
The total number of droplets current user or team may have active at one time.
|
|
61
60
|
"""
|
|
62
61
|
return pulumi.get(self, "droplet_limit")
|
|
63
62
|
|
|
64
|
-
@property
|
|
63
|
+
@_builtins.property
|
|
65
64
|
@pulumi.getter
|
|
66
|
-
def email(self) ->
|
|
65
|
+
def email(self) -> _builtins.str:
|
|
67
66
|
"""
|
|
68
67
|
The email address used by the current user to register for DigitalOcean.
|
|
69
68
|
"""
|
|
70
69
|
return pulumi.get(self, "email")
|
|
71
70
|
|
|
72
|
-
@property
|
|
71
|
+
@_builtins.property
|
|
73
72
|
@pulumi.getter(name="emailVerified")
|
|
74
|
-
def email_verified(self) ->
|
|
73
|
+
def email_verified(self) -> _builtins.bool:
|
|
75
74
|
"""
|
|
76
75
|
If true, the user has verified their account via email. False otherwise.
|
|
77
76
|
"""
|
|
78
77
|
return pulumi.get(self, "email_verified")
|
|
79
78
|
|
|
80
|
-
@property
|
|
79
|
+
@_builtins.property
|
|
81
80
|
@pulumi.getter(name="floatingIpLimit")
|
|
82
|
-
def floating_ip_limit(self) ->
|
|
81
|
+
def floating_ip_limit(self) -> _builtins.int:
|
|
83
82
|
"""
|
|
84
83
|
The total number of floating IPs the current user or team may have.
|
|
85
84
|
"""
|
|
86
85
|
return pulumi.get(self, "floating_ip_limit")
|
|
87
86
|
|
|
88
|
-
@property
|
|
87
|
+
@_builtins.property
|
|
89
88
|
@pulumi.getter
|
|
90
|
-
def id(self) ->
|
|
89
|
+
def id(self) -> _builtins.str:
|
|
91
90
|
"""
|
|
92
91
|
The provider-assigned unique ID for this managed resource.
|
|
93
92
|
"""
|
|
94
93
|
return pulumi.get(self, "id")
|
|
95
94
|
|
|
96
|
-
@property
|
|
95
|
+
@_builtins.property
|
|
97
96
|
@pulumi.getter
|
|
98
|
-
def status(self) ->
|
|
97
|
+
def status(self) -> _builtins.str:
|
|
99
98
|
"""
|
|
100
99
|
This value is one of "active", "warning" or "locked".
|
|
101
100
|
"""
|
|
102
101
|
return pulumi.get(self, "status")
|
|
103
102
|
|
|
104
|
-
@property
|
|
103
|
+
@_builtins.property
|
|
105
104
|
@pulumi.getter(name="statusMessage")
|
|
106
|
-
def status_message(self) ->
|
|
105
|
+
def status_message(self) -> _builtins.str:
|
|
107
106
|
"""
|
|
108
107
|
A human-readable message giving more details about the status of the account.
|
|
109
108
|
"""
|
|
110
109
|
return pulumi.get(self, "status_message")
|
|
111
110
|
|
|
112
|
-
@property
|
|
111
|
+
@_builtins.property
|
|
113
112
|
@pulumi.getter
|
|
114
|
-
def uuid(self) ->
|
|
113
|
+
def uuid(self) -> _builtins.str:
|
|
115
114
|
"""
|
|
116
115
|
The unique universal identifier for the current user.
|
|
117
116
|
"""
|
pulumi_digitalocean/get_app.py
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
# coding=utf-8
|
|
2
|
-
# *** WARNING: this file was generated by
|
|
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
|
|
@@ -67,28 +66,28 @@ class GetAppResult:
|
|
|
67
66
|
raise TypeError("Expected argument 'urn' to be a str")
|
|
68
67
|
pulumi.set(__self__, "urn", urn)
|
|
69
68
|
|
|
70
|
-
@property
|
|
69
|
+
@_builtins.property
|
|
71
70
|
@pulumi.getter(name="activeDeploymentId")
|
|
72
|
-
def active_deployment_id(self) ->
|
|
71
|
+
def active_deployment_id(self) -> _builtins.str:
|
|
73
72
|
"""
|
|
74
73
|
The ID the app's currently active deployment.
|
|
75
74
|
"""
|
|
76
75
|
return pulumi.get(self, "active_deployment_id")
|
|
77
76
|
|
|
78
|
-
@property
|
|
77
|
+
@_builtins.property
|
|
79
78
|
@pulumi.getter(name="appId")
|
|
80
|
-
def app_id(self) ->
|
|
79
|
+
def app_id(self) -> _builtins.str:
|
|
81
80
|
return pulumi.get(self, "app_id")
|
|
82
81
|
|
|
83
|
-
@property
|
|
82
|
+
@_builtins.property
|
|
84
83
|
@pulumi.getter(name="createdAt")
|
|
85
|
-
def created_at(self) ->
|
|
84
|
+
def created_at(self) -> _builtins.str:
|
|
86
85
|
"""
|
|
87
86
|
The date and time of when the app was created.
|
|
88
87
|
"""
|
|
89
88
|
return pulumi.get(self, "created_at")
|
|
90
89
|
|
|
91
|
-
@property
|
|
90
|
+
@_builtins.property
|
|
92
91
|
@pulumi.getter(name="dedicatedIps")
|
|
93
92
|
def dedicated_ips(self) -> Sequence['outputs.GetAppDedicatedIpResult']:
|
|
94
93
|
"""
|
|
@@ -96,47 +95,47 @@ class GetAppResult:
|
|
|
96
95
|
"""
|
|
97
96
|
return pulumi.get(self, "dedicated_ips")
|
|
98
97
|
|
|
99
|
-
@property
|
|
98
|
+
@_builtins.property
|
|
100
99
|
@pulumi.getter(name="defaultIngress")
|
|
101
|
-
def default_ingress(self) ->
|
|
100
|
+
def default_ingress(self) -> _builtins.str:
|
|
102
101
|
"""
|
|
103
102
|
The default URL to access the app.
|
|
104
103
|
"""
|
|
105
104
|
return pulumi.get(self, "default_ingress")
|
|
106
105
|
|
|
107
|
-
@property
|
|
106
|
+
@_builtins.property
|
|
108
107
|
@pulumi.getter
|
|
109
|
-
def id(self) ->
|
|
108
|
+
def id(self) -> _builtins.str:
|
|
110
109
|
"""
|
|
111
110
|
The provider-assigned unique ID for this managed resource.
|
|
112
111
|
"""
|
|
113
112
|
return pulumi.get(self, "id")
|
|
114
113
|
|
|
115
|
-
@property
|
|
114
|
+
@_builtins.property
|
|
116
115
|
@pulumi.getter(name="liveDomain")
|
|
117
|
-
def live_domain(self) ->
|
|
116
|
+
def live_domain(self) -> _builtins.str:
|
|
118
117
|
"""
|
|
119
118
|
The live domain of the app.
|
|
120
119
|
"""
|
|
121
120
|
return pulumi.get(self, "live_domain")
|
|
122
121
|
|
|
123
|
-
@property
|
|
122
|
+
@_builtins.property
|
|
124
123
|
@pulumi.getter(name="liveUrl")
|
|
125
|
-
def live_url(self) ->
|
|
124
|
+
def live_url(self) -> _builtins.str:
|
|
126
125
|
"""
|
|
127
126
|
The live URL of the app.
|
|
128
127
|
"""
|
|
129
128
|
return pulumi.get(self, "live_url")
|
|
130
129
|
|
|
131
|
-
@property
|
|
130
|
+
@_builtins.property
|
|
132
131
|
@pulumi.getter(name="projectId")
|
|
133
|
-
def project_id(self) ->
|
|
132
|
+
def project_id(self) -> _builtins.str:
|
|
134
133
|
"""
|
|
135
134
|
The ID of the project that the app is assigned to.
|
|
136
135
|
"""
|
|
137
136
|
return pulumi.get(self, "project_id")
|
|
138
137
|
|
|
139
|
-
@property
|
|
138
|
+
@_builtins.property
|
|
140
139
|
@pulumi.getter
|
|
141
140
|
def specs(self) -> Sequence['outputs.GetAppSpecResult']:
|
|
142
141
|
"""
|
|
@@ -144,17 +143,17 @@ class GetAppResult:
|
|
|
144
143
|
"""
|
|
145
144
|
return pulumi.get(self, "specs")
|
|
146
145
|
|
|
147
|
-
@property
|
|
146
|
+
@_builtins.property
|
|
148
147
|
@pulumi.getter(name="updatedAt")
|
|
149
|
-
def updated_at(self) ->
|
|
148
|
+
def updated_at(self) -> _builtins.str:
|
|
150
149
|
"""
|
|
151
150
|
The date and time of when the app was last updated.
|
|
152
151
|
"""
|
|
153
152
|
return pulumi.get(self, "updated_at")
|
|
154
153
|
|
|
155
|
-
@property
|
|
154
|
+
@_builtins.property
|
|
156
155
|
@pulumi.getter
|
|
157
|
-
def urn(self) ->
|
|
156
|
+
def urn(self) -> _builtins.str:
|
|
158
157
|
"""
|
|
159
158
|
The uniform resource identifier for the app.
|
|
160
159
|
"""
|
|
@@ -181,7 +180,7 @@ class AwaitableGetAppResult(GetAppResult):
|
|
|
181
180
|
urn=self.urn)
|
|
182
181
|
|
|
183
182
|
|
|
184
|
-
def get_app(app_id: Optional[
|
|
183
|
+
def get_app(app_id: Optional[_builtins.str] = None,
|
|
185
184
|
dedicated_ips: Optional[Sequence[Union['GetAppDedicatedIpArgs', 'GetAppDedicatedIpArgsDict']]] = None,
|
|
186
185
|
opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetAppResult:
|
|
187
186
|
"""
|
|
@@ -200,7 +199,7 @@ def get_app(app_id: Optional[builtins.str] = None,
|
|
|
200
199
|
```
|
|
201
200
|
|
|
202
201
|
|
|
203
|
-
:param
|
|
202
|
+
:param _builtins.str app_id: The ID of the app to retrieve information about.
|
|
204
203
|
:param Sequence[Union['GetAppDedicatedIpArgs', 'GetAppDedicatedIpArgsDict']] dedicated_ips: A list of dedicated egress IP addresses associated with the app.
|
|
205
204
|
"""
|
|
206
205
|
__args__ = dict()
|
|
@@ -222,7 +221,7 @@ def get_app(app_id: Optional[builtins.str] = None,
|
|
|
222
221
|
specs=pulumi.get(__ret__, 'specs'),
|
|
223
222
|
updated_at=pulumi.get(__ret__, 'updated_at'),
|
|
224
223
|
urn=pulumi.get(__ret__, 'urn'))
|
|
225
|
-
def get_app_output(app_id: Optional[pulumi.Input[
|
|
224
|
+
def get_app_output(app_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
226
225
|
dedicated_ips: Optional[pulumi.Input[Optional[Sequence[Union['GetAppDedicatedIpArgs', 'GetAppDedicatedIpArgsDict']]]]] = None,
|
|
227
226
|
opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetAppResult]:
|
|
228
227
|
"""
|
|
@@ -241,7 +240,7 @@ def get_app_output(app_id: Optional[pulumi.Input[builtins.str]] = None,
|
|
|
241
240
|
```
|
|
242
241
|
|
|
243
242
|
|
|
244
|
-
:param
|
|
243
|
+
:param _builtins.str app_id: The ID of the app to retrieve information about.
|
|
245
244
|
:param Sequence[Union['GetAppDedicatedIpArgs', 'GetAppDedicatedIpArgsDict']] dedicated_ips: A list of dedicated egress IP addresses associated with the app.
|
|
246
245
|
"""
|
|
247
246
|
__args__ = dict()
|
|
@@ -0,0 +1,214 @@
|
|
|
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
|
+
'GetByoipPrefixResult',
|
|
19
|
+
'AwaitableGetByoipPrefixResult',
|
|
20
|
+
'get_byoip_prefix',
|
|
21
|
+
'get_byoip_prefix_output',
|
|
22
|
+
]
|
|
23
|
+
|
|
24
|
+
@pulumi.output_type
|
|
25
|
+
class GetByoipPrefixResult:
|
|
26
|
+
"""
|
|
27
|
+
A collection of values returned by getByoipPrefix.
|
|
28
|
+
"""
|
|
29
|
+
def __init__(__self__, advertised=None, failure_reason=None, id=None, prefix=None, region=None, status=None, uuid=None):
|
|
30
|
+
if advertised and not isinstance(advertised, bool):
|
|
31
|
+
raise TypeError("Expected argument 'advertised' to be a bool")
|
|
32
|
+
pulumi.set(__self__, "advertised", advertised)
|
|
33
|
+
if failure_reason and not isinstance(failure_reason, str):
|
|
34
|
+
raise TypeError("Expected argument 'failure_reason' to be a str")
|
|
35
|
+
pulumi.set(__self__, "failure_reason", failure_reason)
|
|
36
|
+
if id and not isinstance(id, str):
|
|
37
|
+
raise TypeError("Expected argument 'id' to be a str")
|
|
38
|
+
pulumi.set(__self__, "id", id)
|
|
39
|
+
if prefix and not isinstance(prefix, str):
|
|
40
|
+
raise TypeError("Expected argument 'prefix' to be a str")
|
|
41
|
+
pulumi.set(__self__, "prefix", prefix)
|
|
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 status and not isinstance(status, str):
|
|
46
|
+
raise TypeError("Expected argument 'status' to be a str")
|
|
47
|
+
pulumi.set(__self__, "status", status)
|
|
48
|
+
if uuid and not isinstance(uuid, str):
|
|
49
|
+
raise TypeError("Expected argument 'uuid' to be a str")
|
|
50
|
+
pulumi.set(__self__, "uuid", uuid)
|
|
51
|
+
|
|
52
|
+
@_builtins.property
|
|
53
|
+
@pulumi.getter
|
|
54
|
+
def advertised(self) -> _builtins.bool:
|
|
55
|
+
"""
|
|
56
|
+
A boolean indicating whether the prefix is currently being advertised.
|
|
57
|
+
"""
|
|
58
|
+
return pulumi.get(self, "advertised")
|
|
59
|
+
|
|
60
|
+
@_builtins.property
|
|
61
|
+
@pulumi.getter(name="failureReason")
|
|
62
|
+
def failure_reason(self) -> _builtins.str:
|
|
63
|
+
"""
|
|
64
|
+
The reason for failure if the status is "failed".
|
|
65
|
+
"""
|
|
66
|
+
return pulumi.get(self, "failure_reason")
|
|
67
|
+
|
|
68
|
+
@_builtins.property
|
|
69
|
+
@pulumi.getter
|
|
70
|
+
def id(self) -> _builtins.str:
|
|
71
|
+
"""
|
|
72
|
+
The provider-assigned unique ID for this managed resource.
|
|
73
|
+
"""
|
|
74
|
+
return pulumi.get(self, "id")
|
|
75
|
+
|
|
76
|
+
@_builtins.property
|
|
77
|
+
@pulumi.getter
|
|
78
|
+
def prefix(self) -> _builtins.str:
|
|
79
|
+
"""
|
|
80
|
+
The CIDR notation of the prefix (e.g., "192.0.2.0/24").
|
|
81
|
+
"""
|
|
82
|
+
return pulumi.get(self, "prefix")
|
|
83
|
+
|
|
84
|
+
@_builtins.property
|
|
85
|
+
@pulumi.getter
|
|
86
|
+
def region(self) -> _builtins.str:
|
|
87
|
+
"""
|
|
88
|
+
The DigitalOcean region where the prefix is deployed.
|
|
89
|
+
"""
|
|
90
|
+
return pulumi.get(self, "region")
|
|
91
|
+
|
|
92
|
+
@_builtins.property
|
|
93
|
+
@pulumi.getter
|
|
94
|
+
def status(self) -> _builtins.str:
|
|
95
|
+
"""
|
|
96
|
+
The current status of the BYOIP prefix (e.g., "verified", "pending", "failed").
|
|
97
|
+
"""
|
|
98
|
+
return pulumi.get(self, "status")
|
|
99
|
+
|
|
100
|
+
@_builtins.property
|
|
101
|
+
@pulumi.getter
|
|
102
|
+
def uuid(self) -> _builtins.str:
|
|
103
|
+
"""
|
|
104
|
+
The UUID of the BYOIP prefix.
|
|
105
|
+
"""
|
|
106
|
+
return pulumi.get(self, "uuid")
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
class AwaitableGetByoipPrefixResult(GetByoipPrefixResult):
|
|
110
|
+
# pylint: disable=using-constant-test
|
|
111
|
+
def __await__(self):
|
|
112
|
+
if False:
|
|
113
|
+
yield self
|
|
114
|
+
return GetByoipPrefixResult(
|
|
115
|
+
advertised=self.advertised,
|
|
116
|
+
failure_reason=self.failure_reason,
|
|
117
|
+
id=self.id,
|
|
118
|
+
prefix=self.prefix,
|
|
119
|
+
region=self.region,
|
|
120
|
+
status=self.status,
|
|
121
|
+
uuid=self.uuid)
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
def get_byoip_prefix(uuid: Optional[_builtins.str] = None,
|
|
125
|
+
opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetByoipPrefixResult:
|
|
126
|
+
"""
|
|
127
|
+
## Example Usage
|
|
128
|
+
|
|
129
|
+
Get the BYOIP prefix:
|
|
130
|
+
|
|
131
|
+
```python
|
|
132
|
+
import pulumi
|
|
133
|
+
import pulumi_digitalocean as digitalocean
|
|
134
|
+
|
|
135
|
+
example = digitalocean.get_byoip_prefix(uuid="506f78a4-e098-11e5-ad9f-000f53306ae1")
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
List assigned IP addresses from a BYOIP prefix:
|
|
139
|
+
|
|
140
|
+
```python
|
|
141
|
+
import pulumi
|
|
142
|
+
import pulumi_digitalocean as digitalocean
|
|
143
|
+
|
|
144
|
+
example = digitalocean.get_byoip_prefix(uuid="506f78a4-e098-11e5-ad9f-000f53306ae1")
|
|
145
|
+
example_get_byoip_prefix_resources = digitalocean.get_byoip_prefix_resources(byoip_prefix_uuid=example.uuid)
|
|
146
|
+
pulumi.export("byoipInfo", {
|
|
147
|
+
"prefix": example.prefix,
|
|
148
|
+
"region": example.region,
|
|
149
|
+
"status": example.status,
|
|
150
|
+
"assignedCount": len(example_get_byoip_prefix_resources.addresses),
|
|
151
|
+
})
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
|
|
155
|
+
:param _builtins.str uuid: The UUID of the BYOIP prefix.
|
|
156
|
+
"""
|
|
157
|
+
__args__ = dict()
|
|
158
|
+
__args__['uuid'] = uuid
|
|
159
|
+
opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
|
|
160
|
+
__ret__ = pulumi.runtime.invoke('digitalocean:index/getByoipPrefix:getByoipPrefix', __args__, opts=opts, typ=GetByoipPrefixResult).value
|
|
161
|
+
|
|
162
|
+
return AwaitableGetByoipPrefixResult(
|
|
163
|
+
advertised=pulumi.get(__ret__, 'advertised'),
|
|
164
|
+
failure_reason=pulumi.get(__ret__, 'failure_reason'),
|
|
165
|
+
id=pulumi.get(__ret__, 'id'),
|
|
166
|
+
prefix=pulumi.get(__ret__, 'prefix'),
|
|
167
|
+
region=pulumi.get(__ret__, 'region'),
|
|
168
|
+
status=pulumi.get(__ret__, 'status'),
|
|
169
|
+
uuid=pulumi.get(__ret__, 'uuid'))
|
|
170
|
+
def get_byoip_prefix_output(uuid: Optional[pulumi.Input[_builtins.str]] = None,
|
|
171
|
+
opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetByoipPrefixResult]:
|
|
172
|
+
"""
|
|
173
|
+
## Example Usage
|
|
174
|
+
|
|
175
|
+
Get the BYOIP prefix:
|
|
176
|
+
|
|
177
|
+
```python
|
|
178
|
+
import pulumi
|
|
179
|
+
import pulumi_digitalocean as digitalocean
|
|
180
|
+
|
|
181
|
+
example = digitalocean.get_byoip_prefix(uuid="506f78a4-e098-11e5-ad9f-000f53306ae1")
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
List assigned IP addresses from a BYOIP prefix:
|
|
185
|
+
|
|
186
|
+
```python
|
|
187
|
+
import pulumi
|
|
188
|
+
import pulumi_digitalocean as digitalocean
|
|
189
|
+
|
|
190
|
+
example = digitalocean.get_byoip_prefix(uuid="506f78a4-e098-11e5-ad9f-000f53306ae1")
|
|
191
|
+
example_get_byoip_prefix_resources = digitalocean.get_byoip_prefix_resources(byoip_prefix_uuid=example.uuid)
|
|
192
|
+
pulumi.export("byoipInfo", {
|
|
193
|
+
"prefix": example.prefix,
|
|
194
|
+
"region": example.region,
|
|
195
|
+
"status": example.status,
|
|
196
|
+
"assignedCount": len(example_get_byoip_prefix_resources.addresses),
|
|
197
|
+
})
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
|
|
201
|
+
:param _builtins.str uuid: The UUID of the BYOIP prefix.
|
|
202
|
+
"""
|
|
203
|
+
__args__ = dict()
|
|
204
|
+
__args__['uuid'] = uuid
|
|
205
|
+
opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
|
|
206
|
+
__ret__ = pulumi.runtime.invoke_output('digitalocean:index/getByoipPrefix:getByoipPrefix', __args__, opts=opts, typ=GetByoipPrefixResult)
|
|
207
|
+
return __ret__.apply(lambda __response__: GetByoipPrefixResult(
|
|
208
|
+
advertised=pulumi.get(__response__, 'advertised'),
|
|
209
|
+
failure_reason=pulumi.get(__response__, 'failure_reason'),
|
|
210
|
+
id=pulumi.get(__response__, 'id'),
|
|
211
|
+
prefix=pulumi.get(__response__, 'prefix'),
|
|
212
|
+
region=pulumi.get(__response__, 'region'),
|
|
213
|
+
status=pulumi.get(__response__, 'status'),
|
|
214
|
+
uuid=pulumi.get(__response__, 'uuid')))
|
|
@@ -0,0 +1,150 @@
|
|
|
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
|
+
|
|
18
|
+
__all__ = [
|
|
19
|
+
'GetByoipPrefixResourcesResult',
|
|
20
|
+
'AwaitableGetByoipPrefixResourcesResult',
|
|
21
|
+
'get_byoip_prefix_resources',
|
|
22
|
+
'get_byoip_prefix_resources_output',
|
|
23
|
+
]
|
|
24
|
+
|
|
25
|
+
@pulumi.output_type
|
|
26
|
+
class GetByoipPrefixResourcesResult:
|
|
27
|
+
"""
|
|
28
|
+
A collection of values returned by getByoipPrefixResources.
|
|
29
|
+
"""
|
|
30
|
+
def __init__(__self__, addresses=None, byoip_prefix_uuid=None, id=None):
|
|
31
|
+
if addresses and not isinstance(addresses, list):
|
|
32
|
+
raise TypeError("Expected argument 'addresses' to be a list")
|
|
33
|
+
pulumi.set(__self__, "addresses", addresses)
|
|
34
|
+
if byoip_prefix_uuid and not isinstance(byoip_prefix_uuid, str):
|
|
35
|
+
raise TypeError("Expected argument 'byoip_prefix_uuid' to be a str")
|
|
36
|
+
pulumi.set(__self__, "byoip_prefix_uuid", byoip_prefix_uuid)
|
|
37
|
+
if id and not isinstance(id, str):
|
|
38
|
+
raise TypeError("Expected argument 'id' to be a str")
|
|
39
|
+
pulumi.set(__self__, "id", id)
|
|
40
|
+
|
|
41
|
+
@_builtins.property
|
|
42
|
+
@pulumi.getter
|
|
43
|
+
def addresses(self) -> Sequence['outputs.GetByoipPrefixResourcesAddressResult']:
|
|
44
|
+
"""
|
|
45
|
+
A list of IP addresses allocated from the BYOIP prefix. Each address has the following attributes:
|
|
46
|
+
"""
|
|
47
|
+
return pulumi.get(self, "addresses")
|
|
48
|
+
|
|
49
|
+
@_builtins.property
|
|
50
|
+
@pulumi.getter(name="byoipPrefixUuid")
|
|
51
|
+
def byoip_prefix_uuid(self) -> _builtins.str:
|
|
52
|
+
return pulumi.get(self, "byoip_prefix_uuid")
|
|
53
|
+
|
|
54
|
+
@_builtins.property
|
|
55
|
+
@pulumi.getter
|
|
56
|
+
def id(self) -> _builtins.str:
|
|
57
|
+
"""
|
|
58
|
+
The provider-assigned unique ID for this managed resource.
|
|
59
|
+
"""
|
|
60
|
+
return pulumi.get(self, "id")
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
class AwaitableGetByoipPrefixResourcesResult(GetByoipPrefixResourcesResult):
|
|
64
|
+
# pylint: disable=using-constant-test
|
|
65
|
+
def __await__(self):
|
|
66
|
+
if False:
|
|
67
|
+
yield self
|
|
68
|
+
return GetByoipPrefixResourcesResult(
|
|
69
|
+
addresses=self.addresses,
|
|
70
|
+
byoip_prefix_uuid=self.byoip_prefix_uuid,
|
|
71
|
+
id=self.id)
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
def get_byoip_prefix_resources(byoip_prefix_uuid: Optional[_builtins.str] = None,
|
|
75
|
+
opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetByoipPrefixResourcesResult:
|
|
76
|
+
"""
|
|
77
|
+
Get information about IP addresses that have been **already assigned** from a
|
|
78
|
+
BYOIP (Bring Your Own IP) prefix. This data source provides a list of all IP addresses
|
|
79
|
+
that are currently assigned to resources from a specific BYOIP prefix.
|
|
80
|
+
|
|
81
|
+
**Note:** This data source only lists IPs that are already assigned to resources (like Droplets).
|
|
82
|
+
To allocate new IPs from the BYOIP prefix, you need to use `ReservedIpAssignment` resource.
|
|
83
|
+
|
|
84
|
+
## Example Usage
|
|
85
|
+
|
|
86
|
+
List all assigned IP addresses from a BYOIP prefix:
|
|
87
|
+
|
|
88
|
+
```python
|
|
89
|
+
import pulumi
|
|
90
|
+
import pulumi_digitalocean as digitalocean
|
|
91
|
+
|
|
92
|
+
example = digitalocean.get_byoip_prefix(uuid="506f78a4-e098-11e5-ad9f-000f53306ae1")
|
|
93
|
+
example_get_byoip_prefix_resources = digitalocean.get_byoip_prefix_resources(byoip_prefix_uuid=example.uuid)
|
|
94
|
+
pulumi.export("assignedByoipIps", [{
|
|
95
|
+
"ip": addr.ip_address,
|
|
96
|
+
"region": addr.region,
|
|
97
|
+
"assigned": addr.assigned_at,
|
|
98
|
+
} for addr in example_get_byoip_prefix_resources.addresses])
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
:param _builtins.str byoip_prefix_uuid: The UUID of the BYOIP prefix to list addresses from.
|
|
103
|
+
"""
|
|
104
|
+
__args__ = dict()
|
|
105
|
+
__args__['byoipPrefixUuid'] = byoip_prefix_uuid
|
|
106
|
+
opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
|
|
107
|
+
__ret__ = pulumi.runtime.invoke('digitalocean:index/getByoipPrefixResources:getByoipPrefixResources', __args__, opts=opts, typ=GetByoipPrefixResourcesResult).value
|
|
108
|
+
|
|
109
|
+
return AwaitableGetByoipPrefixResourcesResult(
|
|
110
|
+
addresses=pulumi.get(__ret__, 'addresses'),
|
|
111
|
+
byoip_prefix_uuid=pulumi.get(__ret__, 'byoip_prefix_uuid'),
|
|
112
|
+
id=pulumi.get(__ret__, 'id'))
|
|
113
|
+
def get_byoip_prefix_resources_output(byoip_prefix_uuid: Optional[pulumi.Input[_builtins.str]] = None,
|
|
114
|
+
opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetByoipPrefixResourcesResult]:
|
|
115
|
+
"""
|
|
116
|
+
Get information about IP addresses that have been **already assigned** from a
|
|
117
|
+
BYOIP (Bring Your Own IP) prefix. This data source provides a list of all IP addresses
|
|
118
|
+
that are currently assigned to resources from a specific BYOIP prefix.
|
|
119
|
+
|
|
120
|
+
**Note:** This data source only lists IPs that are already assigned to resources (like Droplets).
|
|
121
|
+
To allocate new IPs from the BYOIP prefix, you need to use `ReservedIpAssignment` resource.
|
|
122
|
+
|
|
123
|
+
## Example Usage
|
|
124
|
+
|
|
125
|
+
List all assigned IP addresses from a BYOIP prefix:
|
|
126
|
+
|
|
127
|
+
```python
|
|
128
|
+
import pulumi
|
|
129
|
+
import pulumi_digitalocean as digitalocean
|
|
130
|
+
|
|
131
|
+
example = digitalocean.get_byoip_prefix(uuid="506f78a4-e098-11e5-ad9f-000f53306ae1")
|
|
132
|
+
example_get_byoip_prefix_resources = digitalocean.get_byoip_prefix_resources(byoip_prefix_uuid=example.uuid)
|
|
133
|
+
pulumi.export("assignedByoipIps", [{
|
|
134
|
+
"ip": addr.ip_address,
|
|
135
|
+
"region": addr.region,
|
|
136
|
+
"assigned": addr.assigned_at,
|
|
137
|
+
} for addr in example_get_byoip_prefix_resources.addresses])
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
|
|
141
|
+
:param _builtins.str byoip_prefix_uuid: The UUID of the BYOIP prefix to list addresses from.
|
|
142
|
+
"""
|
|
143
|
+
__args__ = dict()
|
|
144
|
+
__args__['byoipPrefixUuid'] = byoip_prefix_uuid
|
|
145
|
+
opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
|
|
146
|
+
__ret__ = pulumi.runtime.invoke_output('digitalocean:index/getByoipPrefixResources:getByoipPrefixResources', __args__, opts=opts, typ=GetByoipPrefixResourcesResult)
|
|
147
|
+
return __ret__.apply(lambda __response__: GetByoipPrefixResourcesResult(
|
|
148
|
+
addresses=pulumi.get(__response__, 'addresses'),
|
|
149
|
+
byoip_prefix_uuid=pulumi.get(__response__, 'byoip_prefix_uuid'),
|
|
150
|
+
id=pulumi.get(__response__, 'id')))
|