UNPKG

@pulumiverse/scaleway

Version:

A Pulumi package for creating and managing Scaleway cloud resources.

148 lines 5.38 kB
"use strict"; // *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** // *** Do not edit by hand unless you're certain you know what you are doing! *** Object.defineProperty(exports, "__esModule", { value: true }); exports.getPublicGatewayPatRuleOutput = exports.getPublicGatewayPatRule = void 0; const pulumi = require("@pulumi/pulumi"); const utilities = require("../utilities"); /** * Gets information about a Public Gateway PAT rule. For further information, please see the * [API documentation](https://www.scaleway.com/en/developers/api/public-gateway/#path-pat-rules-list-pat-rules). * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as scaleway from "@pulumi/scaleway"; * import * as scaleway from "@pulumiverse/scaleway"; * * const sg01 = new scaleway.instance.SecurityGroup("sg01", { * inboundDefaultPolicy: "drop", * outboundDefaultPolicy: "accept", * inboundRules: [{ * action: "accept", * port: 22, * protocol: "TCP", * }], * }); * const srv01 = new scaleway.instance.Server("srv01", { * name: "my-server", * type: "PLAY2-NANO", * image: "ubuntu_jammy", * securityGroupId: sg01.id, * }); * const pn01 = new scaleway.network.PrivateNetwork("pn01", {name: "my-pn"}); * const pnic01 = new scaleway.instance.PrivateNic("pnic01", { * serverId: srv01.id, * privateNetworkId: pn01.id, * }); * const dhcp01 = new scaleway.network.PublicGatewayDhcp("dhcp01", {subnet: "192.168.0.0/24"}); * const ip01 = new scaleway.network.PublicGatewayIp("ip01", {}); * const pg01 = new scaleway.network.PublicGateway("pg01", { * name: "my-pg", * type: "VPC-GW-S", * ipId: ip01.id, * }); * const gn01 = new scaleway.network.GatewayNetwork("gn01", { * gatewayId: pg01.id, * privateNetworkId: pn01.id, * dhcpId: dhcp01.id, * cleanupDhcp: true, * enableMasquerade: true, * }); * const rsv01 = new scaleway.network.PublicGatewayDhcpReservation("rsv01", { * gatewayNetworkId: gn01.id, * macAddress: pnic01.macAddress, * ipAddress: "192.168.0.7", * }); * const pat01 = new scaleway.network.PublicGatewayPatRule("pat01", { * gatewayId: pg01.id, * privateIp: rsv01.ipAddress, * privatePort: 22, * publicPort: 2202, * protocol: "tcp", * }); * const main = scaleway.network.getPublicGatewayPatRuleOutput({ * patRuleId: pat01.id, * }); * ``` */ function getPublicGatewayPatRule(args, opts) { opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("scaleway:network/getPublicGatewayPatRule:getPublicGatewayPatRule", { "patRuleId": args.patRuleId, "zone": args.zone, }, opts); } exports.getPublicGatewayPatRule = getPublicGatewayPatRule; /** * Gets information about a Public Gateway PAT rule. For further information, please see the * [API documentation](https://www.scaleway.com/en/developers/api/public-gateway/#path-pat-rules-list-pat-rules). * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as scaleway from "@pulumi/scaleway"; * import * as scaleway from "@pulumiverse/scaleway"; * * const sg01 = new scaleway.instance.SecurityGroup("sg01", { * inboundDefaultPolicy: "drop", * outboundDefaultPolicy: "accept", * inboundRules: [{ * action: "accept", * port: 22, * protocol: "TCP", * }], * }); * const srv01 = new scaleway.instance.Server("srv01", { * name: "my-server", * type: "PLAY2-NANO", * image: "ubuntu_jammy", * securityGroupId: sg01.id, * }); * const pn01 = new scaleway.network.PrivateNetwork("pn01", {name: "my-pn"}); * const pnic01 = new scaleway.instance.PrivateNic("pnic01", { * serverId: srv01.id, * privateNetworkId: pn01.id, * }); * const dhcp01 = new scaleway.network.PublicGatewayDhcp("dhcp01", {subnet: "192.168.0.0/24"}); * const ip01 = new scaleway.network.PublicGatewayIp("ip01", {}); * const pg01 = new scaleway.network.PublicGateway("pg01", { * name: "my-pg", * type: "VPC-GW-S", * ipId: ip01.id, * }); * const gn01 = new scaleway.network.GatewayNetwork("gn01", { * gatewayId: pg01.id, * privateNetworkId: pn01.id, * dhcpId: dhcp01.id, * cleanupDhcp: true, * enableMasquerade: true, * }); * const rsv01 = new scaleway.network.PublicGatewayDhcpReservation("rsv01", { * gatewayNetworkId: gn01.id, * macAddress: pnic01.macAddress, * ipAddress: "192.168.0.7", * }); * const pat01 = new scaleway.network.PublicGatewayPatRule("pat01", { * gatewayId: pg01.id, * privateIp: rsv01.ipAddress, * privatePort: 22, * publicPort: 2202, * protocol: "tcp", * }); * const main = scaleway.network.getPublicGatewayPatRuleOutput({ * patRuleId: pat01.id, * }); * ``` */ function getPublicGatewayPatRuleOutput(args, opts) { opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invokeOutput("scaleway:network/getPublicGatewayPatRule:getPublicGatewayPatRule", { "patRuleId": args.patRuleId, "zone": args.zone, }, opts); } exports.getPublicGatewayPatRuleOutput = getPublicGatewayPatRuleOutput; //# sourceMappingURL=getPublicGatewayPatRule.js.map