@equinix-labs/pulumi-equinix
Version:
A Pulumi package for creating and managing equinix cloud resources.
174 lines (173 loc) • 6.07 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
* Fabric V4 API compatible resource allows creation and management of Equinix Fabric Route Filter Rule
*
* Additional Documentation:
* * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm
* * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as equinix from "@equinix-labs/pulumi-equinix";
*
* const rfRule = new equinix.fabric.RouteFilterRule("rfRule", {
* routeFilterId: "<route_filter_policy_id>",
* prefix: "192.168.0.0/24",
* prefixMatch: "exact",
* description: "Route Filter Rule for X Purpose",
* });
* export const routeFilterRuleId = rfRule.id;
* export const routeFilterId = rfRule.routeFilterId;
* export const routeFilterRulePrefix = rfRule.prefix;
* export const routeFilterRulePrefixMatch = rfRule.prefixMatch;
* ```
*/
export declare class RouteFilterRule extends pulumi.CustomResource {
/**
* Get an existing RouteFilterRule 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?: RouteFilterRuleState, opts?: pulumi.CustomResourceOptions): RouteFilterRule;
/**
* Returns true if the given object is an instance of RouteFilterRule. 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 RouteFilterRule;
/**
* Action that will be taken on IP Addresses matching the rule
*/
readonly action: pulumi.Output<string>;
readonly changeLogs: pulumi.Output<outputs.fabric.RouteFilterRuleChangeLog[]>;
/**
* An object with the details of the previous change applied on the Route Filter
*/
readonly changes: pulumi.Output<outputs.fabric.RouteFilterRuleChange[]>;
/**
* Optional description to add to the Route Filter you will be creating
*/
readonly description: pulumi.Output<string>;
/**
* Route filter rules URI
*/
readonly href: pulumi.Output<string>;
/**
* Name of the Route Filter
*/
readonly name: pulumi.Output<string>;
/**
* IP Address Prefix to Filter on
*/
readonly prefix: pulumi.Output<string>;
/**
* Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger"
*/
readonly prefixMatch: pulumi.Output<string>;
/**
* UUID of the Route Filter Policy to apply this Rule to
*/
readonly routeFilterId: pulumi.Output<string>;
/**
* State of the Route Filter Rule in its lifecycle
*/
readonly state: pulumi.Output<string>;
/**
* Route Filter Type. One of [ BGP*IPv4*PREFIX*FILTER*RULE, BGP*IPv6*PREFIX*FILTER*RULE ]
*/
readonly type: pulumi.Output<string>;
/**
* Equinix Assigned ID for Route Filter Rule
*/
readonly uuid: pulumi.Output<string>;
/**
* Create a RouteFilterRule 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.
*/
constructor(name: string, args: RouteFilterRuleArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* Input properties used for looking up and filtering RouteFilterRule resources.
*/
export interface RouteFilterRuleState {
/**
* Action that will be taken on IP Addresses matching the rule
*/
action?: pulumi.Input<string>;
changeLogs?: pulumi.Input<pulumi.Input<inputs.fabric.RouteFilterRuleChangeLog>[]>;
/**
* An object with the details of the previous change applied on the Route Filter
*/
changes?: pulumi.Input<pulumi.Input<inputs.fabric.RouteFilterRuleChange>[]>;
/**
* Optional description to add to the Route Filter you will be creating
*/
description?: pulumi.Input<string>;
/**
* Route filter rules URI
*/
href?: pulumi.Input<string>;
/**
* Name of the Route Filter
*/
name?: pulumi.Input<string>;
/**
* IP Address Prefix to Filter on
*/
prefix?: pulumi.Input<string>;
/**
* Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger"
*/
prefixMatch?: pulumi.Input<string>;
/**
* UUID of the Route Filter Policy to apply this Rule to
*/
routeFilterId?: pulumi.Input<string>;
/**
* State of the Route Filter Rule in its lifecycle
*/
state?: pulumi.Input<string>;
/**
* Route Filter Type. One of [ BGP*IPv4*PREFIX*FILTER*RULE, BGP*IPv6*PREFIX*FILTER*RULE ]
*/
type?: pulumi.Input<string>;
/**
* Equinix Assigned ID for Route Filter Rule
*/
uuid?: pulumi.Input<string>;
}
/**
* The set of arguments for constructing a RouteFilterRule resource.
*/
export interface RouteFilterRuleArgs {
/**
* Optional description to add to the Route Filter you will be creating
*/
description?: pulumi.Input<string>;
/**
* Name of the Route Filter
*/
name?: pulumi.Input<string>;
/**
* IP Address Prefix to Filter on
*/
prefix: pulumi.Input<string>;
/**
* Prefix matching operator. One of [ orlonger, exact ] Default: "orlonger"
*/
prefixMatch?: pulumi.Input<string>;
/**
* UUID of the Route Filter Policy to apply this Rule to
*/
routeFilterId: pulumi.Input<string>;
}