import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * This resource provides the Load Balancer Routing Policy resource in Oracle Cloud Infrastructure Load Balancer service. * Api doc link for the resource: https://docs.oracle.com/iaas/api/#/en/loadbalancer/latest/LoadBalancerRoutingPolicy * * Example terraform configs related to the resource : https://github.com/oracle/terraform-provider-oci/tree/master/examples/load_balancer * * Adds a routing policy to a load balancer. For more information, see * [Managing Request Routing](https://docs.cloud.oracle.com/iaas/Content/Balance/Tasks/managingrequest.htm). * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as oci from "@pulumi/oci"; * * const testLoadBalancerRoutingPolicy = new oci.loadbalancer.LoadBalancerRoutingPolicy("test_load_balancer_routing_policy", { * conditionLanguageVersion: loadBalancerRoutingPolicyConditionLanguageVersion, * loadBalancerId: testLoadBalancer.id, * name: loadBalancerRoutingPolicyName, * rules: [{ * actions: [{ * backendSetName: testBackendSet.name, * name: loadBalancerRoutingPolicyRulesActionsName, * }], * condition: loadBalancerRoutingPolicyRulesCondition, * name: loadBalancerRoutingPolicyRulesName, * }], * }); * ``` * * ## Import * * LoadBalancerRoutingPolicies can be imported using the `id`, e.g. * * ```sh * $ pulumi import oci:LoadBalancer/loadBalancerRoutingPolicy:LoadBalancerRoutingPolicy test_load_balancer_routing_policy "loadBalancers/{loadBalancerId}/routingPolicies/{routingPolicyName}" * ``` */ export declare class LoadBalancerRoutingPolicy extends pulumi.CustomResource { /** * Get an existing LoadBalancerRoutingPolicy 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?: LoadBalancerRoutingPolicyState, opts?: pulumi.CustomResourceOptions): LoadBalancerRoutingPolicy; /** * Returns true if the given object is an instance of LoadBalancerRoutingPolicy. 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 LoadBalancerRoutingPolicy; /** * (Updatable) The version of the language in which `condition` of `rules` are composed. */ readonly conditionLanguageVersion: pulumi.Output; /** * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the load balancer to add the routing policy rule list to. */ readonly loadBalancerId: pulumi.Output; /** * The name for this list of routing rules. It must be unique and it cannot be changed. Avoid entering confidential information. Example: `exampleRoutingRules` */ readonly name: pulumi.Output; /** * (Updatable) The list of routing rules. */ readonly rules: pulumi.Output; readonly state: pulumi.Output; /** * Create a LoadBalancerRoutingPolicy 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: LoadBalancerRoutingPolicyArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering LoadBalancerRoutingPolicy resources. */ export interface LoadBalancerRoutingPolicyState { /** * (Updatable) The version of the language in which `condition` of `rules` are composed. */ conditionLanguageVersion?: pulumi.Input; /** * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the load balancer to add the routing policy rule list to. */ loadBalancerId?: pulumi.Input; /** * The name for this list of routing rules. It must be unique and it cannot be changed. Avoid entering confidential information. Example: `exampleRoutingRules` */ name?: pulumi.Input; /** * (Updatable) The list of routing rules. */ rules?: pulumi.Input[] | undefined>; state?: pulumi.Input; } /** * The set of arguments for constructing a LoadBalancerRoutingPolicy resource. */ export interface LoadBalancerRoutingPolicyArgs { /** * (Updatable) The version of the language in which `condition` of `rules` are composed. */ conditionLanguageVersion: pulumi.Input; /** * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the load balancer to add the routing policy rule list to. */ loadBalancerId: pulumi.Input; /** * The name for this list of routing rules. It must be unique and it cannot be changed. Avoid entering confidential information. Example: `exampleRoutingRules` */ name?: pulumi.Input; /** * (Updatable) The list of routing rules. */ rules: pulumi.Input[]>; } //# sourceMappingURL=loadBalancerRoutingPolicy.d.ts.map