pulumiverse-scaleway 1.16.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of pulumiverse-scaleway might be problematic. Click here for more details.
- pulumiverse_scaleway/__init__.py +1073 -0
- pulumiverse_scaleway/_inputs.py +8665 -0
- pulumiverse_scaleway/_utilities.py +327 -0
- pulumiverse_scaleway/account_project.py +316 -0
- pulumiverse_scaleway/account_ssh_key.py +450 -0
- pulumiverse_scaleway/apple_silicon_server.py +564 -0
- pulumiverse_scaleway/baremetal_server.py +1390 -0
- pulumiverse_scaleway/block_snapshot.py +391 -0
- pulumiverse_scaleway/block_volume.py +521 -0
- pulumiverse_scaleway/cockpit.py +299 -0
- pulumiverse_scaleway/cockpit_alert_manager.py +345 -0
- pulumiverse_scaleway/cockpit_grafana_user.py +326 -0
- pulumiverse_scaleway/cockpit_source.py +481 -0
- pulumiverse_scaleway/cockpit_token.py +461 -0
- pulumiverse_scaleway/config/__init__.py +8 -0
- pulumiverse_scaleway/config/__init__.pyi +56 -0
- pulumiverse_scaleway/config/vars.py +78 -0
- pulumiverse_scaleway/container.py +1387 -0
- pulumiverse_scaleway/container_cron.py +493 -0
- pulumiverse_scaleway/container_domain.py +400 -0
- pulumiverse_scaleway/container_namespace.py +589 -0
- pulumiverse_scaleway/container_token.py +454 -0
- pulumiverse_scaleway/container_trigger.py +478 -0
- pulumiverse_scaleway/database.py +407 -0
- pulumiverse_scaleway/database_acl.py +332 -0
- pulumiverse_scaleway/database_backup.py +574 -0
- pulumiverse_scaleway/database_instance.py +1636 -0
- pulumiverse_scaleway/database_privilege.py +422 -0
- pulumiverse_scaleway/database_read_replica.py +528 -0
- pulumiverse_scaleway/database_user.py +446 -0
- pulumiverse_scaleway/documentdb_database.py +450 -0
- pulumiverse_scaleway/documentdb_instance.py +812 -0
- pulumiverse_scaleway/documentdb_private_network_endpoint.py +352 -0
- pulumiverse_scaleway/documentdb_privilege.py +402 -0
- pulumiverse_scaleway/documentdb_read_replica.py +405 -0
- pulumiverse_scaleway/documentdb_user.py +442 -0
- pulumiverse_scaleway/domain_record.py +1074 -0
- pulumiverse_scaleway/domain_zone.py +458 -0
- pulumiverse_scaleway/flexible_ip.py +702 -0
- pulumiverse_scaleway/flexible_ip_mac_address.py +510 -0
- pulumiverse_scaleway/function.py +1145 -0
- pulumiverse_scaleway/function_cron.py +480 -0
- pulumiverse_scaleway/function_domain.py +361 -0
- pulumiverse_scaleway/function_namespace.py +533 -0
- pulumiverse_scaleway/function_token.py +462 -0
- pulumiverse_scaleway/function_trigger.py +478 -0
- pulumiverse_scaleway/get_account_project.py +164 -0
- pulumiverse_scaleway/get_account_ssh_key.py +201 -0
- pulumiverse_scaleway/get_availability_zones.py +131 -0
- pulumiverse_scaleway/get_baremetal_offer.py +245 -0
- pulumiverse_scaleway/get_baremetal_option.py +168 -0
- pulumiverse_scaleway/get_baremetal_os.py +174 -0
- pulumiverse_scaleway/get_baremetal_server.py +411 -0
- pulumiverse_scaleway/get_billing_consumptions.py +134 -0
- pulumiverse_scaleway/get_billing_invoices.py +154 -0
- pulumiverse_scaleway/get_block_snapshot.py +170 -0
- pulumiverse_scaleway/get_block_volume.py +186 -0
- pulumiverse_scaleway/get_cockpit.py +179 -0
- pulumiverse_scaleway/get_cockpit_plan.py +113 -0
- pulumiverse_scaleway/get_config.py +180 -0
- pulumiverse_scaleway/get_container.py +502 -0
- pulumiverse_scaleway/get_container_namespace.py +262 -0
- pulumiverse_scaleway/get_database.py +187 -0
- pulumiverse_scaleway/get_database_acl.py +143 -0
- pulumiverse_scaleway/get_database_backup.py +253 -0
- pulumiverse_scaleway/get_database_instance.py +404 -0
- pulumiverse_scaleway/get_database_privilege.py +181 -0
- pulumiverse_scaleway/get_documentdb_database.py +198 -0
- pulumiverse_scaleway/get_documentdb_instance.py +245 -0
- pulumiverse_scaleway/get_documentdb_load_balancer_endpoint.py +198 -0
- pulumiverse_scaleway/get_domain_record.py +334 -0
- pulumiverse_scaleway/get_domain_zone.py +225 -0
- pulumiverse_scaleway/get_flexible_ip.py +247 -0
- pulumiverse_scaleway/get_flexible_ips.py +240 -0
- pulumiverse_scaleway/get_function.py +357 -0
- pulumiverse_scaleway/get_function_namespace.py +227 -0
- pulumiverse_scaleway/get_iam_api_key.py +210 -0
- pulumiverse_scaleway/get_iam_application.py +210 -0
- pulumiverse_scaleway/get_iam_group.py +236 -0
- pulumiverse_scaleway/get_iam_ssh_key.py +212 -0
- pulumiverse_scaleway/get_iam_user.py +157 -0
- pulumiverse_scaleway/get_instance_image.py +305 -0
- pulumiverse_scaleway/get_instance_ip.py +204 -0
- pulumiverse_scaleway/get_instance_placement_group.py +212 -0
- pulumiverse_scaleway/get_instance_private_nic.py +215 -0
- pulumiverse_scaleway/get_instance_security_group.py +268 -0
- pulumiverse_scaleway/get_instance_server.py +502 -0
- pulumiverse_scaleway/get_instance_servers.py +187 -0
- pulumiverse_scaleway/get_instance_snapshot.py +248 -0
- pulumiverse_scaleway/get_instance_volume.py +215 -0
- pulumiverse_scaleway/get_iot_device.py +257 -0
- pulumiverse_scaleway/get_iot_hub.py +322 -0
- pulumiverse_scaleway/get_ipam_ip.py +419 -0
- pulumiverse_scaleway/get_ipam_ips.py +358 -0
- pulumiverse_scaleway/get_k8s_version.py +196 -0
- pulumiverse_scaleway/get_kubernetes_cluster.py +417 -0
- pulumiverse_scaleway/get_kubernetes_node_pool.py +436 -0
- pulumiverse_scaleway/get_lb_acls.py +198 -0
- pulumiverse_scaleway/get_lb_backend.py +486 -0
- pulumiverse_scaleway/get_lb_backends.py +196 -0
- pulumiverse_scaleway/get_lb_frontend.py +274 -0
- pulumiverse_scaleway/get_lb_frontends.py +196 -0
- pulumiverse_scaleway/get_lb_ips.py +198 -0
- pulumiverse_scaleway/get_lb_route.py +217 -0
- pulumiverse_scaleway/get_lb_routes.py +179 -0
- pulumiverse_scaleway/get_lbs.py +187 -0
- pulumiverse_scaleway/get_loadbalancer.py +339 -0
- pulumiverse_scaleway/get_loadbalancer_certificate.py +230 -0
- pulumiverse_scaleway/get_loadbalancer_ip.py +222 -0
- pulumiverse_scaleway/get_marketplace_image.py +147 -0
- pulumiverse_scaleway/get_mnq_sqs.py +150 -0
- pulumiverse_scaleway/get_object_bucket.py +278 -0
- pulumiverse_scaleway/get_object_bucket_policy.py +157 -0
- pulumiverse_scaleway/get_redis_cluster.py +347 -0
- pulumiverse_scaleway/get_registry_image.py +239 -0
- pulumiverse_scaleway/get_registry_namespace.py +199 -0
- pulumiverse_scaleway/get_secret.py +290 -0
- pulumiverse_scaleway/get_secret_version.py +303 -0
- pulumiverse_scaleway/get_tem_domain.py +367 -0
- pulumiverse_scaleway/get_vpc.py +246 -0
- pulumiverse_scaleway/get_vpc_gateway_network.py +287 -0
- pulumiverse_scaleway/get_vpc_private_network.py +282 -0
- pulumiverse_scaleway/get_vpc_public_gateway.py +304 -0
- pulumiverse_scaleway/get_vpc_public_gateway_dhcp.py +305 -0
- pulumiverse_scaleway/get_vpc_public_gateway_dhcp_reservation.py +382 -0
- pulumiverse_scaleway/get_vpc_public_gateway_ip.py +199 -0
- pulumiverse_scaleway/get_vpc_public_pat_rule.py +313 -0
- pulumiverse_scaleway/get_vpc_routes.py +208 -0
- pulumiverse_scaleway/get_vpcs.py +174 -0
- pulumiverse_scaleway/get_web_host_offer.py +192 -0
- pulumiverse_scaleway/get_webhosting.py +332 -0
- pulumiverse_scaleway/iam_api_key.py +620 -0
- pulumiverse_scaleway/iam_application.py +417 -0
- pulumiverse_scaleway/iam_group.py +566 -0
- pulumiverse_scaleway/iam_group_membership.py +323 -0
- pulumiverse_scaleway/iam_policy.py +727 -0
- pulumiverse_scaleway/iam_ssh_key.py +455 -0
- pulumiverse_scaleway/iam_user.py +466 -0
- pulumiverse_scaleway/instance_image.py +750 -0
- pulumiverse_scaleway/instance_ip.py +483 -0
- pulumiverse_scaleway/instance_ip_reverse_dns.py +308 -0
- pulumiverse_scaleway/instance_placement_group.py +479 -0
- pulumiverse_scaleway/instance_private_nic.py +454 -0
- pulumiverse_scaleway/instance_security_group.py +720 -0
- pulumiverse_scaleway/instance_security_group_rules.py +439 -0
- pulumiverse_scaleway/instance_server.py +1907 -0
- pulumiverse_scaleway/instance_snapshot.py +669 -0
- pulumiverse_scaleway/instance_user_data.py +435 -0
- pulumiverse_scaleway/instance_volume.py +535 -0
- pulumiverse_scaleway/iot_device.py +750 -0
- pulumiverse_scaleway/iot_hub.py +896 -0
- pulumiverse_scaleway/iot_network.py +425 -0
- pulumiverse_scaleway/iot_route.py +660 -0
- pulumiverse_scaleway/ipam_ip.py +666 -0
- pulumiverse_scaleway/ipam_ip_reverse_dns.py +318 -0
- pulumiverse_scaleway/job_definition.py +692 -0
- pulumiverse_scaleway/kubernetes_cluster.py +1538 -0
- pulumiverse_scaleway/kubernetes_node_pool.py +1255 -0
- pulumiverse_scaleway/loadbalancer.py +1095 -0
- pulumiverse_scaleway/loadbalancer_acl.py +520 -0
- pulumiverse_scaleway/loadbalancer_backend.py +1588 -0
- pulumiverse_scaleway/loadbalancer_certificate.py +460 -0
- pulumiverse_scaleway/loadbalancer_frontend.py +829 -0
- pulumiverse_scaleway/loadbalancer_ip.py +514 -0
- pulumiverse_scaleway/loadbalancer_route.py +523 -0
- pulumiverse_scaleway/mnq_nats_account.py +334 -0
- pulumiverse_scaleway/mnq_nats_credentials.py +328 -0
- pulumiverse_scaleway/mnq_sns.py +306 -0
- pulumiverse_scaleway/mnq_sns_credentials.py +413 -0
- pulumiverse_scaleway/mnq_sns_topic.py +659 -0
- pulumiverse_scaleway/mnq_sns_topic_subscription.py +699 -0
- pulumiverse_scaleway/mnq_sqs.py +304 -0
- pulumiverse_scaleway/mnq_sqs_credentials.py +413 -0
- pulumiverse_scaleway/mnq_sqs_queue.py +800 -0
- pulumiverse_scaleway/object_bucket.py +888 -0
- pulumiverse_scaleway/object_bucket_acl.py +592 -0
- pulumiverse_scaleway/object_bucket_lock_configuration.py +393 -0
- pulumiverse_scaleway/object_bucket_policy.py +671 -0
- pulumiverse_scaleway/object_bucket_website_configuration.py +532 -0
- pulumiverse_scaleway/object_item.py +711 -0
- pulumiverse_scaleway/outputs.py +11663 -0
- pulumiverse_scaleway/provider.py +327 -0
- pulumiverse_scaleway/pulumi-plugin.json +6 -0
- pulumiverse_scaleway/py.typed +0 -0
- pulumiverse_scaleway/redis_cluster.py +1166 -0
- pulumiverse_scaleway/registry_namespace.py +458 -0
- pulumiverse_scaleway/sdb_database.py +428 -0
- pulumiverse_scaleway/secret.py +560 -0
- pulumiverse_scaleway/secret_version.py +482 -0
- pulumiverse_scaleway/tem_domain.py +950 -0
- pulumiverse_scaleway/tem_domain_validation.py +303 -0
- pulumiverse_scaleway/vpc.py +536 -0
- pulumiverse_scaleway/vpc_gateway_network.py +866 -0
- pulumiverse_scaleway/vpc_private_network.py +734 -0
- pulumiverse_scaleway/vpc_public_gateway.py +789 -0
- pulumiverse_scaleway/vpc_public_gateway_dhcp.py +933 -0
- pulumiverse_scaleway/vpc_public_gateway_dhcp_reservation.py +514 -0
- pulumiverse_scaleway/vpc_public_gateway_ip.py +457 -0
- pulumiverse_scaleway/vpc_public_gateway_ip_reverse_dns.py +306 -0
- pulumiverse_scaleway/vpc_public_gateway_pat_rule.py +591 -0
- pulumiverse_scaleway/webhosting.py +805 -0
- pulumiverse_scaleway-1.16.0.dist-info/METADATA +69 -0
- pulumiverse_scaleway-1.16.0.dist-info/RECORD +205 -0
- pulumiverse_scaleway-1.16.0.dist-info/WHEEL +5 -0
- pulumiverse_scaleway-1.16.0.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
# coding=utf-8
|
|
2
|
+
# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
|
|
3
|
+
# *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
|
|
5
|
+
import copy
|
|
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
|
+
'GetVpcPublicGatewayIpResult',
|
|
19
|
+
'AwaitableGetVpcPublicGatewayIpResult',
|
|
20
|
+
'get_vpc_public_gateway_ip',
|
|
21
|
+
'get_vpc_public_gateway_ip_output',
|
|
22
|
+
]
|
|
23
|
+
|
|
24
|
+
@pulumi.output_type
|
|
25
|
+
class GetVpcPublicGatewayIpResult:
|
|
26
|
+
"""
|
|
27
|
+
A collection of values returned by getVpcPublicGatewayIp.
|
|
28
|
+
"""
|
|
29
|
+
def __init__(__self__, address=None, created_at=None, id=None, ip_id=None, organization_id=None, project_id=None, reverse=None, tags=None, updated_at=None, zone=None):
|
|
30
|
+
if address and not isinstance(address, str):
|
|
31
|
+
raise TypeError("Expected argument 'address' to be a str")
|
|
32
|
+
pulumi.set(__self__, "address", address)
|
|
33
|
+
if created_at and not isinstance(created_at, str):
|
|
34
|
+
raise TypeError("Expected argument 'created_at' to be a str")
|
|
35
|
+
pulumi.set(__self__, "created_at", created_at)
|
|
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 ip_id and not isinstance(ip_id, str):
|
|
40
|
+
raise TypeError("Expected argument 'ip_id' to be a str")
|
|
41
|
+
pulumi.set(__self__, "ip_id", ip_id)
|
|
42
|
+
if organization_id and not isinstance(organization_id, str):
|
|
43
|
+
raise TypeError("Expected argument 'organization_id' to be a str")
|
|
44
|
+
pulumi.set(__self__, "organization_id", organization_id)
|
|
45
|
+
if project_id and not isinstance(project_id, str):
|
|
46
|
+
raise TypeError("Expected argument 'project_id' to be a str")
|
|
47
|
+
pulumi.set(__self__, "project_id", project_id)
|
|
48
|
+
if reverse and not isinstance(reverse, str):
|
|
49
|
+
raise TypeError("Expected argument 'reverse' to be a str")
|
|
50
|
+
pulumi.set(__self__, "reverse", reverse)
|
|
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
|
+
if updated_at and not isinstance(updated_at, str):
|
|
55
|
+
raise TypeError("Expected argument 'updated_at' to be a str")
|
|
56
|
+
pulumi.set(__self__, "updated_at", updated_at)
|
|
57
|
+
if zone and not isinstance(zone, str):
|
|
58
|
+
raise TypeError("Expected argument 'zone' to be a str")
|
|
59
|
+
pulumi.set(__self__, "zone", zone)
|
|
60
|
+
|
|
61
|
+
@property
|
|
62
|
+
@pulumi.getter
|
|
63
|
+
def address(self) -> str:
|
|
64
|
+
return pulumi.get(self, "address")
|
|
65
|
+
|
|
66
|
+
@property
|
|
67
|
+
@pulumi.getter(name="createdAt")
|
|
68
|
+
def created_at(self) -> str:
|
|
69
|
+
return pulumi.get(self, "created_at")
|
|
70
|
+
|
|
71
|
+
@property
|
|
72
|
+
@pulumi.getter
|
|
73
|
+
def id(self) -> str:
|
|
74
|
+
"""
|
|
75
|
+
The provider-assigned unique ID for this managed resource.
|
|
76
|
+
"""
|
|
77
|
+
return pulumi.get(self, "id")
|
|
78
|
+
|
|
79
|
+
@property
|
|
80
|
+
@pulumi.getter(name="ipId")
|
|
81
|
+
def ip_id(self) -> Optional[str]:
|
|
82
|
+
return pulumi.get(self, "ip_id")
|
|
83
|
+
|
|
84
|
+
@property
|
|
85
|
+
@pulumi.getter(name="organizationId")
|
|
86
|
+
def organization_id(self) -> str:
|
|
87
|
+
return pulumi.get(self, "organization_id")
|
|
88
|
+
|
|
89
|
+
@property
|
|
90
|
+
@pulumi.getter(name="projectId")
|
|
91
|
+
def project_id(self) -> str:
|
|
92
|
+
return pulumi.get(self, "project_id")
|
|
93
|
+
|
|
94
|
+
@property
|
|
95
|
+
@pulumi.getter
|
|
96
|
+
def reverse(self) -> str:
|
|
97
|
+
return pulumi.get(self, "reverse")
|
|
98
|
+
|
|
99
|
+
@property
|
|
100
|
+
@pulumi.getter
|
|
101
|
+
def tags(self) -> Sequence[str]:
|
|
102
|
+
return pulumi.get(self, "tags")
|
|
103
|
+
|
|
104
|
+
@property
|
|
105
|
+
@pulumi.getter(name="updatedAt")
|
|
106
|
+
def updated_at(self) -> str:
|
|
107
|
+
return pulumi.get(self, "updated_at")
|
|
108
|
+
|
|
109
|
+
@property
|
|
110
|
+
@pulumi.getter
|
|
111
|
+
def zone(self) -> str:
|
|
112
|
+
return pulumi.get(self, "zone")
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
class AwaitableGetVpcPublicGatewayIpResult(GetVpcPublicGatewayIpResult):
|
|
116
|
+
# pylint: disable=using-constant-test
|
|
117
|
+
def __await__(self):
|
|
118
|
+
if False:
|
|
119
|
+
yield self
|
|
120
|
+
return GetVpcPublicGatewayIpResult(
|
|
121
|
+
address=self.address,
|
|
122
|
+
created_at=self.created_at,
|
|
123
|
+
id=self.id,
|
|
124
|
+
ip_id=self.ip_id,
|
|
125
|
+
organization_id=self.organization_id,
|
|
126
|
+
project_id=self.project_id,
|
|
127
|
+
reverse=self.reverse,
|
|
128
|
+
tags=self.tags,
|
|
129
|
+
updated_at=self.updated_at,
|
|
130
|
+
zone=self.zone)
|
|
131
|
+
|
|
132
|
+
|
|
133
|
+
def get_vpc_public_gateway_ip(ip_id: Optional[str] = None,
|
|
134
|
+
opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetVpcPublicGatewayIpResult:
|
|
135
|
+
"""
|
|
136
|
+
Gets information about a Public Gateway public flexible IP address.
|
|
137
|
+
|
|
138
|
+
For further information, please see the API [documentation](https://www.scaleway.com/en/developers/api/public-gateway/#path-ips-list-ips).
|
|
139
|
+
|
|
140
|
+
## Example Usage
|
|
141
|
+
|
|
142
|
+
```python
|
|
143
|
+
import pulumi
|
|
144
|
+
import pulumi_scaleway as scaleway
|
|
145
|
+
import pulumiverse_scaleway as scaleway
|
|
146
|
+
|
|
147
|
+
main = scaleway.VpcPublicGatewayIp("main")
|
|
148
|
+
ip_by_id = scaleway.get_vpc_public_gateway_ip_output(ip_id=main.id)
|
|
149
|
+
```
|
|
150
|
+
"""
|
|
151
|
+
__args__ = dict()
|
|
152
|
+
__args__['ipId'] = ip_id
|
|
153
|
+
opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
|
|
154
|
+
__ret__ = pulumi.runtime.invoke('scaleway:index/getVpcPublicGatewayIp:getVpcPublicGatewayIp', __args__, opts=opts, typ=GetVpcPublicGatewayIpResult).value
|
|
155
|
+
|
|
156
|
+
return AwaitableGetVpcPublicGatewayIpResult(
|
|
157
|
+
address=pulumi.get(__ret__, 'address'),
|
|
158
|
+
created_at=pulumi.get(__ret__, 'created_at'),
|
|
159
|
+
id=pulumi.get(__ret__, 'id'),
|
|
160
|
+
ip_id=pulumi.get(__ret__, 'ip_id'),
|
|
161
|
+
organization_id=pulumi.get(__ret__, 'organization_id'),
|
|
162
|
+
project_id=pulumi.get(__ret__, 'project_id'),
|
|
163
|
+
reverse=pulumi.get(__ret__, 'reverse'),
|
|
164
|
+
tags=pulumi.get(__ret__, 'tags'),
|
|
165
|
+
updated_at=pulumi.get(__ret__, 'updated_at'),
|
|
166
|
+
zone=pulumi.get(__ret__, 'zone'))
|
|
167
|
+
def get_vpc_public_gateway_ip_output(ip_id: Optional[pulumi.Input[Optional[str]]] = None,
|
|
168
|
+
opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetVpcPublicGatewayIpResult]:
|
|
169
|
+
"""
|
|
170
|
+
Gets information about a Public Gateway public flexible IP address.
|
|
171
|
+
|
|
172
|
+
For further information, please see the API [documentation](https://www.scaleway.com/en/developers/api/public-gateway/#path-ips-list-ips).
|
|
173
|
+
|
|
174
|
+
## Example Usage
|
|
175
|
+
|
|
176
|
+
```python
|
|
177
|
+
import pulumi
|
|
178
|
+
import pulumi_scaleway as scaleway
|
|
179
|
+
import pulumiverse_scaleway as scaleway
|
|
180
|
+
|
|
181
|
+
main = scaleway.VpcPublicGatewayIp("main")
|
|
182
|
+
ip_by_id = scaleway.get_vpc_public_gateway_ip_output(ip_id=main.id)
|
|
183
|
+
```
|
|
184
|
+
"""
|
|
185
|
+
__args__ = dict()
|
|
186
|
+
__args__['ipId'] = ip_id
|
|
187
|
+
opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
|
|
188
|
+
__ret__ = pulumi.runtime.invoke_output('scaleway:index/getVpcPublicGatewayIp:getVpcPublicGatewayIp', __args__, opts=opts, typ=GetVpcPublicGatewayIpResult)
|
|
189
|
+
return __ret__.apply(lambda __response__: GetVpcPublicGatewayIpResult(
|
|
190
|
+
address=pulumi.get(__response__, 'address'),
|
|
191
|
+
created_at=pulumi.get(__response__, 'created_at'),
|
|
192
|
+
id=pulumi.get(__response__, 'id'),
|
|
193
|
+
ip_id=pulumi.get(__response__, 'ip_id'),
|
|
194
|
+
organization_id=pulumi.get(__response__, 'organization_id'),
|
|
195
|
+
project_id=pulumi.get(__response__, 'project_id'),
|
|
196
|
+
reverse=pulumi.get(__response__, 'reverse'),
|
|
197
|
+
tags=pulumi.get(__response__, 'tags'),
|
|
198
|
+
updated_at=pulumi.get(__response__, 'updated_at'),
|
|
199
|
+
zone=pulumi.get(__response__, 'zone')))
|
|
@@ -0,0 +1,313 @@
|
|
|
1
|
+
# coding=utf-8
|
|
2
|
+
# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
|
|
3
|
+
# *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
|
|
5
|
+
import copy
|
|
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
|
+
'GetVpcPublicPatRuleResult',
|
|
19
|
+
'AwaitableGetVpcPublicPatRuleResult',
|
|
20
|
+
'get_vpc_public_pat_rule',
|
|
21
|
+
'get_vpc_public_pat_rule_output',
|
|
22
|
+
]
|
|
23
|
+
|
|
24
|
+
@pulumi.output_type
|
|
25
|
+
class GetVpcPublicPatRuleResult:
|
|
26
|
+
"""
|
|
27
|
+
A collection of values returned by getVpcPublicPatRule.
|
|
28
|
+
"""
|
|
29
|
+
def __init__(__self__, created_at=None, gateway_id=None, id=None, organization_id=None, pat_rule_id=None, private_ip=None, private_port=None, protocol=None, public_port=None, updated_at=None, zone=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 gateway_id and not isinstance(gateway_id, str):
|
|
34
|
+
raise TypeError("Expected argument 'gateway_id' to be a str")
|
|
35
|
+
pulumi.set(__self__, "gateway_id", gateway_id)
|
|
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 organization_id and not isinstance(organization_id, str):
|
|
40
|
+
raise TypeError("Expected argument 'organization_id' to be a str")
|
|
41
|
+
pulumi.set(__self__, "organization_id", organization_id)
|
|
42
|
+
if pat_rule_id and not isinstance(pat_rule_id, str):
|
|
43
|
+
raise TypeError("Expected argument 'pat_rule_id' to be a str")
|
|
44
|
+
pulumi.set(__self__, "pat_rule_id", pat_rule_id)
|
|
45
|
+
if private_ip and not isinstance(private_ip, str):
|
|
46
|
+
raise TypeError("Expected argument 'private_ip' to be a str")
|
|
47
|
+
pulumi.set(__self__, "private_ip", private_ip)
|
|
48
|
+
if private_port and not isinstance(private_port, int):
|
|
49
|
+
raise TypeError("Expected argument 'private_port' to be a int")
|
|
50
|
+
pulumi.set(__self__, "private_port", private_port)
|
|
51
|
+
if protocol and not isinstance(protocol, str):
|
|
52
|
+
raise TypeError("Expected argument 'protocol' to be a str")
|
|
53
|
+
pulumi.set(__self__, "protocol", protocol)
|
|
54
|
+
if public_port and not isinstance(public_port, int):
|
|
55
|
+
raise TypeError("Expected argument 'public_port' to be a int")
|
|
56
|
+
pulumi.set(__self__, "public_port", public_port)
|
|
57
|
+
if updated_at and not isinstance(updated_at, str):
|
|
58
|
+
raise TypeError("Expected argument 'updated_at' to be a str")
|
|
59
|
+
pulumi.set(__self__, "updated_at", updated_at)
|
|
60
|
+
if zone and not isinstance(zone, str):
|
|
61
|
+
raise TypeError("Expected argument 'zone' to be a str")
|
|
62
|
+
pulumi.set(__self__, "zone", zone)
|
|
63
|
+
|
|
64
|
+
@property
|
|
65
|
+
@pulumi.getter(name="createdAt")
|
|
66
|
+
def created_at(self) -> str:
|
|
67
|
+
return pulumi.get(self, "created_at")
|
|
68
|
+
|
|
69
|
+
@property
|
|
70
|
+
@pulumi.getter(name="gatewayId")
|
|
71
|
+
def gateway_id(self) -> str:
|
|
72
|
+
"""
|
|
73
|
+
The ID of the Public Gateway.
|
|
74
|
+
"""
|
|
75
|
+
return pulumi.get(self, "gateway_id")
|
|
76
|
+
|
|
77
|
+
@property
|
|
78
|
+
@pulumi.getter
|
|
79
|
+
def id(self) -> str:
|
|
80
|
+
"""
|
|
81
|
+
The provider-assigned unique ID for this managed resource.
|
|
82
|
+
"""
|
|
83
|
+
return pulumi.get(self, "id")
|
|
84
|
+
|
|
85
|
+
@property
|
|
86
|
+
@pulumi.getter(name="organizationId")
|
|
87
|
+
def organization_id(self) -> str:
|
|
88
|
+
return pulumi.get(self, "organization_id")
|
|
89
|
+
|
|
90
|
+
@property
|
|
91
|
+
@pulumi.getter(name="patRuleId")
|
|
92
|
+
def pat_rule_id(self) -> str:
|
|
93
|
+
return pulumi.get(self, "pat_rule_id")
|
|
94
|
+
|
|
95
|
+
@property
|
|
96
|
+
@pulumi.getter(name="privateIp")
|
|
97
|
+
def private_ip(self) -> str:
|
|
98
|
+
"""
|
|
99
|
+
The private IP address to forward data to.
|
|
100
|
+
"""
|
|
101
|
+
return pulumi.get(self, "private_ip")
|
|
102
|
+
|
|
103
|
+
@property
|
|
104
|
+
@pulumi.getter(name="privatePort")
|
|
105
|
+
def private_port(self) -> int:
|
|
106
|
+
"""
|
|
107
|
+
The private port to translate to.
|
|
108
|
+
"""
|
|
109
|
+
return pulumi.get(self, "private_port")
|
|
110
|
+
|
|
111
|
+
@property
|
|
112
|
+
@pulumi.getter
|
|
113
|
+
def protocol(self) -> str:
|
|
114
|
+
"""
|
|
115
|
+
The protocol the rule should apply to. Possible values are `both`, `tcp` and `udp`.
|
|
116
|
+
"""
|
|
117
|
+
return pulumi.get(self, "protocol")
|
|
118
|
+
|
|
119
|
+
@property
|
|
120
|
+
@pulumi.getter(name="publicPort")
|
|
121
|
+
def public_port(self) -> int:
|
|
122
|
+
"""
|
|
123
|
+
The public port to listen on.
|
|
124
|
+
"""
|
|
125
|
+
return pulumi.get(self, "public_port")
|
|
126
|
+
|
|
127
|
+
@property
|
|
128
|
+
@pulumi.getter(name="updatedAt")
|
|
129
|
+
def updated_at(self) -> str:
|
|
130
|
+
return pulumi.get(self, "updated_at")
|
|
131
|
+
|
|
132
|
+
@property
|
|
133
|
+
@pulumi.getter
|
|
134
|
+
def zone(self) -> Optional[str]:
|
|
135
|
+
return pulumi.get(self, "zone")
|
|
136
|
+
|
|
137
|
+
|
|
138
|
+
class AwaitableGetVpcPublicPatRuleResult(GetVpcPublicPatRuleResult):
|
|
139
|
+
# pylint: disable=using-constant-test
|
|
140
|
+
def __await__(self):
|
|
141
|
+
if False:
|
|
142
|
+
yield self
|
|
143
|
+
return GetVpcPublicPatRuleResult(
|
|
144
|
+
created_at=self.created_at,
|
|
145
|
+
gateway_id=self.gateway_id,
|
|
146
|
+
id=self.id,
|
|
147
|
+
organization_id=self.organization_id,
|
|
148
|
+
pat_rule_id=self.pat_rule_id,
|
|
149
|
+
private_ip=self.private_ip,
|
|
150
|
+
private_port=self.private_port,
|
|
151
|
+
protocol=self.protocol,
|
|
152
|
+
public_port=self.public_port,
|
|
153
|
+
updated_at=self.updated_at,
|
|
154
|
+
zone=self.zone)
|
|
155
|
+
|
|
156
|
+
|
|
157
|
+
def get_vpc_public_pat_rule(pat_rule_id: Optional[str] = None,
|
|
158
|
+
zone: Optional[str] = None,
|
|
159
|
+
opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetVpcPublicPatRuleResult:
|
|
160
|
+
"""
|
|
161
|
+
Gets information about a Public Gateway PAT rule. For further information, please see the
|
|
162
|
+
API [documentation](https://www.scaleway.com/en/developers/api/public-gateway/#path-pat-rules-list-pat-rules).
|
|
163
|
+
|
|
164
|
+
## Example Usage
|
|
165
|
+
|
|
166
|
+
```python
|
|
167
|
+
import pulumi
|
|
168
|
+
import pulumi_scaleway as scaleway
|
|
169
|
+
import pulumiverse_scaleway as scaleway
|
|
170
|
+
|
|
171
|
+
sg01 = scaleway.InstanceSecurityGroup("sg01",
|
|
172
|
+
inbound_default_policy="drop",
|
|
173
|
+
outbound_default_policy="accept",
|
|
174
|
+
inbound_rules=[{
|
|
175
|
+
"action": "accept",
|
|
176
|
+
"port": 22,
|
|
177
|
+
"protocol": "TCP",
|
|
178
|
+
}])
|
|
179
|
+
srv01 = scaleway.InstanceServer("srv01",
|
|
180
|
+
name="my-server",
|
|
181
|
+
type="PLAY2-NANO",
|
|
182
|
+
image="ubuntu_jammy",
|
|
183
|
+
security_group_id=sg01.id)
|
|
184
|
+
pn01 = scaleway.VpcPrivateNetwork("pn01", name="my-pn")
|
|
185
|
+
pnic01 = scaleway.InstancePrivateNic("pnic01",
|
|
186
|
+
server_id=srv01.id,
|
|
187
|
+
private_network_id=pn01.id)
|
|
188
|
+
dhcp01 = scaleway.VpcPublicGatewayDhcp("dhcp01", subnet="192.168.0.0/24")
|
|
189
|
+
ip01 = scaleway.VpcPublicGatewayIp("ip01")
|
|
190
|
+
pg01 = scaleway.VpcPublicGateway("pg01",
|
|
191
|
+
name="my-pg",
|
|
192
|
+
type="VPC-GW-S",
|
|
193
|
+
ip_id=ip01.id)
|
|
194
|
+
gn01 = scaleway.VpcGatewayNetwork("gn01",
|
|
195
|
+
gateway_id=pg01.id,
|
|
196
|
+
private_network_id=pn01.id,
|
|
197
|
+
dhcp_id=dhcp01.id,
|
|
198
|
+
cleanup_dhcp=True,
|
|
199
|
+
enable_masquerade=True)
|
|
200
|
+
rsv01 = scaleway.VpcPublicGatewayDhcpReservation("rsv01",
|
|
201
|
+
gateway_network_id=gn01.id,
|
|
202
|
+
mac_address=pnic01.mac_address,
|
|
203
|
+
ip_address="192.168.0.7")
|
|
204
|
+
pat01 = scaleway.VpcPublicGatewayPatRule("pat01",
|
|
205
|
+
gateway_id=pg01.id,
|
|
206
|
+
private_ip=rsv01.ip_address,
|
|
207
|
+
private_port=22,
|
|
208
|
+
public_port=2202,
|
|
209
|
+
protocol="tcp")
|
|
210
|
+
main = scaleway.get_vpc_public_pat_rule_output(pat_rule_id=pat01.id)
|
|
211
|
+
```
|
|
212
|
+
|
|
213
|
+
|
|
214
|
+
:param str pat_rule_id: The ID of the PAT rule to retrieve
|
|
215
|
+
:param str zone: `zone`) The zone in which
|
|
216
|
+
the rule exists.
|
|
217
|
+
"""
|
|
218
|
+
__args__ = dict()
|
|
219
|
+
__args__['patRuleId'] = pat_rule_id
|
|
220
|
+
__args__['zone'] = zone
|
|
221
|
+
opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
|
|
222
|
+
__ret__ = pulumi.runtime.invoke('scaleway:index/getVpcPublicPatRule:getVpcPublicPatRule', __args__, opts=opts, typ=GetVpcPublicPatRuleResult).value
|
|
223
|
+
|
|
224
|
+
return AwaitableGetVpcPublicPatRuleResult(
|
|
225
|
+
created_at=pulumi.get(__ret__, 'created_at'),
|
|
226
|
+
gateway_id=pulumi.get(__ret__, 'gateway_id'),
|
|
227
|
+
id=pulumi.get(__ret__, 'id'),
|
|
228
|
+
organization_id=pulumi.get(__ret__, 'organization_id'),
|
|
229
|
+
pat_rule_id=pulumi.get(__ret__, 'pat_rule_id'),
|
|
230
|
+
private_ip=pulumi.get(__ret__, 'private_ip'),
|
|
231
|
+
private_port=pulumi.get(__ret__, 'private_port'),
|
|
232
|
+
protocol=pulumi.get(__ret__, 'protocol'),
|
|
233
|
+
public_port=pulumi.get(__ret__, 'public_port'),
|
|
234
|
+
updated_at=pulumi.get(__ret__, 'updated_at'),
|
|
235
|
+
zone=pulumi.get(__ret__, 'zone'))
|
|
236
|
+
def get_vpc_public_pat_rule_output(pat_rule_id: Optional[pulumi.Input[str]] = None,
|
|
237
|
+
zone: Optional[pulumi.Input[Optional[str]]] = None,
|
|
238
|
+
opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetVpcPublicPatRuleResult]:
|
|
239
|
+
"""
|
|
240
|
+
Gets information about a Public Gateway PAT rule. For further information, please see the
|
|
241
|
+
API [documentation](https://www.scaleway.com/en/developers/api/public-gateway/#path-pat-rules-list-pat-rules).
|
|
242
|
+
|
|
243
|
+
## Example Usage
|
|
244
|
+
|
|
245
|
+
```python
|
|
246
|
+
import pulumi
|
|
247
|
+
import pulumi_scaleway as scaleway
|
|
248
|
+
import pulumiverse_scaleway as scaleway
|
|
249
|
+
|
|
250
|
+
sg01 = scaleway.InstanceSecurityGroup("sg01",
|
|
251
|
+
inbound_default_policy="drop",
|
|
252
|
+
outbound_default_policy="accept",
|
|
253
|
+
inbound_rules=[{
|
|
254
|
+
"action": "accept",
|
|
255
|
+
"port": 22,
|
|
256
|
+
"protocol": "TCP",
|
|
257
|
+
}])
|
|
258
|
+
srv01 = scaleway.InstanceServer("srv01",
|
|
259
|
+
name="my-server",
|
|
260
|
+
type="PLAY2-NANO",
|
|
261
|
+
image="ubuntu_jammy",
|
|
262
|
+
security_group_id=sg01.id)
|
|
263
|
+
pn01 = scaleway.VpcPrivateNetwork("pn01", name="my-pn")
|
|
264
|
+
pnic01 = scaleway.InstancePrivateNic("pnic01",
|
|
265
|
+
server_id=srv01.id,
|
|
266
|
+
private_network_id=pn01.id)
|
|
267
|
+
dhcp01 = scaleway.VpcPublicGatewayDhcp("dhcp01", subnet="192.168.0.0/24")
|
|
268
|
+
ip01 = scaleway.VpcPublicGatewayIp("ip01")
|
|
269
|
+
pg01 = scaleway.VpcPublicGateway("pg01",
|
|
270
|
+
name="my-pg",
|
|
271
|
+
type="VPC-GW-S",
|
|
272
|
+
ip_id=ip01.id)
|
|
273
|
+
gn01 = scaleway.VpcGatewayNetwork("gn01",
|
|
274
|
+
gateway_id=pg01.id,
|
|
275
|
+
private_network_id=pn01.id,
|
|
276
|
+
dhcp_id=dhcp01.id,
|
|
277
|
+
cleanup_dhcp=True,
|
|
278
|
+
enable_masquerade=True)
|
|
279
|
+
rsv01 = scaleway.VpcPublicGatewayDhcpReservation("rsv01",
|
|
280
|
+
gateway_network_id=gn01.id,
|
|
281
|
+
mac_address=pnic01.mac_address,
|
|
282
|
+
ip_address="192.168.0.7")
|
|
283
|
+
pat01 = scaleway.VpcPublicGatewayPatRule("pat01",
|
|
284
|
+
gateway_id=pg01.id,
|
|
285
|
+
private_ip=rsv01.ip_address,
|
|
286
|
+
private_port=22,
|
|
287
|
+
public_port=2202,
|
|
288
|
+
protocol="tcp")
|
|
289
|
+
main = scaleway.get_vpc_public_pat_rule_output(pat_rule_id=pat01.id)
|
|
290
|
+
```
|
|
291
|
+
|
|
292
|
+
|
|
293
|
+
:param str pat_rule_id: The ID of the PAT rule to retrieve
|
|
294
|
+
:param str zone: `zone`) The zone in which
|
|
295
|
+
the rule exists.
|
|
296
|
+
"""
|
|
297
|
+
__args__ = dict()
|
|
298
|
+
__args__['patRuleId'] = pat_rule_id
|
|
299
|
+
__args__['zone'] = zone
|
|
300
|
+
opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
|
|
301
|
+
__ret__ = pulumi.runtime.invoke_output('scaleway:index/getVpcPublicPatRule:getVpcPublicPatRule', __args__, opts=opts, typ=GetVpcPublicPatRuleResult)
|
|
302
|
+
return __ret__.apply(lambda __response__: GetVpcPublicPatRuleResult(
|
|
303
|
+
created_at=pulumi.get(__response__, 'created_at'),
|
|
304
|
+
gateway_id=pulumi.get(__response__, 'gateway_id'),
|
|
305
|
+
id=pulumi.get(__response__, 'id'),
|
|
306
|
+
organization_id=pulumi.get(__response__, 'organization_id'),
|
|
307
|
+
pat_rule_id=pulumi.get(__response__, 'pat_rule_id'),
|
|
308
|
+
private_ip=pulumi.get(__response__, 'private_ip'),
|
|
309
|
+
private_port=pulumi.get(__response__, 'private_port'),
|
|
310
|
+
protocol=pulumi.get(__response__, 'protocol'),
|
|
311
|
+
public_port=pulumi.get(__response__, 'public_port'),
|
|
312
|
+
updated_at=pulumi.get(__response__, 'updated_at'),
|
|
313
|
+
zone=pulumi.get(__response__, 'zone')))
|