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
|
@@ -0,0 +1,452 @@
|
|
|
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__ = ['ByoipPrefixArgs', 'ByoipPrefix']
|
|
18
|
+
|
|
19
|
+
@pulumi.input_type
|
|
20
|
+
class ByoipPrefixArgs:
|
|
21
|
+
def __init__(__self__, *,
|
|
22
|
+
prefix: pulumi.Input[_builtins.str],
|
|
23
|
+
region: pulumi.Input[_builtins.str],
|
|
24
|
+
advertised: Optional[pulumi.Input[_builtins.bool]] = None,
|
|
25
|
+
signature: Optional[pulumi.Input[_builtins.str]] = None):
|
|
26
|
+
"""
|
|
27
|
+
The set of arguments for constructing a ByoipPrefix resource.
|
|
28
|
+
:param pulumi.Input[_builtins.str] prefix: The CIDR notation of the prefix (e.g., "192.0.2.0/24").
|
|
29
|
+
:param pulumi.Input[_builtins.str] region: The DigitalOcean region where the prefix will be deployed.
|
|
30
|
+
:param pulumi.Input[_builtins.bool] advertised: A boolean indicating whether the prefix should be advertised.
|
|
31
|
+
Defaults to `false`.
|
|
32
|
+
:param pulumi.Input[_builtins.str] signature: The cryptographic signature proving ownership of the prefix.
|
|
33
|
+
This is required during creation but can be omitted in subsequent updates.
|
|
34
|
+
"""
|
|
35
|
+
pulumi.set(__self__, "prefix", prefix)
|
|
36
|
+
pulumi.set(__self__, "region", region)
|
|
37
|
+
if advertised is not None:
|
|
38
|
+
pulumi.set(__self__, "advertised", advertised)
|
|
39
|
+
if signature is not None:
|
|
40
|
+
pulumi.set(__self__, "signature", signature)
|
|
41
|
+
|
|
42
|
+
@_builtins.property
|
|
43
|
+
@pulumi.getter
|
|
44
|
+
def prefix(self) -> pulumi.Input[_builtins.str]:
|
|
45
|
+
"""
|
|
46
|
+
The CIDR notation of the prefix (e.g., "192.0.2.0/24").
|
|
47
|
+
"""
|
|
48
|
+
return pulumi.get(self, "prefix")
|
|
49
|
+
|
|
50
|
+
@prefix.setter
|
|
51
|
+
def prefix(self, value: pulumi.Input[_builtins.str]):
|
|
52
|
+
pulumi.set(self, "prefix", value)
|
|
53
|
+
|
|
54
|
+
@_builtins.property
|
|
55
|
+
@pulumi.getter
|
|
56
|
+
def region(self) -> pulumi.Input[_builtins.str]:
|
|
57
|
+
"""
|
|
58
|
+
The DigitalOcean region where the prefix will be deployed.
|
|
59
|
+
"""
|
|
60
|
+
return pulumi.get(self, "region")
|
|
61
|
+
|
|
62
|
+
@region.setter
|
|
63
|
+
def region(self, value: pulumi.Input[_builtins.str]):
|
|
64
|
+
pulumi.set(self, "region", value)
|
|
65
|
+
|
|
66
|
+
@_builtins.property
|
|
67
|
+
@pulumi.getter
|
|
68
|
+
def advertised(self) -> Optional[pulumi.Input[_builtins.bool]]:
|
|
69
|
+
"""
|
|
70
|
+
A boolean indicating whether the prefix should be advertised.
|
|
71
|
+
Defaults to `false`.
|
|
72
|
+
"""
|
|
73
|
+
return pulumi.get(self, "advertised")
|
|
74
|
+
|
|
75
|
+
@advertised.setter
|
|
76
|
+
def advertised(self, value: Optional[pulumi.Input[_builtins.bool]]):
|
|
77
|
+
pulumi.set(self, "advertised", value)
|
|
78
|
+
|
|
79
|
+
@_builtins.property
|
|
80
|
+
@pulumi.getter
|
|
81
|
+
def signature(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
82
|
+
"""
|
|
83
|
+
The cryptographic signature proving ownership of the prefix.
|
|
84
|
+
This is required during creation but can be omitted in subsequent updates.
|
|
85
|
+
"""
|
|
86
|
+
return pulumi.get(self, "signature")
|
|
87
|
+
|
|
88
|
+
@signature.setter
|
|
89
|
+
def signature(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
90
|
+
pulumi.set(self, "signature", value)
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
@pulumi.input_type
|
|
94
|
+
class _ByoipPrefixState:
|
|
95
|
+
def __init__(__self__, *,
|
|
96
|
+
advertised: Optional[pulumi.Input[_builtins.bool]] = None,
|
|
97
|
+
failure_reason: Optional[pulumi.Input[_builtins.str]] = None,
|
|
98
|
+
prefix: Optional[pulumi.Input[_builtins.str]] = None,
|
|
99
|
+
region: Optional[pulumi.Input[_builtins.str]] = None,
|
|
100
|
+
signature: Optional[pulumi.Input[_builtins.str]] = None,
|
|
101
|
+
status: Optional[pulumi.Input[_builtins.str]] = None,
|
|
102
|
+
uuid: Optional[pulumi.Input[_builtins.str]] = None):
|
|
103
|
+
"""
|
|
104
|
+
Input properties used for looking up and filtering ByoipPrefix resources.
|
|
105
|
+
:param pulumi.Input[_builtins.bool] advertised: A boolean indicating whether the prefix should be advertised.
|
|
106
|
+
Defaults to `false`.
|
|
107
|
+
:param pulumi.Input[_builtins.str] failure_reason: The reason for failure if the status is "failed".
|
|
108
|
+
:param pulumi.Input[_builtins.str] prefix: The CIDR notation of the prefix (e.g., "192.0.2.0/24").
|
|
109
|
+
:param pulumi.Input[_builtins.str] region: The DigitalOcean region where the prefix will be deployed.
|
|
110
|
+
:param pulumi.Input[_builtins.str] signature: The cryptographic signature proving ownership of the prefix.
|
|
111
|
+
This is required during creation but can be omitted in subsequent updates.
|
|
112
|
+
:param pulumi.Input[_builtins.str] status: The current status of the BYOIP prefix (e.g., "verified", "pending", "failed").
|
|
113
|
+
:param pulumi.Input[_builtins.str] uuid: The UUID of the BYOIP prefix.
|
|
114
|
+
"""
|
|
115
|
+
if advertised is not None:
|
|
116
|
+
pulumi.set(__self__, "advertised", advertised)
|
|
117
|
+
if failure_reason is not None:
|
|
118
|
+
pulumi.set(__self__, "failure_reason", failure_reason)
|
|
119
|
+
if prefix is not None:
|
|
120
|
+
pulumi.set(__self__, "prefix", prefix)
|
|
121
|
+
if region is not None:
|
|
122
|
+
pulumi.set(__self__, "region", region)
|
|
123
|
+
if signature is not None:
|
|
124
|
+
pulumi.set(__self__, "signature", signature)
|
|
125
|
+
if status is not None:
|
|
126
|
+
pulumi.set(__self__, "status", status)
|
|
127
|
+
if uuid is not None:
|
|
128
|
+
pulumi.set(__self__, "uuid", uuid)
|
|
129
|
+
|
|
130
|
+
@_builtins.property
|
|
131
|
+
@pulumi.getter
|
|
132
|
+
def advertised(self) -> Optional[pulumi.Input[_builtins.bool]]:
|
|
133
|
+
"""
|
|
134
|
+
A boolean indicating whether the prefix should be advertised.
|
|
135
|
+
Defaults to `false`.
|
|
136
|
+
"""
|
|
137
|
+
return pulumi.get(self, "advertised")
|
|
138
|
+
|
|
139
|
+
@advertised.setter
|
|
140
|
+
def advertised(self, value: Optional[pulumi.Input[_builtins.bool]]):
|
|
141
|
+
pulumi.set(self, "advertised", value)
|
|
142
|
+
|
|
143
|
+
@_builtins.property
|
|
144
|
+
@pulumi.getter(name="failureReason")
|
|
145
|
+
def failure_reason(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
146
|
+
"""
|
|
147
|
+
The reason for failure if the status is "failed".
|
|
148
|
+
"""
|
|
149
|
+
return pulumi.get(self, "failure_reason")
|
|
150
|
+
|
|
151
|
+
@failure_reason.setter
|
|
152
|
+
def failure_reason(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
153
|
+
pulumi.set(self, "failure_reason", value)
|
|
154
|
+
|
|
155
|
+
@_builtins.property
|
|
156
|
+
@pulumi.getter
|
|
157
|
+
def prefix(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
158
|
+
"""
|
|
159
|
+
The CIDR notation of the prefix (e.g., "192.0.2.0/24").
|
|
160
|
+
"""
|
|
161
|
+
return pulumi.get(self, "prefix")
|
|
162
|
+
|
|
163
|
+
@prefix.setter
|
|
164
|
+
def prefix(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
165
|
+
pulumi.set(self, "prefix", value)
|
|
166
|
+
|
|
167
|
+
@_builtins.property
|
|
168
|
+
@pulumi.getter
|
|
169
|
+
def region(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
170
|
+
"""
|
|
171
|
+
The DigitalOcean region where the prefix will be deployed.
|
|
172
|
+
"""
|
|
173
|
+
return pulumi.get(self, "region")
|
|
174
|
+
|
|
175
|
+
@region.setter
|
|
176
|
+
def region(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
177
|
+
pulumi.set(self, "region", value)
|
|
178
|
+
|
|
179
|
+
@_builtins.property
|
|
180
|
+
@pulumi.getter
|
|
181
|
+
def signature(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
182
|
+
"""
|
|
183
|
+
The cryptographic signature proving ownership of the prefix.
|
|
184
|
+
This is required during creation but can be omitted in subsequent updates.
|
|
185
|
+
"""
|
|
186
|
+
return pulumi.get(self, "signature")
|
|
187
|
+
|
|
188
|
+
@signature.setter
|
|
189
|
+
def signature(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
190
|
+
pulumi.set(self, "signature", value)
|
|
191
|
+
|
|
192
|
+
@_builtins.property
|
|
193
|
+
@pulumi.getter
|
|
194
|
+
def status(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
195
|
+
"""
|
|
196
|
+
The current status of the BYOIP prefix (e.g., "verified", "pending", "failed").
|
|
197
|
+
"""
|
|
198
|
+
return pulumi.get(self, "status")
|
|
199
|
+
|
|
200
|
+
@status.setter
|
|
201
|
+
def status(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
202
|
+
pulumi.set(self, "status", value)
|
|
203
|
+
|
|
204
|
+
@_builtins.property
|
|
205
|
+
@pulumi.getter
|
|
206
|
+
def uuid(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
207
|
+
"""
|
|
208
|
+
The UUID of the BYOIP prefix.
|
|
209
|
+
"""
|
|
210
|
+
return pulumi.get(self, "uuid")
|
|
211
|
+
|
|
212
|
+
@uuid.setter
|
|
213
|
+
def uuid(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
214
|
+
pulumi.set(self, "uuid", value)
|
|
215
|
+
|
|
216
|
+
|
|
217
|
+
@pulumi.type_token("digitalocean:index/byoipPrefix:ByoipPrefix")
|
|
218
|
+
class ByoipPrefix(pulumi.CustomResource):
|
|
219
|
+
@overload
|
|
220
|
+
def __init__(__self__,
|
|
221
|
+
resource_name: str,
|
|
222
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
223
|
+
advertised: Optional[pulumi.Input[_builtins.bool]] = None,
|
|
224
|
+
prefix: Optional[pulumi.Input[_builtins.str]] = None,
|
|
225
|
+
region: Optional[pulumi.Input[_builtins.str]] = None,
|
|
226
|
+
signature: Optional[pulumi.Input[_builtins.str]] = None,
|
|
227
|
+
__props__=None):
|
|
228
|
+
"""
|
|
229
|
+
Provides a DigitalOcean BYOIP (Bring Your Own IP) prefix resource. This can be used to
|
|
230
|
+
create, modify, and delete BYOIP prefixes.
|
|
231
|
+
|
|
232
|
+
BYOIP prefixes allow you to bring your own IP address space to DigitalOcean. You can
|
|
233
|
+
use this feature to maintain your IP reputation or meet specific compliance requirements.
|
|
234
|
+
|
|
235
|
+
BYOIP prefix provisioning documentation: https://docs.digitalocean.com/products/networking/reserved-ips/how-to/provision-byoip/
|
|
236
|
+
|
|
237
|
+
Note: By default, newly provisioned BYOIP prefixes are not advertised to the internet. After the initial `pulumi up`, BYOIP provisioning request is initiated and DigitalOcean provisions the prefix, the prefix status changes to Active. At this point, you can initiate advertising prefix to the internet by setting field `advertised = true` and apply the configuration to make your prefix fully usable and accessible from the internet.
|
|
238
|
+
|
|
239
|
+
## Example Usage
|
|
240
|
+
|
|
241
|
+
```python
|
|
242
|
+
import pulumi
|
|
243
|
+
import pulumi_digitalocean as digitalocean
|
|
244
|
+
|
|
245
|
+
# Create a new BYOIP prefix
|
|
246
|
+
example = digitalocean.ByoipPrefix("example",
|
|
247
|
+
prefix="192.0.2.0/24",
|
|
248
|
+
signature=prefix_signature,
|
|
249
|
+
region="nyc3",
|
|
250
|
+
advertised=False)
|
|
251
|
+
```
|
|
252
|
+
|
|
253
|
+
## Import
|
|
254
|
+
|
|
255
|
+
BYOIP prefixes can be imported using the prefix `uuid`, e.g.
|
|
256
|
+
|
|
257
|
+
```sh
|
|
258
|
+
$ pulumi import digitalocean:index/byoipPrefix:ByoipPrefix example 506f78a4-e098-11e5-ad9f-000f53306ae1
|
|
259
|
+
```
|
|
260
|
+
|
|
261
|
+
:param str resource_name: The name of the resource.
|
|
262
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
263
|
+
:param pulumi.Input[_builtins.bool] advertised: A boolean indicating whether the prefix should be advertised.
|
|
264
|
+
Defaults to `false`.
|
|
265
|
+
:param pulumi.Input[_builtins.str] prefix: The CIDR notation of the prefix (e.g., "192.0.2.0/24").
|
|
266
|
+
:param pulumi.Input[_builtins.str] region: The DigitalOcean region where the prefix will be deployed.
|
|
267
|
+
:param pulumi.Input[_builtins.str] signature: The cryptographic signature proving ownership of the prefix.
|
|
268
|
+
This is required during creation but can be omitted in subsequent updates.
|
|
269
|
+
"""
|
|
270
|
+
...
|
|
271
|
+
@overload
|
|
272
|
+
def __init__(__self__,
|
|
273
|
+
resource_name: str,
|
|
274
|
+
args: ByoipPrefixArgs,
|
|
275
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
|
276
|
+
"""
|
|
277
|
+
Provides a DigitalOcean BYOIP (Bring Your Own IP) prefix resource. This can be used to
|
|
278
|
+
create, modify, and delete BYOIP prefixes.
|
|
279
|
+
|
|
280
|
+
BYOIP prefixes allow you to bring your own IP address space to DigitalOcean. You can
|
|
281
|
+
use this feature to maintain your IP reputation or meet specific compliance requirements.
|
|
282
|
+
|
|
283
|
+
BYOIP prefix provisioning documentation: https://docs.digitalocean.com/products/networking/reserved-ips/how-to/provision-byoip/
|
|
284
|
+
|
|
285
|
+
Note: By default, newly provisioned BYOIP prefixes are not advertised to the internet. After the initial `pulumi up`, BYOIP provisioning request is initiated and DigitalOcean provisions the prefix, the prefix status changes to Active. At this point, you can initiate advertising prefix to the internet by setting field `advertised = true` and apply the configuration to make your prefix fully usable and accessible from the internet.
|
|
286
|
+
|
|
287
|
+
## Example Usage
|
|
288
|
+
|
|
289
|
+
```python
|
|
290
|
+
import pulumi
|
|
291
|
+
import pulumi_digitalocean as digitalocean
|
|
292
|
+
|
|
293
|
+
# Create a new BYOIP prefix
|
|
294
|
+
example = digitalocean.ByoipPrefix("example",
|
|
295
|
+
prefix="192.0.2.0/24",
|
|
296
|
+
signature=prefix_signature,
|
|
297
|
+
region="nyc3",
|
|
298
|
+
advertised=False)
|
|
299
|
+
```
|
|
300
|
+
|
|
301
|
+
## Import
|
|
302
|
+
|
|
303
|
+
BYOIP prefixes can be imported using the prefix `uuid`, e.g.
|
|
304
|
+
|
|
305
|
+
```sh
|
|
306
|
+
$ pulumi import digitalocean:index/byoipPrefix:ByoipPrefix example 506f78a4-e098-11e5-ad9f-000f53306ae1
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
:param str resource_name: The name of the resource.
|
|
310
|
+
:param ByoipPrefixArgs args: The arguments to use to populate this resource's properties.
|
|
311
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
312
|
+
"""
|
|
313
|
+
...
|
|
314
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
|
315
|
+
resource_args, opts = _utilities.get_resource_args_opts(ByoipPrefixArgs, pulumi.ResourceOptions, *args, **kwargs)
|
|
316
|
+
if resource_args is not None:
|
|
317
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
|
318
|
+
else:
|
|
319
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
|
320
|
+
|
|
321
|
+
def _internal_init(__self__,
|
|
322
|
+
resource_name: str,
|
|
323
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
324
|
+
advertised: Optional[pulumi.Input[_builtins.bool]] = None,
|
|
325
|
+
prefix: Optional[pulumi.Input[_builtins.str]] = None,
|
|
326
|
+
region: Optional[pulumi.Input[_builtins.str]] = None,
|
|
327
|
+
signature: Optional[pulumi.Input[_builtins.str]] = None,
|
|
328
|
+
__props__=None):
|
|
329
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
|
330
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
|
331
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
|
332
|
+
if opts.id is None:
|
|
333
|
+
if __props__ is not None:
|
|
334
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
|
335
|
+
__props__ = ByoipPrefixArgs.__new__(ByoipPrefixArgs)
|
|
336
|
+
|
|
337
|
+
__props__.__dict__["advertised"] = advertised
|
|
338
|
+
if prefix is None and not opts.urn:
|
|
339
|
+
raise TypeError("Missing required property 'prefix'")
|
|
340
|
+
__props__.__dict__["prefix"] = prefix
|
|
341
|
+
if region is None and not opts.urn:
|
|
342
|
+
raise TypeError("Missing required property 'region'")
|
|
343
|
+
__props__.__dict__["region"] = region
|
|
344
|
+
__props__.__dict__["signature"] = signature
|
|
345
|
+
__props__.__dict__["failure_reason"] = None
|
|
346
|
+
__props__.__dict__["status"] = None
|
|
347
|
+
__props__.__dict__["uuid"] = None
|
|
348
|
+
super(ByoipPrefix, __self__).__init__(
|
|
349
|
+
'digitalocean:index/byoipPrefix:ByoipPrefix',
|
|
350
|
+
resource_name,
|
|
351
|
+
__props__,
|
|
352
|
+
opts)
|
|
353
|
+
|
|
354
|
+
@staticmethod
|
|
355
|
+
def get(resource_name: str,
|
|
356
|
+
id: pulumi.Input[str],
|
|
357
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
358
|
+
advertised: Optional[pulumi.Input[_builtins.bool]] = None,
|
|
359
|
+
failure_reason: Optional[pulumi.Input[_builtins.str]] = None,
|
|
360
|
+
prefix: Optional[pulumi.Input[_builtins.str]] = None,
|
|
361
|
+
region: Optional[pulumi.Input[_builtins.str]] = None,
|
|
362
|
+
signature: Optional[pulumi.Input[_builtins.str]] = None,
|
|
363
|
+
status: Optional[pulumi.Input[_builtins.str]] = None,
|
|
364
|
+
uuid: Optional[pulumi.Input[_builtins.str]] = None) -> 'ByoipPrefix':
|
|
365
|
+
"""
|
|
366
|
+
Get an existing ByoipPrefix resource's state with the given name, id, and optional extra
|
|
367
|
+
properties used to qualify the lookup.
|
|
368
|
+
|
|
369
|
+
:param str resource_name: The unique name of the resulting resource.
|
|
370
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
|
371
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
372
|
+
:param pulumi.Input[_builtins.bool] advertised: A boolean indicating whether the prefix should be advertised.
|
|
373
|
+
Defaults to `false`.
|
|
374
|
+
:param pulumi.Input[_builtins.str] failure_reason: The reason for failure if the status is "failed".
|
|
375
|
+
:param pulumi.Input[_builtins.str] prefix: The CIDR notation of the prefix (e.g., "192.0.2.0/24").
|
|
376
|
+
:param pulumi.Input[_builtins.str] region: The DigitalOcean region where the prefix will be deployed.
|
|
377
|
+
:param pulumi.Input[_builtins.str] signature: The cryptographic signature proving ownership of the prefix.
|
|
378
|
+
This is required during creation but can be omitted in subsequent updates.
|
|
379
|
+
:param pulumi.Input[_builtins.str] status: The current status of the BYOIP prefix (e.g., "verified", "pending", "failed").
|
|
380
|
+
:param pulumi.Input[_builtins.str] uuid: The UUID of the BYOIP prefix.
|
|
381
|
+
"""
|
|
382
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
|
383
|
+
|
|
384
|
+
__props__ = _ByoipPrefixState.__new__(_ByoipPrefixState)
|
|
385
|
+
|
|
386
|
+
__props__.__dict__["advertised"] = advertised
|
|
387
|
+
__props__.__dict__["failure_reason"] = failure_reason
|
|
388
|
+
__props__.__dict__["prefix"] = prefix
|
|
389
|
+
__props__.__dict__["region"] = region
|
|
390
|
+
__props__.__dict__["signature"] = signature
|
|
391
|
+
__props__.__dict__["status"] = status
|
|
392
|
+
__props__.__dict__["uuid"] = uuid
|
|
393
|
+
return ByoipPrefix(resource_name, opts=opts, __props__=__props__)
|
|
394
|
+
|
|
395
|
+
@_builtins.property
|
|
396
|
+
@pulumi.getter
|
|
397
|
+
def advertised(self) -> pulumi.Output[Optional[_builtins.bool]]:
|
|
398
|
+
"""
|
|
399
|
+
A boolean indicating whether the prefix should be advertised.
|
|
400
|
+
Defaults to `false`.
|
|
401
|
+
"""
|
|
402
|
+
return pulumi.get(self, "advertised")
|
|
403
|
+
|
|
404
|
+
@_builtins.property
|
|
405
|
+
@pulumi.getter(name="failureReason")
|
|
406
|
+
def failure_reason(self) -> pulumi.Output[_builtins.str]:
|
|
407
|
+
"""
|
|
408
|
+
The reason for failure if the status is "failed".
|
|
409
|
+
"""
|
|
410
|
+
return pulumi.get(self, "failure_reason")
|
|
411
|
+
|
|
412
|
+
@_builtins.property
|
|
413
|
+
@pulumi.getter
|
|
414
|
+
def prefix(self) -> pulumi.Output[_builtins.str]:
|
|
415
|
+
"""
|
|
416
|
+
The CIDR notation of the prefix (e.g., "192.0.2.0/24").
|
|
417
|
+
"""
|
|
418
|
+
return pulumi.get(self, "prefix")
|
|
419
|
+
|
|
420
|
+
@_builtins.property
|
|
421
|
+
@pulumi.getter
|
|
422
|
+
def region(self) -> pulumi.Output[_builtins.str]:
|
|
423
|
+
"""
|
|
424
|
+
The DigitalOcean region where the prefix will be deployed.
|
|
425
|
+
"""
|
|
426
|
+
return pulumi.get(self, "region")
|
|
427
|
+
|
|
428
|
+
@_builtins.property
|
|
429
|
+
@pulumi.getter
|
|
430
|
+
def signature(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
431
|
+
"""
|
|
432
|
+
The cryptographic signature proving ownership of the prefix.
|
|
433
|
+
This is required during creation but can be omitted in subsequent updates.
|
|
434
|
+
"""
|
|
435
|
+
return pulumi.get(self, "signature")
|
|
436
|
+
|
|
437
|
+
@_builtins.property
|
|
438
|
+
@pulumi.getter
|
|
439
|
+
def status(self) -> pulumi.Output[_builtins.str]:
|
|
440
|
+
"""
|
|
441
|
+
The current status of the BYOIP prefix (e.g., "verified", "pending", "failed").
|
|
442
|
+
"""
|
|
443
|
+
return pulumi.get(self, "status")
|
|
444
|
+
|
|
445
|
+
@_builtins.property
|
|
446
|
+
@pulumi.getter
|
|
447
|
+
def uuid(self) -> pulumi.Output[_builtins.str]:
|
|
448
|
+
"""
|
|
449
|
+
The UUID of the BYOIP prefix.
|
|
450
|
+
"""
|
|
451
|
+
return pulumi.get(self, "uuid")
|
|
452
|
+
|