@muhlba91/pulumi-proxmoxve
Version:
A Pulumi package for creating and managing Proxmox Virtual Environment cloud resources.
157 lines • 5.37 kB
TypeScript
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