UNPKG

@lbrlabs/pulumi-scaleway

Version:

A Pulumi package for creating and managing scaleway cloud resources.

134 lines (133 loc) 4.02 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "./types/input"; import * as outputs from "./types/output"; /** * Gets information about IP managed by IPAM service. IPAM service is used for dhcp bundled in VPCs' private networks. * * ## Examples * * ### Instance Private Network IP * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as scaleway from "@lbrlabs/pulumi-scaleway"; * import * as scaleway from "@pulumi/scaleway"; * * // Get Instance IP in a private network * const nic = new scaleway.InstancePrivateNic("nic", { * serverId: scaleway_instance_server.server.id, * privateNetworkId: scaleway_vpc_private_network.pn.id, * }); * const byMac = scaleway.getIpamIpOutput({ * macAddress: nic.macAddress, * type: "ipv4", * }); * const byId = scaleway.getIpamIpOutput({ * resource: { * id: nic.id, * type: "instance_private_nic", * }, * type: "ipv4", * }); * ``` */ export declare function getIpamIp(args: GetIpamIpArgs, opts?: pulumi.InvokeOptions): Promise<GetIpamIpResult>; /** * A collection of arguments for invoking getIpamIp. */ export interface GetIpamIpArgs { /** * The Mac Address linked to the IP. */ macAddress?: string; /** * The ID of the private network the IP belong to. */ privateNetworkId?: string; /** * `region`) The region in which the IP exists. */ region?: string; /** * Filter by resource ID and type, both attributes must be set */ resource?: inputs.GetIpamIpResource; /** * The type of the resource to get the IP from. [Documentation](https://pkg.go.dev/github.com/scaleway/scaleway-sdk-go@master/api/ipam/v1alpha1#pkg-constants) with type list. */ type: string; } /** * A collection of values returned by getIpamIp. */ export interface GetIpamIpResult { /** * The IP address */ readonly address: string; /** * The provider-assigned unique ID for this managed resource. */ readonly id: string; readonly macAddress?: string; readonly privateNetworkId?: string; readonly region: string; readonly resource?: outputs.GetIpamIpResource; readonly type: string; } /** * Gets information about IP managed by IPAM service. IPAM service is used for dhcp bundled in VPCs' private networks. * * ## Examples * * ### Instance Private Network IP * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as scaleway from "@lbrlabs/pulumi-scaleway"; * import * as scaleway from "@pulumi/scaleway"; * * // Get Instance IP in a private network * const nic = new scaleway.InstancePrivateNic("nic", { * serverId: scaleway_instance_server.server.id, * privateNetworkId: scaleway_vpc_private_network.pn.id, * }); * const byMac = scaleway.getIpamIpOutput({ * macAddress: nic.macAddress, * type: "ipv4", * }); * const byId = scaleway.getIpamIpOutput({ * resource: { * id: nic.id, * type: "instance_private_nic", * }, * type: "ipv4", * }); * ``` */ export declare function getIpamIpOutput(args: GetIpamIpOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<GetIpamIpResult>; /** * A collection of arguments for invoking getIpamIp. */ export interface GetIpamIpOutputArgs { /** * The Mac Address linked to the IP. */ macAddress?: pulumi.Input<string>; /** * The ID of the private network the IP belong to. */ privateNetworkId?: pulumi.Input<string>; /** * `region`) The region in which the IP exists. */ region?: pulumi.Input<string>; /** * Filter by resource ID and type, both attributes must be set */ resource?: pulumi.Input<inputs.GetIpamIpResourceArgs>; /** * The type of the resource to get the IP from. [Documentation](https://pkg.go.dev/github.com/scaleway/scaleway-sdk-go@master/api/ipam/v1alpha1#pkg-constants) with type list. */ type: pulumi.Input<string>; }