UNPKG

@muhlba91/pulumi-proxmoxve

Version:

A Pulumi package for creating and managing Proxmox Virtual Environment cloud resources.

157 lines 5.37 kB
import * as pulumi from "@pulumi/pulumi"; /** * Retrieves information about an EVPN Zone in Proxmox SDN. The EVPN zone creates a routable Layer 3 network, capable of spanning across multiple clusters. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as proxmoxve from "@muhlba91/pulumi-proxmoxve"; * * const example = proxmoxve.sdn.zone.getEvpn({ * id: "evpn1", * }); * export const dataProxmoxSdnZoneEvpn = { * id: example.then(example => example.id), * nodes: example.then(example => example.nodes), * controller: example.then(example => example.controller), * vrfVxlan: example.then(example => example.vrfVxlan), * advertiseSubnets: example.then(example => example.advertiseSubnets), * disableArpNdSuppression: example.then(example => example.disableArpNdSuppression), * exitNodes: example.then(example => example.exitNodes), * exitNodesLocalRouting: example.then(example => example.exitNodesLocalRouting), * primaryExitNode: example.then(example => example.primaryExitNode), * rtImport: example.then(example => example.rtImport), * mtu: example.then(example => example.mtu), * dns: example.then(example => example.dns), * dnsZone: example.then(example => example.dnsZone), * ipam: example.then(example => example.ipam), * reverseDns: example.then(example => example.reverseDns), * }; * ``` */ export declare function getEvpn(args: GetEvpnArgs, opts?: pulumi.InvokeOptions): Promise<GetEvpnResult>; /** * A collection of arguments for invoking getEvpn. */ export interface GetEvpnArgs { /** * The unique identifier of the SDN zone. */ id: string; } /** * A collection of values returned by getEvpn. */ export interface GetEvpnResult { /** * Enable subnet advertisement for EVPN. */ readonly advertiseSubnets: boolean; /** * EVPN controller address. */ readonly controller: string; /** * Disable ARP/ND suppression for EVPN. */ readonly disableArpNdSuppression: boolean; /** * DNS API server address. */ readonly dns: string; /** * DNS domain name. Used to register hostnames, such as `<hostname>.<domain>`. The DNS zone must already exist on the DNS server. */ readonly dnsZone: string; /** * List of exit nodes for EVPN. */ readonly exitNodes: string[]; /** * Enable local routing for EVPN exit nodes. */ readonly exitNodesLocalRouting: boolean; /** * The unique identifier of the SDN zone. */ readonly id: string; /** * IP Address Management system. */ readonly ipam: string; /** * MTU value for the zone. */ readonly mtu: number; /** * The Proxmox nodes which the zone and associated VNets are deployed on */ readonly nodes: string[]; /** * Indicates if the zone has pending configuration changes that need to be applied. */ readonly pending: boolean; /** * Primary exit node for EVPN. */ readonly primaryExitNode: string; /** * Reverse DNS API server address. */ readonly reverseDns: string; /** * Route target import for EVPN. Must be in the format '\n\n:\n\n' (e.g., '65000:65000'). */ readonly rtImport: string; /** * Indicates the current state of the zone. */ readonly state: string; /** * VRF VXLAN-ID used for dedicated routing interconnect between VNets. It must be different than the VXLAN-ID of the VNets. */ readonly vrfVxlan: number; } /** * Retrieves information about an EVPN Zone in Proxmox SDN. The EVPN zone creates a routable Layer 3 network, capable of spanning across multiple clusters. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as proxmoxve from "@muhlba91/pulumi-proxmoxve"; * * const example = proxmoxve.sdn.zone.getEvpn({ * id: "evpn1", * }); * export const dataProxmoxSdnZoneEvpn = { * id: example.then(example => example.id), * nodes: example.then(example => example.nodes), * controller: example.then(example => example.controller), * vrfVxlan: example.then(example => example.vrfVxlan), * advertiseSubnets: example.then(example => example.advertiseSubnets), * disableArpNdSuppression: example.then(example => example.disableArpNdSuppression), * exitNodes: example.then(example => example.exitNodes), * exitNodesLocalRouting: example.then(example => example.exitNodesLocalRouting), * primaryExitNode: example.then(example => example.primaryExitNode), * rtImport: example.then(example => example.rtImport), * mtu: example.then(example => example.mtu), * dns: example.then(example => example.dns), * dnsZone: example.then(example => example.dnsZone), * ipam: example.then(example => example.ipam), * reverseDns: example.then(example => example.reverseDns), * }; * ``` */ export declare function getEvpnOutput(args: GetEvpnOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetEvpnResult>; /** * A collection of arguments for invoking getEvpn. */ export interface GetEvpnOutputArgs { /** * The unique identifier of the SDN zone. */ id: pulumi.Input<string>; } //# sourceMappingURL=getEvpn.d.ts.map