@pulumiverse/scaleway
Version:
A Pulumi package for creating and managing Scaleway cloud resources.
243 lines (242 loc) • 8.14 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "./types/input";
import * as outputs from "./types/output";
/**
* Creates and manages Scaleway VPC Private Networks.
* For more information, see the [API documentation](https://www.scaleway.com/en/developers/api/vpc/#private-networks-ac2df4).
*
* ## Example Usage
*
* ### Basic
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as scaleway from "@pulumiverse/scaleway";
*
* const pnPriv = new scaleway.network.PrivateNetwork("pn_priv", {
* name: "subnet_demo",
* tags: [
* "demo",
* "terraform",
* ],
* });
* ```
*
* ### With subnets
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as scaleway from "@pulumiverse/scaleway";
*
* const pnPriv = new scaleway.network.PrivateNetwork("pn_priv", {
* name: "subnet_demo",
* tags: [
* "demo",
* "terraform",
* ],
* ipv4Subnet: {
* subnet: "192.168.0.0/24",
* },
* ipv6Subnets: [
* {
* subnet: "fd46:78ab:30b8:177c::/64",
* },
* {
* subnet: "fd46:78ab:30b8:c7df::/64",
* },
* ],
* });
* ```
*
* ## Import
*
* Private Networks can be imported using `{region}/{id}`, e.g.
*
* bash
*
* ```sh
* $ pulumi import scaleway:index/vpcPrivateNetwork:VpcPrivateNetwork main fr-par/11111111-1111-1111-1111-111111111111
* ```
*
* @deprecated scaleway.index/vpcprivatenetwork.VpcPrivateNetwork has been deprecated in favor of scaleway.network/privatenetwork.PrivateNetwork
*/
export declare class VpcPrivateNetwork extends pulumi.CustomResource {
/**
* Get an existing VpcPrivateNetwork resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VpcPrivateNetworkState, opts?: pulumi.CustomResourceOptions): VpcPrivateNetwork;
/**
* Returns true if the given object is an instance of VpcPrivateNetwork. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj: any): obj is VpcPrivateNetwork;
/**
* The date and time of the creation of the subnet.
*/
readonly createdAt: pulumi.Output<string>;
/**
* The IPv4 subnet to associate with the Private Network.
*/
readonly ipv4Subnet: pulumi.Output<outputs.VpcPrivateNetworkIpv4Subnet>;
/**
* The IPv6 subnets to associate with the private network.
*/
readonly ipv6Subnets: pulumi.Output<outputs.VpcPrivateNetworkIpv6Subnet[]>;
/**
* Private Networks are now all necessarily regional.
*
* @deprecated This field is deprecated and will be removed in the next major version
*/
readonly isRegional: pulumi.Output<boolean>;
/**
* The name of the Private Network. If not provided, it will be randomly generated.
*/
readonly name: pulumi.Output<string>;
/**
* The Organization ID the Private Network is associated with.
*/
readonly organizationId: pulumi.Output<string>;
/**
* `projectId`) The ID of the Project the private network is associated with.
*/
readonly projectId: pulumi.Output<string>;
/**
* `region`) The region of the Private Network.
*/
readonly region: pulumi.Output<string>;
/**
* The tags associated with the Private Network.
*/
readonly tags: pulumi.Output<string[] | undefined>;
/**
* The date and time of the last update of the subnet.
*/
readonly updatedAt: pulumi.Output<string>;
/**
* The VPC in which to create the Private Network.
*/
readonly vpcId: pulumi.Output<string>;
/**
* Use `region` instead.
*
* @deprecated This field is deprecated and will be removed in the next major version, please use `region` instead
*/
readonly zone: pulumi.Output<string>;
/**
* Create a VpcPrivateNetwork resource with the given unique name, arguments, and options.
*
* @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior.
*/
/** @deprecated scaleway.index/vpcprivatenetwork.VpcPrivateNetwork has been deprecated in favor of scaleway.network/privatenetwork.PrivateNetwork */
constructor(name: string, args?: VpcPrivateNetworkArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* Input properties used for looking up and filtering VpcPrivateNetwork resources.
*/
export interface VpcPrivateNetworkState {
/**
* The date and time of the creation of the subnet.
*/
createdAt?: pulumi.Input<string>;
/**
* The IPv4 subnet to associate with the Private Network.
*/
ipv4Subnet?: pulumi.Input<inputs.VpcPrivateNetworkIpv4Subnet>;
/**
* The IPv6 subnets to associate with the private network.
*/
ipv6Subnets?: pulumi.Input<pulumi.Input<inputs.VpcPrivateNetworkIpv6Subnet>[]>;
/**
* Private Networks are now all necessarily regional.
*
* @deprecated This field is deprecated and will be removed in the next major version
*/
isRegional?: pulumi.Input<boolean>;
/**
* The name of the Private Network. If not provided, it will be randomly generated.
*/
name?: pulumi.Input<string>;
/**
* The Organization ID the Private Network is associated with.
*/
organizationId?: pulumi.Input<string>;
/**
* `projectId`) The ID of the Project the private network is associated with.
*/
projectId?: pulumi.Input<string>;
/**
* `region`) The region of the Private Network.
*/
region?: pulumi.Input<string>;
/**
* The tags associated with the Private Network.
*/
tags?: pulumi.Input<pulumi.Input<string>[]>;
/**
* The date and time of the last update of the subnet.
*/
updatedAt?: pulumi.Input<string>;
/**
* The VPC in which to create the Private Network.
*/
vpcId?: pulumi.Input<string>;
/**
* Use `region` instead.
*
* @deprecated This field is deprecated and will be removed in the next major version, please use `region` instead
*/
zone?: pulumi.Input<string>;
}
/**
* The set of arguments for constructing a VpcPrivateNetwork resource.
*/
export interface VpcPrivateNetworkArgs {
/**
* The IPv4 subnet to associate with the Private Network.
*/
ipv4Subnet?: pulumi.Input<inputs.VpcPrivateNetworkIpv4Subnet>;
/**
* The IPv6 subnets to associate with the private network.
*/
ipv6Subnets?: pulumi.Input<pulumi.Input<inputs.VpcPrivateNetworkIpv6Subnet>[]>;
/**
* Private Networks are now all necessarily regional.
*
* @deprecated This field is deprecated and will be removed in the next major version
*/
isRegional?: pulumi.Input<boolean>;
/**
* The name of the Private Network. If not provided, it will be randomly generated.
*/
name?: pulumi.Input<string>;
/**
* `projectId`) The ID of the Project the private network is associated with.
*/
projectId?: pulumi.Input<string>;
/**
* `region`) The region of the Private Network.
*/
region?: pulumi.Input<string>;
/**
* The tags associated with the Private Network.
*/
tags?: pulumi.Input<pulumi.Input<string>[]>;
/**
* The VPC in which to create the Private Network.
*/
vpcId?: pulumi.Input<string>;
/**
* Use `region` instead.
*
* @deprecated This field is deprecated and will be removed in the next major version, please use `region` instead
*/
zone?: pulumi.Input<string>;
}