@lbrlabs/pulumi-scaleway
Version:
A Pulumi package for creating and managing scaleway cloud resources.
134 lines (133 loc) • 4.02 kB
TypeScript
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>;
}