import * as pulumi from "@pulumi/pulumi"; /** * This resource provides the Drg Route Table Route Rule resource in Oracle Cloud Infrastructure Core service. * Api doc link for the resource: https://docs.oracle.com/iaas/api/#/en/iaas/latest/DrgRouteTableRouteRule * * Example terraform configs related to the resource : https://github.com/oracle/terraform-provider-oci/tree/master/examples/ * * Adds one static route rule to the specified DRG route table. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as oci from "@pulumi/oci"; * * const testDrgRouteTableRouteRule = new oci.core.DrgRouteTableRouteRule("test_drg_route_table_route_rule", { * drgRouteTableId: testDrgRouteTable.id, * destination: drgRouteTableRouteRuleRouteRulesDestination, * destinationType: drgRouteTableRouteRuleRouteRulesDestinationType, * nextHopDrgAttachmentId: testDrgAttachment.id, * }); * ``` * * ## Import * * DrgRouteTableRouteRule can be imported using the `id`, e.g. * * ```sh * $ pulumi import oci:Core/drgRouteTableRouteRule:DrgRouteTableRouteRule test_drg_route_table_route_rule "drgRouteTables/{drgRouteTableId}/routeRules/{id}" * ``` */ export declare class DrgRouteTableRouteRule extends pulumi.CustomResource { /** * Get an existing DrgRouteTableRouteRule 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, state?: DrgRouteTableRouteRuleState, opts?: pulumi.CustomResourceOptions): DrgRouteTableRouteRule; /** * Returns true if the given object is an instance of DrgRouteTableRouteRule. 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 DrgRouteTableRouteRule; /** * Additional properties for the route, computed by the service. */ readonly attributes: pulumi.Output<{ [key: string]: string; }>; /** * (Updatable) This is the range of IP addresses used for matching when routing traffic. Only CIDR_BLOCK values are allowed. * * Potential values: * * IP address range in CIDR notation. This can be an IPv4 or IPv6 CIDR. For example: `192.168.1.0/24` or `2001:0db8:0123:45::/56`. */ readonly destination: pulumi.Output; /** * Type of destination for the rule. Required if `direction` = `EGRESS`. Allowed values: * * `CIDR_BLOCK`: If the rule's `destination` is an IP address range in CIDR notation. */ readonly destinationType: pulumi.Output; /** * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the DRG route table. * * Potential values: * * IP address range in CIDR notation. This can be an IPv4 CIDR block or IPv6 prefix. For example: `192.168.1.0/24` or `2001:0db8:0123:45::/56`. */ readonly drgRouteTableId: pulumi.Output; /** * Indicates that if the next hop attachment does not exist, so traffic for this route is discarded without notification. */ readonly isBlackhole: pulumi.Output; /** * Indicates that the route was not imported due to a conflict between route rules. */ readonly isConflict: pulumi.Output; /** * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the next hop DRG attachment. The next hop DRG attachment is responsible for reaching the network destination. * * ** IMPORTANT ** * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values */ readonly nextHopDrgAttachmentId: pulumi.Output; /** * The earliest origin of a route. If a route is advertised to a DRG through an IPsec tunnel attachment, and is propagated to peered DRGs via RPC attachments, the route's provenance in the peered DRGs remains `IPSEC_TUNNEL`, because that is the earliest origin. */ readonly routeProvenance: pulumi.Output; /** * You can specify static routes for the DRG route table using the API. The DRG learns dynamic routes from the DRG attachments using various routing protocols. */ readonly routeType: pulumi.Output; /** * Create a DrgRouteTableRouteRule 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: DrgRouteTableRouteRuleArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering DrgRouteTableRouteRule resources. */ export interface DrgRouteTableRouteRuleState { /** * Additional properties for the route, computed by the service. */ attributes?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * (Updatable) This is the range of IP addresses used for matching when routing traffic. Only CIDR_BLOCK values are allowed. * * Potential values: * * IP address range in CIDR notation. This can be an IPv4 or IPv6 CIDR. For example: `192.168.1.0/24` or `2001:0db8:0123:45::/56`. */ destination?: pulumi.Input; /** * Type of destination for the rule. Required if `direction` = `EGRESS`. Allowed values: * * `CIDR_BLOCK`: If the rule's `destination` is an IP address range in CIDR notation. */ destinationType?: pulumi.Input; /** * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the DRG route table. * * Potential values: * * IP address range in CIDR notation. This can be an IPv4 CIDR block or IPv6 prefix. For example: `192.168.1.0/24` or `2001:0db8:0123:45::/56`. */ drgRouteTableId?: pulumi.Input; /** * Indicates that if the next hop attachment does not exist, so traffic for this route is discarded without notification. */ isBlackhole?: pulumi.Input; /** * Indicates that the route was not imported due to a conflict between route rules. */ isConflict?: pulumi.Input; /** * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the next hop DRG attachment. The next hop DRG attachment is responsible for reaching the network destination. * * ** IMPORTANT ** * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values */ nextHopDrgAttachmentId?: pulumi.Input; /** * The earliest origin of a route. If a route is advertised to a DRG through an IPsec tunnel attachment, and is propagated to peered DRGs via RPC attachments, the route's provenance in the peered DRGs remains `IPSEC_TUNNEL`, because that is the earliest origin. */ routeProvenance?: pulumi.Input; /** * You can specify static routes for the DRG route table using the API. The DRG learns dynamic routes from the DRG attachments using various routing protocols. */ routeType?: pulumi.Input; } /** * The set of arguments for constructing a DrgRouteTableRouteRule resource. */ export interface DrgRouteTableRouteRuleArgs { /** * (Updatable) This is the range of IP addresses used for matching when routing traffic. Only CIDR_BLOCK values are allowed. * * Potential values: * * IP address range in CIDR notation. This can be an IPv4 or IPv6 CIDR. For example: `192.168.1.0/24` or `2001:0db8:0123:45::/56`. */ destination: pulumi.Input; /** * Type of destination for the rule. Required if `direction` = `EGRESS`. Allowed values: * * `CIDR_BLOCK`: If the rule's `destination` is an IP address range in CIDR notation. */ destinationType: pulumi.Input; /** * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the DRG route table. * * Potential values: * * IP address range in CIDR notation. This can be an IPv4 CIDR block or IPv6 prefix. For example: `192.168.1.0/24` or `2001:0db8:0123:45::/56`. */ drgRouteTableId: pulumi.Input; /** * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the next hop DRG attachment. The next hop DRG attachment is responsible for reaching the network destination. * * ** IMPORTANT ** * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values */ nextHopDrgAttachmentId: pulumi.Input; } //# sourceMappingURL=drgRouteTableRouteRule.d.ts.map