1. Packages
  2. Oracle Cloud Infrastructure
  3. API Docs
  4. Dns
  5. SteeringPolicy
Oracle Cloud Infrastructure v1.29.0 published on Thursday, Mar 28, 2024 by Pulumi

oci.Dns.SteeringPolicy

Explore with Pulumi AI

oci logo
Oracle Cloud Infrastructure v1.29.0 published on Thursday, Mar 28, 2024 by Pulumi

    This resource provides the Steering Policy resource in Oracle Cloud Infrastructure DNS service.

    Creates a new steering policy in the specified compartment. For more information on creating policies with templates, see Traffic Management API Guide.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as oci from "@pulumi/oci";
    
    const testSteeringPolicy = new oci.dns.SteeringPolicy("testSteeringPolicy", {
        compartmentId: _var.compartment_id,
        displayName: _var.steering_policy_display_name,
        template: _var.steering_policy_template,
        answers: [{
            name: _var.steering_policy_answers_name,
            rdata: _var.steering_policy_answers_rdata,
            rtype: _var.steering_policy_answers_rtype,
            isDisabled: _var.steering_policy_answers_is_disabled,
            pool: _var.steering_policy_answers_pool,
        }],
        definedTags: _var.steering_policy_defined_tags,
        freeformTags: _var.steering_policy_freeform_tags,
        healthCheckMonitorId: oci_health_checks_http_monitor.test_http_monitor.id,
        rules: [{
            ruleType: _var.steering_policy_rules_rule_type,
            cases: [{
                answerDatas: [{
                    answerCondition: _var.steering_policy_rules_cases_answer_data_answer_condition,
                    shouldKeep: _var.steering_policy_rules_cases_answer_data_should_keep,
                    value: _var.steering_policy_rules_cases_answer_data_value,
                }],
                caseCondition: _var.steering_policy_rules_cases_case_condition,
                count: _var.steering_policy_rules_cases_count,
            }],
            defaultAnswerDatas: [{
                answerCondition: _var.steering_policy_rules_default_answer_data_answer_condition,
                shouldKeep: _var.steering_policy_rules_default_answer_data_should_keep,
                value: _var.steering_policy_rules_default_answer_data_value,
            }],
            defaultCount: _var.steering_policy_rules_default_count,
            description: _var.steering_policy_rules_description,
        }],
        ttl: _var.steering_policy_ttl,
    });
    
    import pulumi
    import pulumi_oci as oci
    
    test_steering_policy = oci.dns.SteeringPolicy("testSteeringPolicy",
        compartment_id=var["compartment_id"],
        display_name=var["steering_policy_display_name"],
        template=var["steering_policy_template"],
        answers=[oci.dns.SteeringPolicyAnswerArgs(
            name=var["steering_policy_answers_name"],
            rdata=var["steering_policy_answers_rdata"],
            rtype=var["steering_policy_answers_rtype"],
            is_disabled=var["steering_policy_answers_is_disabled"],
            pool=var["steering_policy_answers_pool"],
        )],
        defined_tags=var["steering_policy_defined_tags"],
        freeform_tags=var["steering_policy_freeform_tags"],
        health_check_monitor_id=oci_health_checks_http_monitor["test_http_monitor"]["id"],
        rules=[oci.dns.SteeringPolicyRuleArgs(
            rule_type=var["steering_policy_rules_rule_type"],
            cases=[oci.dns.SteeringPolicyRuleCaseArgs(
                answer_datas=[oci.dns.SteeringPolicyRuleCaseAnswerDataArgs(
                    answer_condition=var["steering_policy_rules_cases_answer_data_answer_condition"],
                    should_keep=var["steering_policy_rules_cases_answer_data_should_keep"],
                    value=var["steering_policy_rules_cases_answer_data_value"],
                )],
                case_condition=var["steering_policy_rules_cases_case_condition"],
                count=var["steering_policy_rules_cases_count"],
            )],
            default_answer_datas=[oci.dns.SteeringPolicyRuleDefaultAnswerDataArgs(
                answer_condition=var["steering_policy_rules_default_answer_data_answer_condition"],
                should_keep=var["steering_policy_rules_default_answer_data_should_keep"],
                value=var["steering_policy_rules_default_answer_data_value"],
            )],
            default_count=var["steering_policy_rules_default_count"],
            description=var["steering_policy_rules_description"],
        )],
        ttl=var["steering_policy_ttl"])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-oci/sdk/go/oci/Dns"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := Dns.NewSteeringPolicy(ctx, "testSteeringPolicy", &Dns.SteeringPolicyArgs{
    			CompartmentId: pulumi.Any(_var.Compartment_id),
    			DisplayName:   pulumi.Any(_var.Steering_policy_display_name),
    			Template:      pulumi.Any(_var.Steering_policy_template),
    			Answers: dns.SteeringPolicyAnswerArray{
    				&dns.SteeringPolicyAnswerArgs{
    					Name:       pulumi.Any(_var.Steering_policy_answers_name),
    					Rdata:      pulumi.Any(_var.Steering_policy_answers_rdata),
    					Rtype:      pulumi.Any(_var.Steering_policy_answers_rtype),
    					IsDisabled: pulumi.Any(_var.Steering_policy_answers_is_disabled),
    					Pool:       pulumi.Any(_var.Steering_policy_answers_pool),
    				},
    			},
    			DefinedTags:          pulumi.Any(_var.Steering_policy_defined_tags),
    			FreeformTags:         pulumi.Any(_var.Steering_policy_freeform_tags),
    			HealthCheckMonitorId: pulumi.Any(oci_health_checks_http_monitor.Test_http_monitor.Id),
    			Rules: dns.SteeringPolicyRuleArray{
    				&dns.SteeringPolicyRuleArgs{
    					RuleType: pulumi.Any(_var.Steering_policy_rules_rule_type),
    					Cases: dns.SteeringPolicyRuleCaseArray{
    						&dns.SteeringPolicyRuleCaseArgs{
    							AnswerDatas: dns.SteeringPolicyRuleCaseAnswerDataArray{
    								&dns.SteeringPolicyRuleCaseAnswerDataArgs{
    									AnswerCondition: pulumi.Any(_var.Steering_policy_rules_cases_answer_data_answer_condition),
    									ShouldKeep:      pulumi.Any(_var.Steering_policy_rules_cases_answer_data_should_keep),
    									Value:           pulumi.Any(_var.Steering_policy_rules_cases_answer_data_value),
    								},
    							},
    							CaseCondition: pulumi.Any(_var.Steering_policy_rules_cases_case_condition),
    							Count:         pulumi.Any(_var.Steering_policy_rules_cases_count),
    						},
    					},
    					DefaultAnswerDatas: dns.SteeringPolicyRuleDefaultAnswerDataArray{
    						&dns.SteeringPolicyRuleDefaultAnswerDataArgs{
    							AnswerCondition: pulumi.Any(_var.Steering_policy_rules_default_answer_data_answer_condition),
    							ShouldKeep:      pulumi.Any(_var.Steering_policy_rules_default_answer_data_should_keep),
    							Value:           pulumi.Any(_var.Steering_policy_rules_default_answer_data_value),
    						},
    					},
    					DefaultCount: pulumi.Any(_var.Steering_policy_rules_default_count),
    					Description:  pulumi.Any(_var.Steering_policy_rules_description),
    				},
    			},
    			Ttl: pulumi.Any(_var.Steering_policy_ttl),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Oci = Pulumi.Oci;
    
    return await Deployment.RunAsync(() => 
    {
        var testSteeringPolicy = new Oci.Dns.SteeringPolicy("testSteeringPolicy", new()
        {
            CompartmentId = @var.Compartment_id,
            DisplayName = @var.Steering_policy_display_name,
            Template = @var.Steering_policy_template,
            Answers = new[]
            {
                new Oci.Dns.Inputs.SteeringPolicyAnswerArgs
                {
                    Name = @var.Steering_policy_answers_name,
                    Rdata = @var.Steering_policy_answers_rdata,
                    Rtype = @var.Steering_policy_answers_rtype,
                    IsDisabled = @var.Steering_policy_answers_is_disabled,
                    Pool = @var.Steering_policy_answers_pool,
                },
            },
            DefinedTags = @var.Steering_policy_defined_tags,
            FreeformTags = @var.Steering_policy_freeform_tags,
            HealthCheckMonitorId = oci_health_checks_http_monitor.Test_http_monitor.Id,
            Rules = new[]
            {
                new Oci.Dns.Inputs.SteeringPolicyRuleArgs
                {
                    RuleType = @var.Steering_policy_rules_rule_type,
                    Cases = new[]
                    {
                        new Oci.Dns.Inputs.SteeringPolicyRuleCaseArgs
                        {
                            AnswerDatas = new[]
                            {
                                new Oci.Dns.Inputs.SteeringPolicyRuleCaseAnswerDataArgs
                                {
                                    AnswerCondition = @var.Steering_policy_rules_cases_answer_data_answer_condition,
                                    ShouldKeep = @var.Steering_policy_rules_cases_answer_data_should_keep,
                                    Value = @var.Steering_policy_rules_cases_answer_data_value,
                                },
                            },
                            CaseCondition = @var.Steering_policy_rules_cases_case_condition,
                            Count = @var.Steering_policy_rules_cases_count,
                        },
                    },
                    DefaultAnswerDatas = new[]
                    {
                        new Oci.Dns.Inputs.SteeringPolicyRuleDefaultAnswerDataArgs
                        {
                            AnswerCondition = @var.Steering_policy_rules_default_answer_data_answer_condition,
                            ShouldKeep = @var.Steering_policy_rules_default_answer_data_should_keep,
                            Value = @var.Steering_policy_rules_default_answer_data_value,
                        },
                    },
                    DefaultCount = @var.Steering_policy_rules_default_count,
                    Description = @var.Steering_policy_rules_description,
                },
            },
            Ttl = @var.Steering_policy_ttl,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.oci.Dns.SteeringPolicy;
    import com.pulumi.oci.Dns.SteeringPolicyArgs;
    import com.pulumi.oci.Dns.inputs.SteeringPolicyAnswerArgs;
    import com.pulumi.oci.Dns.inputs.SteeringPolicyRuleArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var testSteeringPolicy = new SteeringPolicy("testSteeringPolicy", SteeringPolicyArgs.builder()        
                .compartmentId(var_.compartment_id())
                .displayName(var_.steering_policy_display_name())
                .template(var_.steering_policy_template())
                .answers(SteeringPolicyAnswerArgs.builder()
                    .name(var_.steering_policy_answers_name())
                    .rdata(var_.steering_policy_answers_rdata())
                    .rtype(var_.steering_policy_answers_rtype())
                    .isDisabled(var_.steering_policy_answers_is_disabled())
                    .pool(var_.steering_policy_answers_pool())
                    .build())
                .definedTags(var_.steering_policy_defined_tags())
                .freeformTags(var_.steering_policy_freeform_tags())
                .healthCheckMonitorId(oci_health_checks_http_monitor.test_http_monitor().id())
                .rules(SteeringPolicyRuleArgs.builder()
                    .ruleType(var_.steering_policy_rules_rule_type())
                    .cases(SteeringPolicyRuleCaseArgs.builder()
                        .answerDatas(SteeringPolicyRuleCaseAnswerDataArgs.builder()
                            .answerCondition(var_.steering_policy_rules_cases_answer_data_answer_condition())
                            .shouldKeep(var_.steering_policy_rules_cases_answer_data_should_keep())
                            .value(var_.steering_policy_rules_cases_answer_data_value())
                            .build())
                        .caseCondition(var_.steering_policy_rules_cases_case_condition())
                        .count(var_.steering_policy_rules_cases_count())
                        .build())
                    .defaultAnswerDatas(SteeringPolicyRuleDefaultAnswerDataArgs.builder()
                        .answerCondition(var_.steering_policy_rules_default_answer_data_answer_condition())
                        .shouldKeep(var_.steering_policy_rules_default_answer_data_should_keep())
                        .value(var_.steering_policy_rules_default_answer_data_value())
                        .build())
                    .defaultCount(var_.steering_policy_rules_default_count())
                    .description(var_.steering_policy_rules_description())
                    .build())
                .ttl(var_.steering_policy_ttl())
                .build());
    
        }
    }
    
    resources:
      testSteeringPolicy:
        type: oci:Dns:SteeringPolicy
        properties:
          #Required
          compartmentId: ${var.compartment_id}
          displayName: ${var.steering_policy_display_name}
          template: ${var.steering_policy_template}
          #Optional
          answers:
            - name: ${var.steering_policy_answers_name}
              rdata: ${var.steering_policy_answers_rdata}
              rtype: ${var.steering_policy_answers_rtype}
              isDisabled: ${var.steering_policy_answers_is_disabled}
              pool: ${var.steering_policy_answers_pool}
          definedTags: ${var.steering_policy_defined_tags}
          freeformTags: ${var.steering_policy_freeform_tags}
          healthCheckMonitorId: ${oci_health_checks_http_monitor.test_http_monitor.id}
          rules:
            - ruleType: ${var.steering_policy_rules_rule_type}
              cases:
                - answerDatas:
                    - answerCondition: ${var.steering_policy_rules_cases_answer_data_answer_condition}
                      shouldKeep: ${var.steering_policy_rules_cases_answer_data_should_keep}
                      value: ${var.steering_policy_rules_cases_answer_data_value}
                  caseCondition: ${var.steering_policy_rules_cases_case_condition}
                  count: ${var.steering_policy_rules_cases_count}
              defaultAnswerDatas:
                - answerCondition: ${var.steering_policy_rules_default_answer_data_answer_condition}
                  shouldKeep: ${var.steering_policy_rules_default_answer_data_should_keep}
                  value: ${var.steering_policy_rules_default_answer_data_value}
              defaultCount: ${var.steering_policy_rules_default_count}
              description: ${var.steering_policy_rules_description}
          ttl: ${var.steering_policy_ttl}
    

    Create SteeringPolicy Resource

    new SteeringPolicy(name: string, args: SteeringPolicyArgs, opts?: CustomResourceOptions);
    @overload
    def SteeringPolicy(resource_name: str,
                       opts: Optional[ResourceOptions] = None,
                       answers: Optional[Sequence[_dns.SteeringPolicyAnswerArgs]] = None,
                       compartment_id: Optional[str] = None,
                       defined_tags: Optional[Mapping[str, Any]] = None,
                       display_name: Optional[str] = None,
                       freeform_tags: Optional[Mapping[str, Any]] = None,
                       health_check_monitor_id: Optional[str] = None,
                       rules: Optional[Sequence[_dns.SteeringPolicyRuleArgs]] = None,
                       template: Optional[str] = None,
                       ttl: Optional[int] = None)
    @overload
    def SteeringPolicy(resource_name: str,
                       args: SteeringPolicyArgs,
                       opts: Optional[ResourceOptions] = None)
    func NewSteeringPolicy(ctx *Context, name string, args SteeringPolicyArgs, opts ...ResourceOption) (*SteeringPolicy, error)
    public SteeringPolicy(string name, SteeringPolicyArgs args, CustomResourceOptions? opts = null)
    public SteeringPolicy(String name, SteeringPolicyArgs args)
    public SteeringPolicy(String name, SteeringPolicyArgs args, CustomResourceOptions options)
    
    type: oci:Dns:SteeringPolicy
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    name string
    The unique name of the resource.
    args SteeringPolicyArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args SteeringPolicyArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args SteeringPolicyArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args SteeringPolicyArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args SteeringPolicyArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    SteeringPolicy Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The SteeringPolicy resource accepts the following input properties:

    CompartmentId string
    (Updatable) The OCID of the compartment containing the steering policy.
    DisplayName string
    (Updatable) A user-friendly name for the steering policy. Does not have to be unique and can be changed. Avoid entering confidential information.
    Template string

    (Updatable) A set of predefined rules based on the desired purpose of the steering policy. Each template utilizes Traffic Management's rules in a different order to produce the desired results when answering DNS queries.

    Example: The FAILOVER template determines answers by filtering the policy's answers using the FILTER rule first, then the following rules in succession: HEALTH, PRIORITY, and LIMIT. This gives the domain dynamic failover capability.

    It is strongly recommended to use a template other than CUSTOM when creating a steering policy.

    All templates require the rule order to begin with an unconditional FILTER rule that keeps answers contingent upon answer.isDisabled != true, except for CUSTOM. A defined HEALTH rule must follow the FILTER rule if the policy references a healthCheckMonitorId. The last rule of a template must must be a LIMIT rule. For more information about templates and code examples, see Traffic Management API Guide.

    Template Types

    Answers List<SteeringPolicyAnswer>
    The set of all answers that can potentially issue from the steering policy.
    DefinedTags Dictionary<string, object>
    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
    FreeformTags Dictionary<string, object>
    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags.
    HealthCheckMonitorId string

    (Updatable) The OCID of the health check monitor providing health data about the answers of the steering policy. A steering policy answer with rdata matching a monitored endpoint will use the health data of that endpoint. A steering policy answer with rdata not matching any monitored endpoint will be assumed healthy.

    Note: To use the Health Check monitoring feature in a steering policy, a monitor must be created using the Health Checks service first. For more information on how to create a monitor, please see Managing Health Checks.

    Rules List<SteeringPolicyRule>

    The series of rules that will be processed in sequence to reduce the pool of answers to a response for any given request.

    The first rule receives a shuffled list of all answers, and every other rule receives the list of answers emitted by the one preceding it. The last rule populates the response.

    Ttl int

    (Updatable) The Time To Live (TTL) for responses from the steering policy, in seconds. If not specified during creation, a value of 30 seconds will be used.

    ** 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

    CompartmentId string
    (Updatable) The OCID of the compartment containing the steering policy.
    DisplayName string
    (Updatable) A user-friendly name for the steering policy. Does not have to be unique and can be changed. Avoid entering confidential information.
    Template string

    (Updatable) A set of predefined rules based on the desired purpose of the steering policy. Each template utilizes Traffic Management's rules in a different order to produce the desired results when answering DNS queries.

    Example: The FAILOVER template determines answers by filtering the policy's answers using the FILTER rule first, then the following rules in succession: HEALTH, PRIORITY, and LIMIT. This gives the domain dynamic failover capability.

    It is strongly recommended to use a template other than CUSTOM when creating a steering policy.

    All templates require the rule order to begin with an unconditional FILTER rule that keeps answers contingent upon answer.isDisabled != true, except for CUSTOM. A defined HEALTH rule must follow the FILTER rule if the policy references a healthCheckMonitorId. The last rule of a template must must be a LIMIT rule. For more information about templates and code examples, see Traffic Management API Guide.

    Template Types

    Answers []SteeringPolicyAnswerArgs
    The set of all answers that can potentially issue from the steering policy.
    DefinedTags map[string]interface{}
    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
    FreeformTags map[string]interface{}
    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags.
    HealthCheckMonitorId string

    (Updatable) The OCID of the health check monitor providing health data about the answers of the steering policy. A steering policy answer with rdata matching a monitored endpoint will use the health data of that endpoint. A steering policy answer with rdata not matching any monitored endpoint will be assumed healthy.

    Note: To use the Health Check monitoring feature in a steering policy, a monitor must be created using the Health Checks service first. For more information on how to create a monitor, please see Managing Health Checks.

    Rules []SteeringPolicyRuleArgs

    The series of rules that will be processed in sequence to reduce the pool of answers to a response for any given request.

    The first rule receives a shuffled list of all answers, and every other rule receives the list of answers emitted by the one preceding it. The last rule populates the response.

    Ttl int

    (Updatable) The Time To Live (TTL) for responses from the steering policy, in seconds. If not specified during creation, a value of 30 seconds will be used.

    ** 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

    compartmentId String
    (Updatable) The OCID of the compartment containing the steering policy.
    displayName String
    (Updatable) A user-friendly name for the steering policy. Does not have to be unique and can be changed. Avoid entering confidential information.
    template String

    (Updatable) A set of predefined rules based on the desired purpose of the steering policy. Each template utilizes Traffic Management's rules in a different order to produce the desired results when answering DNS queries.

    Example: The FAILOVER template determines answers by filtering the policy's answers using the FILTER rule first, then the following rules in succession: HEALTH, PRIORITY, and LIMIT. This gives the domain dynamic failover capability.

    It is strongly recommended to use a template other than CUSTOM when creating a steering policy.

    All templates require the rule order to begin with an unconditional FILTER rule that keeps answers contingent upon answer.isDisabled != true, except for CUSTOM. A defined HEALTH rule must follow the FILTER rule if the policy references a healthCheckMonitorId. The last rule of a template must must be a LIMIT rule. For more information about templates and code examples, see Traffic Management API Guide.

    Template Types

    answers List<SteeringPolicyAnswer>
    The set of all answers that can potentially issue from the steering policy.
    definedTags Map<String,Object>
    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
    freeformTags Map<String,Object>
    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags.
    healthCheckMonitorId String

    (Updatable) The OCID of the health check monitor providing health data about the answers of the steering policy. A steering policy answer with rdata matching a monitored endpoint will use the health data of that endpoint. A steering policy answer with rdata not matching any monitored endpoint will be assumed healthy.

    Note: To use the Health Check monitoring feature in a steering policy, a monitor must be created using the Health Checks service first. For more information on how to create a monitor, please see Managing Health Checks.

    rules List<SteeringPolicyRule>

    The series of rules that will be processed in sequence to reduce the pool of answers to a response for any given request.

    The first rule receives a shuffled list of all answers, and every other rule receives the list of answers emitted by the one preceding it. The last rule populates the response.

    ttl Integer

    (Updatable) The Time To Live (TTL) for responses from the steering policy, in seconds. If not specified during creation, a value of 30 seconds will be used.

    ** 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

    compartmentId string
    (Updatable) The OCID of the compartment containing the steering policy.
    displayName string
    (Updatable) A user-friendly name for the steering policy. Does not have to be unique and can be changed. Avoid entering confidential information.
    template string

    (Updatable) A set of predefined rules based on the desired purpose of the steering policy. Each template utilizes Traffic Management's rules in a different order to produce the desired results when answering DNS queries.

    Example: The FAILOVER template determines answers by filtering the policy's answers using the FILTER rule first, then the following rules in succession: HEALTH, PRIORITY, and LIMIT. This gives the domain dynamic failover capability.

    It is strongly recommended to use a template other than CUSTOM when creating a steering policy.

    All templates require the rule order to begin with an unconditional FILTER rule that keeps answers contingent upon answer.isDisabled != true, except for CUSTOM. A defined HEALTH rule must follow the FILTER rule if the policy references a healthCheckMonitorId. The last rule of a template must must be a LIMIT rule. For more information about templates and code examples, see Traffic Management API Guide.

    Template Types

    answers SteeringPolicyAnswer[]
    The set of all answers that can potentially issue from the steering policy.
    definedTags {[key: string]: any}
    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
    freeformTags {[key: string]: any}
    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags.
    healthCheckMonitorId string

    (Updatable) The OCID of the health check monitor providing health data about the answers of the steering policy. A steering policy answer with rdata matching a monitored endpoint will use the health data of that endpoint. A steering policy answer with rdata not matching any monitored endpoint will be assumed healthy.

    Note: To use the Health Check monitoring feature in a steering policy, a monitor must be created using the Health Checks service first. For more information on how to create a monitor, please see Managing Health Checks.

    rules SteeringPolicyRule[]

    The series of rules that will be processed in sequence to reduce the pool of answers to a response for any given request.

    The first rule receives a shuffled list of all answers, and every other rule receives the list of answers emitted by the one preceding it. The last rule populates the response.

    ttl number

    (Updatable) The Time To Live (TTL) for responses from the steering policy, in seconds. If not specified during creation, a value of 30 seconds will be used.

    ** 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

    compartment_id str
    (Updatable) The OCID of the compartment containing the steering policy.
    display_name str
    (Updatable) A user-friendly name for the steering policy. Does not have to be unique and can be changed. Avoid entering confidential information.
    template str

    (Updatable) A set of predefined rules based on the desired purpose of the steering policy. Each template utilizes Traffic Management's rules in a different order to produce the desired results when answering DNS queries.

    Example: The FAILOVER template determines answers by filtering the policy's answers using the FILTER rule first, then the following rules in succession: HEALTH, PRIORITY, and LIMIT. This gives the domain dynamic failover capability.

    It is strongly recommended to use a template other than CUSTOM when creating a steering policy.

    All templates require the rule order to begin with an unconditional FILTER rule that keeps answers contingent upon answer.isDisabled != true, except for CUSTOM. A defined HEALTH rule must follow the FILTER rule if the policy references a healthCheckMonitorId. The last rule of a template must must be a LIMIT rule. For more information about templates and code examples, see Traffic Management API Guide.

    Template Types

    answers SteeringPolicyAnswerArgs]
    The set of all answers that can potentially issue from the steering policy.
    defined_tags Mapping[str, Any]
    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
    freeform_tags Mapping[str, Any]
    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags.
    health_check_monitor_id str

    (Updatable) The OCID of the health check monitor providing health data about the answers of the steering policy. A steering policy answer with rdata matching a monitored endpoint will use the health data of that endpoint. A steering policy answer with rdata not matching any monitored endpoint will be assumed healthy.

    Note: To use the Health Check monitoring feature in a steering policy, a monitor must be created using the Health Checks service first. For more information on how to create a monitor, please see Managing Health Checks.

    rules SteeringPolicyRuleArgs]

    The series of rules that will be processed in sequence to reduce the pool of answers to a response for any given request.

    The first rule receives a shuffled list of all answers, and every other rule receives the list of answers emitted by the one preceding it. The last rule populates the response.

    ttl int

    (Updatable) The Time To Live (TTL) for responses from the steering policy, in seconds. If not specified during creation, a value of 30 seconds will be used.

    ** 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

    compartmentId String
    (Updatable) The OCID of the compartment containing the steering policy.
    displayName String
    (Updatable) A user-friendly name for the steering policy. Does not have to be unique and can be changed. Avoid entering confidential information.
    template String

    (Updatable) A set of predefined rules based on the desired purpose of the steering policy. Each template utilizes Traffic Management's rules in a different order to produce the desired results when answering DNS queries.

    Example: The FAILOVER template determines answers by filtering the policy's answers using the FILTER rule first, then the following rules in succession: HEALTH, PRIORITY, and LIMIT. This gives the domain dynamic failover capability.

    It is strongly recommended to use a template other than CUSTOM when creating a steering policy.

    All templates require the rule order to begin with an unconditional FILTER rule that keeps answers contingent upon answer.isDisabled != true, except for CUSTOM. A defined HEALTH rule must follow the FILTER rule if the policy references a healthCheckMonitorId. The last rule of a template must must be a LIMIT rule. For more information about templates and code examples, see Traffic Management API Guide.

    Template Types

    answers List<Property Map>
    The set of all answers that can potentially issue from the steering policy.
    definedTags Map<Any>
    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
    freeformTags Map<Any>
    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags.
    healthCheckMonitorId String

    (Updatable) The OCID of the health check monitor providing health data about the answers of the steering policy. A steering policy answer with rdata matching a monitored endpoint will use the health data of that endpoint. A steering policy answer with rdata not matching any monitored endpoint will be assumed healthy.

    Note: To use the Health Check monitoring feature in a steering policy, a monitor must be created using the Health Checks service first. For more information on how to create a monitor, please see Managing Health Checks.

    rules List<Property Map>

    The series of rules that will be processed in sequence to reduce the pool of answers to a response for any given request.

    The first rule receives a shuffled list of all answers, and every other rule receives the list of answers emitted by the one preceding it. The last rule populates the response.

    ttl Number

    (Updatable) The Time To Live (TTL) for responses from the steering policy, in seconds. If not specified during creation, a value of 30 seconds will be used.

    ** 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

    Outputs

    All input properties are implicitly available as output properties. Additionally, the SteeringPolicy resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Self string
    The canonical absolute URL of the resource.
    State string
    The current state of the resource.
    TimeCreated string
    The date and time the resource was created, expressed in RFC 3339 timestamp format.
    Id string
    The provider-assigned unique ID for this managed resource.
    Self string
    The canonical absolute URL of the resource.
    State string
    The current state of the resource.
    TimeCreated string
    The date and time the resource was created, expressed in RFC 3339 timestamp format.
    id String
    The provider-assigned unique ID for this managed resource.
    self String
    The canonical absolute URL of the resource.
    state String
    The current state of the resource.
    timeCreated String
    The date and time the resource was created, expressed in RFC 3339 timestamp format.
    id string
    The provider-assigned unique ID for this managed resource.
    self string
    The canonical absolute URL of the resource.
    state string
    The current state of the resource.
    timeCreated string
    The date and time the resource was created, expressed in RFC 3339 timestamp format.
    id str
    The provider-assigned unique ID for this managed resource.
    self str
    The canonical absolute URL of the resource.
    state str
    The current state of the resource.
    time_created str
    The date and time the resource was created, expressed in RFC 3339 timestamp format.
    id String
    The provider-assigned unique ID for this managed resource.
    self String
    The canonical absolute URL of the resource.
    state String
    The current state of the resource.
    timeCreated String
    The date and time the resource was created, expressed in RFC 3339 timestamp format.

    Look up Existing SteeringPolicy Resource

    Get an existing SteeringPolicy resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: SteeringPolicyState, opts?: CustomResourceOptions): SteeringPolicy
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            answers: Optional[Sequence[_dns.SteeringPolicyAnswerArgs]] = None,
            compartment_id: Optional[str] = None,
            defined_tags: Optional[Mapping[str, Any]] = None,
            display_name: Optional[str] = None,
            freeform_tags: Optional[Mapping[str, Any]] = None,
            health_check_monitor_id: Optional[str] = None,
            rules: Optional[Sequence[_dns.SteeringPolicyRuleArgs]] = None,
            self: Optional[str] = None,
            state: Optional[str] = None,
            template: Optional[str] = None,
            time_created: Optional[str] = None,
            ttl: Optional[int] = None) -> SteeringPolicy
    func GetSteeringPolicy(ctx *Context, name string, id IDInput, state *SteeringPolicyState, opts ...ResourceOption) (*SteeringPolicy, error)
    public static SteeringPolicy Get(string name, Input<string> id, SteeringPolicyState? state, CustomResourceOptions? opts = null)
    public static SteeringPolicy get(String name, Output<String> id, SteeringPolicyState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    Answers List<SteeringPolicyAnswer>
    The set of all answers that can potentially issue from the steering policy.
    CompartmentId string
    (Updatable) The OCID of the compartment containing the steering policy.
    DefinedTags Dictionary<string, object>
    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
    DisplayName string
    (Updatable) A user-friendly name for the steering policy. Does not have to be unique and can be changed. Avoid entering confidential information.
    FreeformTags Dictionary<string, object>
    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags.
    HealthCheckMonitorId string

    (Updatable) The OCID of the health check monitor providing health data about the answers of the steering policy. A steering policy answer with rdata matching a monitored endpoint will use the health data of that endpoint. A steering policy answer with rdata not matching any monitored endpoint will be assumed healthy.

    Note: To use the Health Check monitoring feature in a steering policy, a monitor must be created using the Health Checks service first. For more information on how to create a monitor, please see Managing Health Checks.

    Rules List<SteeringPolicyRule>

    The series of rules that will be processed in sequence to reduce the pool of answers to a response for any given request.

    The first rule receives a shuffled list of all answers, and every other rule receives the list of answers emitted by the one preceding it. The last rule populates the response.

    Self string
    The canonical absolute URL of the resource.
    State string
    The current state of the resource.
    Template string

    (Updatable) A set of predefined rules based on the desired purpose of the steering policy. Each template utilizes Traffic Management's rules in a different order to produce the desired results when answering DNS queries.

    Example: The FAILOVER template determines answers by filtering the policy's answers using the FILTER rule first, then the following rules in succession: HEALTH, PRIORITY, and LIMIT. This gives the domain dynamic failover capability.

    It is strongly recommended to use a template other than CUSTOM when creating a steering policy.

    All templates require the rule order to begin with an unconditional FILTER rule that keeps answers contingent upon answer.isDisabled != true, except for CUSTOM. A defined HEALTH rule must follow the FILTER rule if the policy references a healthCheckMonitorId. The last rule of a template must must be a LIMIT rule. For more information about templates and code examples, see Traffic Management API Guide.

    Template Types

    TimeCreated string
    The date and time the resource was created, expressed in RFC 3339 timestamp format.
    Ttl int

    (Updatable) The Time To Live (TTL) for responses from the steering policy, in seconds. If not specified during creation, a value of 30 seconds will be used.

    ** 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

    Answers []SteeringPolicyAnswerArgs
    The set of all answers that can potentially issue from the steering policy.
    CompartmentId string
    (Updatable) The OCID of the compartment containing the steering policy.
    DefinedTags map[string]interface{}
    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
    DisplayName string
    (Updatable) A user-friendly name for the steering policy. Does not have to be unique and can be changed. Avoid entering confidential information.
    FreeformTags map[string]interface{}
    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags.
    HealthCheckMonitorId string

    (Updatable) The OCID of the health check monitor providing health data about the answers of the steering policy. A steering policy answer with rdata matching a monitored endpoint will use the health data of that endpoint. A steering policy answer with rdata not matching any monitored endpoint will be assumed healthy.

    Note: To use the Health Check monitoring feature in a steering policy, a monitor must be created using the Health Checks service first. For more information on how to create a monitor, please see Managing Health Checks.

    Rules []SteeringPolicyRuleArgs

    The series of rules that will be processed in sequence to reduce the pool of answers to a response for any given request.

    The first rule receives a shuffled list of all answers, and every other rule receives the list of answers emitted by the one preceding it. The last rule populates the response.

    Self string
    The canonical absolute URL of the resource.
    State string
    The current state of the resource.
    Template string

    (Updatable) A set of predefined rules based on the desired purpose of the steering policy. Each template utilizes Traffic Management's rules in a different order to produce the desired results when answering DNS queries.

    Example: The FAILOVER template determines answers by filtering the policy's answers using the FILTER rule first, then the following rules in succession: HEALTH, PRIORITY, and LIMIT. This gives the domain dynamic failover capability.

    It is strongly recommended to use a template other than CUSTOM when creating a steering policy.

    All templates require the rule order to begin with an unconditional FILTER rule that keeps answers contingent upon answer.isDisabled != true, except for CUSTOM. A defined HEALTH rule must follow the FILTER rule if the policy references a healthCheckMonitorId. The last rule of a template must must be a LIMIT rule. For more information about templates and code examples, see Traffic Management API Guide.

    Template Types

    TimeCreated string
    The date and time the resource was created, expressed in RFC 3339 timestamp format.
    Ttl int

    (Updatable) The Time To Live (TTL) for responses from the steering policy, in seconds. If not specified during creation, a value of 30 seconds will be used.

    ** 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

    answers List<SteeringPolicyAnswer>
    The set of all answers that can potentially issue from the steering policy.
    compartmentId String
    (Updatable) The OCID of the compartment containing the steering policy.
    definedTags Map<String,Object>
    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
    displayName String
    (Updatable) A user-friendly name for the steering policy. Does not have to be unique and can be changed. Avoid entering confidential information.
    freeformTags Map<String,Object>
    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags.
    healthCheckMonitorId String

    (Updatable) The OCID of the health check monitor providing health data about the answers of the steering policy. A steering policy answer with rdata matching a monitored endpoint will use the health data of that endpoint. A steering policy answer with rdata not matching any monitored endpoint will be assumed healthy.

    Note: To use the Health Check monitoring feature in a steering policy, a monitor must be created using the Health Checks service first. For more information on how to create a monitor, please see Managing Health Checks.

    rules List<SteeringPolicyRule>

    The series of rules that will be processed in sequence to reduce the pool of answers to a response for any given request.

    The first rule receives a shuffled list of all answers, and every other rule receives the list of answers emitted by the one preceding it. The last rule populates the response.

    self String
    The canonical absolute URL of the resource.
    state String
    The current state of the resource.
    template String

    (Updatable) A set of predefined rules based on the desired purpose of the steering policy. Each template utilizes Traffic Management's rules in a different order to produce the desired results when answering DNS queries.

    Example: The FAILOVER template determines answers by filtering the policy's answers using the FILTER rule first, then the following rules in succession: HEALTH, PRIORITY, and LIMIT. This gives the domain dynamic failover capability.

    It is strongly recommended to use a template other than CUSTOM when creating a steering policy.

    All templates require the rule order to begin with an unconditional FILTER rule that keeps answers contingent upon answer.isDisabled != true, except for CUSTOM. A defined HEALTH rule must follow the FILTER rule if the policy references a healthCheckMonitorId. The last rule of a template must must be a LIMIT rule. For more information about templates and code examples, see Traffic Management API Guide.

    Template Types

    timeCreated String
    The date and time the resource was created, expressed in RFC 3339 timestamp format.
    ttl Integer

    (Updatable) The Time To Live (TTL) for responses from the steering policy, in seconds. If not specified during creation, a value of 30 seconds will be used.

    ** 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

    answers SteeringPolicyAnswer[]
    The set of all answers that can potentially issue from the steering policy.
    compartmentId string
    (Updatable) The OCID of the compartment containing the steering policy.
    definedTags {[key: string]: any}
    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
    displayName string
    (Updatable) A user-friendly name for the steering policy. Does not have to be unique and can be changed. Avoid entering confidential information.
    freeformTags {[key: string]: any}
    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags.
    healthCheckMonitorId string

    (Updatable) The OCID of the health check monitor providing health data about the answers of the steering policy. A steering policy answer with rdata matching a monitored endpoint will use the health data of that endpoint. A steering policy answer with rdata not matching any monitored endpoint will be assumed healthy.

    Note: To use the Health Check monitoring feature in a steering policy, a monitor must be created using the Health Checks service first. For more information on how to create a monitor, please see Managing Health Checks.

    rules SteeringPolicyRule[]

    The series of rules that will be processed in sequence to reduce the pool of answers to a response for any given request.

    The first rule receives a shuffled list of all answers, and every other rule receives the list of answers emitted by the one preceding it. The last rule populates the response.

    self string
    The canonical absolute URL of the resource.
    state string
    The current state of the resource.
    template string

    (Updatable) A set of predefined rules based on the desired purpose of the steering policy. Each template utilizes Traffic Management's rules in a different order to produce the desired results when answering DNS queries.

    Example: The FAILOVER template determines answers by filtering the policy's answers using the FILTER rule first, then the following rules in succession: HEALTH, PRIORITY, and LIMIT. This gives the domain dynamic failover capability.

    It is strongly recommended to use a template other than CUSTOM when creating a steering policy.

    All templates require the rule order to begin with an unconditional FILTER rule that keeps answers contingent upon answer.isDisabled != true, except for CUSTOM. A defined HEALTH rule must follow the FILTER rule if the policy references a healthCheckMonitorId. The last rule of a template must must be a LIMIT rule. For more information about templates and code examples, see Traffic Management API Guide.

    Template Types

    timeCreated string
    The date and time the resource was created, expressed in RFC 3339 timestamp format.
    ttl number

    (Updatable) The Time To Live (TTL) for responses from the steering policy, in seconds. If not specified during creation, a value of 30 seconds will be used.

    ** 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

    answers SteeringPolicyAnswerArgs]
    The set of all answers that can potentially issue from the steering policy.
    compartment_id str
    (Updatable) The OCID of the compartment containing the steering policy.
    defined_tags Mapping[str, Any]
    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
    display_name str
    (Updatable) A user-friendly name for the steering policy. Does not have to be unique and can be changed. Avoid entering confidential information.
    freeform_tags Mapping[str, Any]
    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags.
    health_check_monitor_id str

    (Updatable) The OCID of the health check monitor providing health data about the answers of the steering policy. A steering policy answer with rdata matching a monitored endpoint will use the health data of that endpoint. A steering policy answer with rdata not matching any monitored endpoint will be assumed healthy.

    Note: To use the Health Check monitoring feature in a steering policy, a monitor must be created using the Health Checks service first. For more information on how to create a monitor, please see Managing Health Checks.

    rules SteeringPolicyRuleArgs]

    The series of rules that will be processed in sequence to reduce the pool of answers to a response for any given request.

    The first rule receives a shuffled list of all answers, and every other rule receives the list of answers emitted by the one preceding it. The last rule populates the response.

    self str
    The canonical absolute URL of the resource.
    state str
    The current state of the resource.
    template str

    (Updatable) A set of predefined rules based on the desired purpose of the steering policy. Each template utilizes Traffic Management's rules in a different order to produce the desired results when answering DNS queries.

    Example: The FAILOVER template determines answers by filtering the policy's answers using the FILTER rule first, then the following rules in succession: HEALTH, PRIORITY, and LIMIT. This gives the domain dynamic failover capability.

    It is strongly recommended to use a template other than CUSTOM when creating a steering policy.

    All templates require the rule order to begin with an unconditional FILTER rule that keeps answers contingent upon answer.isDisabled != true, except for CUSTOM. A defined HEALTH rule must follow the FILTER rule if the policy references a healthCheckMonitorId. The last rule of a template must must be a LIMIT rule. For more information about templates and code examples, see Traffic Management API Guide.

    Template Types

    time_created str
    The date and time the resource was created, expressed in RFC 3339 timestamp format.
    ttl int

    (Updatable) The Time To Live (TTL) for responses from the steering policy, in seconds. If not specified during creation, a value of 30 seconds will be used.

    ** 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

    answers List<Property Map>
    The set of all answers that can potentially issue from the steering policy.
    compartmentId String
    (Updatable) The OCID of the compartment containing the steering policy.
    definedTags Map<Any>
    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
    displayName String
    (Updatable) A user-friendly name for the steering policy. Does not have to be unique and can be changed. Avoid entering confidential information.
    freeformTags Map<Any>
    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags.
    healthCheckMonitorId String

    (Updatable) The OCID of the health check monitor providing health data about the answers of the steering policy. A steering policy answer with rdata matching a monitored endpoint will use the health data of that endpoint. A steering policy answer with rdata not matching any monitored endpoint will be assumed healthy.

    Note: To use the Health Check monitoring feature in a steering policy, a monitor must be created using the Health Checks service first. For more information on how to create a monitor, please see Managing Health Checks.

    rules List<Property Map>

    The series of rules that will be processed in sequence to reduce the pool of answers to a response for any given request.

    The first rule receives a shuffled list of all answers, and every other rule receives the list of answers emitted by the one preceding it. The last rule populates the response.

    self String
    The canonical absolute URL of the resource.
    state String
    The current state of the resource.
    template String

    (Updatable) A set of predefined rules based on the desired purpose of the steering policy. Each template utilizes Traffic Management's rules in a different order to produce the desired results when answering DNS queries.

    Example: The FAILOVER template determines answers by filtering the policy's answers using the FILTER rule first, then the following rules in succession: HEALTH, PRIORITY, and LIMIT. This gives the domain dynamic failover capability.

    It is strongly recommended to use a template other than CUSTOM when creating a steering policy.

    All templates require the rule order to begin with an unconditional FILTER rule that keeps answers contingent upon answer.isDisabled != true, except for CUSTOM. A defined HEALTH rule must follow the FILTER rule if the policy references a healthCheckMonitorId. The last rule of a template must must be a LIMIT rule. For more information about templates and code examples, see Traffic Management API Guide.

    Template Types

    timeCreated String
    The date and time the resource was created, expressed in RFC 3339 timestamp format.
    ttl Number

    (Updatable) The Time To Live (TTL) for responses from the steering policy, in seconds. If not specified during creation, a value of 30 seconds will be used.

    ** 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

    Supporting Types

    SteeringPolicyAnswer, SteeringPolicyAnswerArgs

    Name string
    A user-friendly name for the answer, unique within the steering policy. An answer's name property can be referenced in answerCondition properties of rules using answer.name.
    Rdata string
    The record's data, as whitespace-delimited tokens in type-specific presentation format. All RDATA is normalized and the returned presentation of your RDATA may differ from its initial input. For more information about RDATA, see Supported DNS Resource Record Types.
    Rtype string
    The type of DNS record, such as A or CNAME. Only A, AAAA, and CNAME are supported. For more information, see Supported DNS Resource Record Types.
    IsDisabled bool
    Set this property to true to indicate that the answer is administratively disabled, such as when the corresponding server is down for maintenance. An answer's isDisabled property can be referenced in answerCondition properties in rules using answer.isDisabled.
    Pool string
    The freeform name of a group of one or more records in which this record is included, such as "LAX data center". An answer's pool property can be referenced in answerCondition properties of rules using answer.pool.
    Name string
    A user-friendly name for the answer, unique within the steering policy. An answer's name property can be referenced in answerCondition properties of rules using answer.name.
    Rdata string
    The record's data, as whitespace-delimited tokens in type-specific presentation format. All RDATA is normalized and the returned presentation of your RDATA may differ from its initial input. For more information about RDATA, see Supported DNS Resource Record Types.
    Rtype string
    The type of DNS record, such as A or CNAME. Only A, AAAA, and CNAME are supported. For more information, see Supported DNS Resource Record Types.
    IsDisabled bool
    Set this property to true to indicate that the answer is administratively disabled, such as when the corresponding server is down for maintenance. An answer's isDisabled property can be referenced in answerCondition properties in rules using answer.isDisabled.
    Pool string
    The freeform name of a group of one or more records in which this record is included, such as "LAX data center". An answer's pool property can be referenced in answerCondition properties of rules using answer.pool.
    name String
    A user-friendly name for the answer, unique within the steering policy. An answer's name property can be referenced in answerCondition properties of rules using answer.name.
    rdata String
    The record's data, as whitespace-delimited tokens in type-specific presentation format. All RDATA is normalized and the returned presentation of your RDATA may differ from its initial input. For more information about RDATA, see Supported DNS Resource Record Types.
    rtype String
    The type of DNS record, such as A or CNAME. Only A, AAAA, and CNAME are supported. For more information, see Supported DNS Resource Record Types.
    isDisabled Boolean
    Set this property to true to indicate that the answer is administratively disabled, such as when the corresponding server is down for maintenance. An answer's isDisabled property can be referenced in answerCondition properties in rules using answer.isDisabled.
    pool String
    The freeform name of a group of one or more records in which this record is included, such as "LAX data center". An answer's pool property can be referenced in answerCondition properties of rules using answer.pool.
    name string
    A user-friendly name for the answer, unique within the steering policy. An answer's name property can be referenced in answerCondition properties of rules using answer.name.
    rdata string
    The record's data, as whitespace-delimited tokens in type-specific presentation format. All RDATA is normalized and the returned presentation of your RDATA may differ from its initial input. For more information about RDATA, see Supported DNS Resource Record Types.
    rtype string
    The type of DNS record, such as A or CNAME. Only A, AAAA, and CNAME are supported. For more information, see Supported DNS Resource Record Types.
    isDisabled boolean
    Set this property to true to indicate that the answer is administratively disabled, such as when the corresponding server is down for maintenance. An answer's isDisabled property can be referenced in answerCondition properties in rules using answer.isDisabled.
    pool string
    The freeform name of a group of one or more records in which this record is included, such as "LAX data center". An answer's pool property can be referenced in answerCondition properties of rules using answer.pool.
    name str
    A user-friendly name for the answer, unique within the steering policy. An answer's name property can be referenced in answerCondition properties of rules using answer.name.
    rdata str
    The record's data, as whitespace-delimited tokens in type-specific presentation format. All RDATA is normalized and the returned presentation of your RDATA may differ from its initial input. For more information about RDATA, see Supported DNS Resource Record Types.
    rtype str
    The type of DNS record, such as A or CNAME. Only A, AAAA, and CNAME are supported. For more information, see Supported DNS Resource Record Types.
    is_disabled bool
    Set this property to true to indicate that the answer is administratively disabled, such as when the corresponding server is down for maintenance. An answer's isDisabled property can be referenced in answerCondition properties in rules using answer.isDisabled.
    pool str
    The freeform name of a group of one or more records in which this record is included, such as "LAX data center". An answer's pool property can be referenced in answerCondition properties of rules using answer.pool.
    name String
    A user-friendly name for the answer, unique within the steering policy. An answer's name property can be referenced in answerCondition properties of rules using answer.name.
    rdata String
    The record's data, as whitespace-delimited tokens in type-specific presentation format. All RDATA is normalized and the returned presentation of your RDATA may differ from its initial input. For more information about RDATA, see Supported DNS Resource Record Types.
    rtype String
    The type of DNS record, such as A or CNAME. Only A, AAAA, and CNAME are supported. For more information, see Supported DNS Resource Record Types.
    isDisabled Boolean
    Set this property to true to indicate that the answer is administratively disabled, such as when the corresponding server is down for maintenance. An answer's isDisabled property can be referenced in answerCondition properties in rules using answer.isDisabled.
    pool String
    The freeform name of a group of one or more records in which this record is included, such as "LAX data center". An answer's pool property can be referenced in answerCondition properties of rules using answer.pool.

    SteeringPolicyRule, SteeringPolicyRuleArgs

    RuleType string
    The type of a rule determines its sorting/filtering behavior.
    Cases List<SteeringPolicyRuleCase>
    An array of caseConditions. A rule may optionally include a sequence of cases defining alternate configurations for how it should behave during processing for any given DNS query. When a rule has no sequence of cases, it is always evaluated with the same configuration during processing. When a rule has an empty sequence of cases, it is always ignored during processing. When a rule has a non-empty sequence of cases, its behavior during processing is configured by the first matching case in the sequence. When a rule has no matching cases the rule is ignored. A rule case with no caseCondition always matches. A rule case with a caseCondition matches only when that expression evaluates to true for the given query.
    DefaultAnswerDatas List<SteeringPolicyRuleDefaultAnswerData>
    Defines a default set of answer conditions and values that are applied to an answer when cases is not defined for the rule, or a matching case does not have any matching answerConditions in its answerData. defaultAnswerData is not applied if cases is defined and there are no matching cases. In this scenario, the next rule will be processed.
    DefaultCount int
    Defines a default count if cases is not defined for the rule or a matching case does not define count. defaultCount is not applied if cases is defined and there are no matching cases. In this scenario, the next rule will be processed. If no rules remain to be processed, the answer will be chosen from the remaining list of answers.
    Description string
    A user-defined description of the rule's purpose or behavior.
    RuleType string
    The type of a rule determines its sorting/filtering behavior.
    Cases []SteeringPolicyRuleCase
    An array of caseConditions. A rule may optionally include a sequence of cases defining alternate configurations for how it should behave during processing for any given DNS query. When a rule has no sequence of cases, it is always evaluated with the same configuration during processing. When a rule has an empty sequence of cases, it is always ignored during processing. When a rule has a non-empty sequence of cases, its behavior during processing is configured by the first matching case in the sequence. When a rule has no matching cases the rule is ignored. A rule case with no caseCondition always matches. A rule case with a caseCondition matches only when that expression evaluates to true for the given query.
    DefaultAnswerDatas []SteeringPolicyRuleDefaultAnswerData
    Defines a default set of answer conditions and values that are applied to an answer when cases is not defined for the rule, or a matching case does not have any matching answerConditions in its answerData. defaultAnswerData is not applied if cases is defined and there are no matching cases. In this scenario, the next rule will be processed.
    DefaultCount int
    Defines a default count if cases is not defined for the rule or a matching case does not define count. defaultCount is not applied if cases is defined and there are no matching cases. In this scenario, the next rule will be processed. If no rules remain to be processed, the answer will be chosen from the remaining list of answers.
    Description string
    A user-defined description of the rule's purpose or behavior.
    ruleType String
    The type of a rule determines its sorting/filtering behavior.
    cases List<SteeringPolicyRuleCase>
    An array of caseConditions. A rule may optionally include a sequence of cases defining alternate configurations for how it should behave during processing for any given DNS query. When a rule has no sequence of cases, it is always evaluated with the same configuration during processing. When a rule has an empty sequence of cases, it is always ignored during processing. When a rule has a non-empty sequence of cases, its behavior during processing is configured by the first matching case in the sequence. When a rule has no matching cases the rule is ignored. A rule case with no caseCondition always matches. A rule case with a caseCondition matches only when that expression evaluates to true for the given query.
    defaultAnswerDatas List<SteeringPolicyRuleDefaultAnswerData>
    Defines a default set of answer conditions and values that are applied to an answer when cases is not defined for the rule, or a matching case does not have any matching answerConditions in its answerData. defaultAnswerData is not applied if cases is defined and there are no matching cases. In this scenario, the next rule will be processed.
    defaultCount Integer
    Defines a default count if cases is not defined for the rule or a matching case does not define count. defaultCount is not applied if cases is defined and there are no matching cases. In this scenario, the next rule will be processed. If no rules remain to be processed, the answer will be chosen from the remaining list of answers.
    description String
    A user-defined description of the rule's purpose or behavior.
    ruleType string
    The type of a rule determines its sorting/filtering behavior.
    cases SteeringPolicyRuleCase[]
    An array of caseConditions. A rule may optionally include a sequence of cases defining alternate configurations for how it should behave during processing for any given DNS query. When a rule has no sequence of cases, it is always evaluated with the same configuration during processing. When a rule has an empty sequence of cases, it is always ignored during processing. When a rule has a non-empty sequence of cases, its behavior during processing is configured by the first matching case in the sequence. When a rule has no matching cases the rule is ignored. A rule case with no caseCondition always matches. A rule case with a caseCondition matches only when that expression evaluates to true for the given query.
    defaultAnswerDatas SteeringPolicyRuleDefaultAnswerData[]
    Defines a default set of answer conditions and values that are applied to an answer when cases is not defined for the rule, or a matching case does not have any matching answerConditions in its answerData. defaultAnswerData is not applied if cases is defined and there are no matching cases. In this scenario, the next rule will be processed.
    defaultCount number
    Defines a default count if cases is not defined for the rule or a matching case does not define count. defaultCount is not applied if cases is defined and there are no matching cases. In this scenario, the next rule will be processed. If no rules remain to be processed, the answer will be chosen from the remaining list of answers.
    description string
    A user-defined description of the rule's purpose or behavior.
    rule_type str
    The type of a rule determines its sorting/filtering behavior.
    cases SteeringPolicyRuleCase]
    An array of caseConditions. A rule may optionally include a sequence of cases defining alternate configurations for how it should behave during processing for any given DNS query. When a rule has no sequence of cases, it is always evaluated with the same configuration during processing. When a rule has an empty sequence of cases, it is always ignored during processing. When a rule has a non-empty sequence of cases, its behavior during processing is configured by the first matching case in the sequence. When a rule has no matching cases the rule is ignored. A rule case with no caseCondition always matches. A rule case with a caseCondition matches only when that expression evaluates to true for the given query.
    default_answer_datas SteeringPolicyRuleDefaultAnswerData]
    Defines a default set of answer conditions and values that are applied to an answer when cases is not defined for the rule, or a matching case does not have any matching answerConditions in its answerData. defaultAnswerData is not applied if cases is defined and there are no matching cases. In this scenario, the next rule will be processed.
    default_count int
    Defines a default count if cases is not defined for the rule or a matching case does not define count. defaultCount is not applied if cases is defined and there are no matching cases. In this scenario, the next rule will be processed. If no rules remain to be processed, the answer will be chosen from the remaining list of answers.
    description str
    A user-defined description of the rule's purpose or behavior.
    ruleType String
    The type of a rule determines its sorting/filtering behavior.
    cases List<Property Map>
    An array of caseConditions. A rule may optionally include a sequence of cases defining alternate configurations for how it should behave during processing for any given DNS query. When a rule has no sequence of cases, it is always evaluated with the same configuration during processing. When a rule has an empty sequence of cases, it is always ignored during processing. When a rule has a non-empty sequence of cases, its behavior during processing is configured by the first matching case in the sequence. When a rule has no matching cases the rule is ignored. A rule case with no caseCondition always matches. A rule case with a caseCondition matches only when that expression evaluates to true for the given query.
    defaultAnswerDatas List<Property Map>
    Defines a default set of answer conditions and values that are applied to an answer when cases is not defined for the rule, or a matching case does not have any matching answerConditions in its answerData. defaultAnswerData is not applied if cases is defined and there are no matching cases. In this scenario, the next rule will be processed.
    defaultCount Number
    Defines a default count if cases is not defined for the rule or a matching case does not define count. defaultCount is not applied if cases is defined and there are no matching cases. In this scenario, the next rule will be processed. If no rules remain to be processed, the answer will be chosen from the remaining list of answers.
    description String
    A user-defined description of the rule's purpose or behavior.

    SteeringPolicyRuleCase, SteeringPolicyRuleCaseArgs

    AnswerDatas List<SteeringPolicyRuleCaseAnswerData>
    An array of SteeringPolicyPriorityAnswerData objects.
    CaseCondition string
    An expression that uses conditions at the time of a DNS query to indicate whether a case matches. Conditions may include the geographical location, IP subnet, or ASN the DNS query originated. Example: If you have an office that uses the subnet 192.0.2.0/24 you could use a caseCondition expression query.client.subnet in ('192.0.2.0/24') to define a case that matches queries from that office.
    Count int
    The number of answers allowed to remain after the limit rule has been processed, keeping only the first of the remaining answers in the list. Example: If the count property is set to 2 and four answers remain before the limit rule is processed, only the first two answers in the list will remain after the limit rule has been processed.
    AnswerDatas []SteeringPolicyRuleCaseAnswerData
    An array of SteeringPolicyPriorityAnswerData objects.
    CaseCondition string
    An expression that uses conditions at the time of a DNS query to indicate whether a case matches. Conditions may include the geographical location, IP subnet, or ASN the DNS query originated. Example: If you have an office that uses the subnet 192.0.2.0/24 you could use a caseCondition expression query.client.subnet in ('192.0.2.0/24') to define a case that matches queries from that office.
    Count int
    The number of answers allowed to remain after the limit rule has been processed, keeping only the first of the remaining answers in the list. Example: If the count property is set to 2 and four answers remain before the limit rule is processed, only the first two answers in the list will remain after the limit rule has been processed.
    answerDatas List<SteeringPolicyRuleCaseAnswerData>
    An array of SteeringPolicyPriorityAnswerData objects.
    caseCondition String
    An expression that uses conditions at the time of a DNS query to indicate whether a case matches. Conditions may include the geographical location, IP subnet, or ASN the DNS query originated. Example: If you have an office that uses the subnet 192.0.2.0/24 you could use a caseCondition expression query.client.subnet in ('192.0.2.0/24') to define a case that matches queries from that office.
    count Integer
    The number of answers allowed to remain after the limit rule has been processed, keeping only the first of the remaining answers in the list. Example: If the count property is set to 2 and four answers remain before the limit rule is processed, only the first two answers in the list will remain after the limit rule has been processed.
    answerDatas SteeringPolicyRuleCaseAnswerData[]
    An array of SteeringPolicyPriorityAnswerData objects.
    caseCondition string
    An expression that uses conditions at the time of a DNS query to indicate whether a case matches. Conditions may include the geographical location, IP subnet, or ASN the DNS query originated. Example: If you have an office that uses the subnet 192.0.2.0/24 you could use a caseCondition expression query.client.subnet in ('192.0.2.0/24') to define a case that matches queries from that office.
    count number
    The number of answers allowed to remain after the limit rule has been processed, keeping only the first of the remaining answers in the list. Example: If the count property is set to 2 and four answers remain before the limit rule is processed, only the first two answers in the list will remain after the limit rule has been processed.
    answer_datas SteeringPolicyRuleCaseAnswerData]
    An array of SteeringPolicyPriorityAnswerData objects.
    case_condition str
    An expression that uses conditions at the time of a DNS query to indicate whether a case matches. Conditions may include the geographical location, IP subnet, or ASN the DNS query originated. Example: If you have an office that uses the subnet 192.0.2.0/24 you could use a caseCondition expression query.client.subnet in ('192.0.2.0/24') to define a case that matches queries from that office.
    count int
    The number of answers allowed to remain after the limit rule has been processed, keeping only the first of the remaining answers in the list. Example: If the count property is set to 2 and four answers remain before the limit rule is processed, only the first two answers in the list will remain after the limit rule has been processed.
    answerDatas List<Property Map>
    An array of SteeringPolicyPriorityAnswerData objects.
    caseCondition String
    An expression that uses conditions at the time of a DNS query to indicate whether a case matches. Conditions may include the geographical location, IP subnet, or ASN the DNS query originated. Example: If you have an office that uses the subnet 192.0.2.0/24 you could use a caseCondition expression query.client.subnet in ('192.0.2.0/24') to define a case that matches queries from that office.
    count Number
    The number of answers allowed to remain after the limit rule has been processed, keeping only the first of the remaining answers in the list. Example: If the count property is set to 2 and four answers remain before the limit rule is processed, only the first two answers in the list will remain after the limit rule has been processed.

    SteeringPolicyRuleCaseAnswerData, SteeringPolicyRuleCaseAnswerDataArgs

    AnswerCondition string
    An expression that is used to select a set of answers that match a condition. For example, answers with matching pool properties.
    ShouldKeep bool
    Keeps the answer only if the value is true.
    Value int
    The rank assigned to the set of answers that match the expression in answerCondition. Answers with the lowest values move to the beginning of the list without changing the relative order of those with the same value. Answers can be given a value between 0 and 255.
    AnswerCondition string
    An expression that is used to select a set of answers that match a condition. For example, answers with matching pool properties.
    ShouldKeep bool
    Keeps the answer only if the value is true.
    Value int
    The rank assigned to the set of answers that match the expression in answerCondition. Answers with the lowest values move to the beginning of the list without changing the relative order of those with the same value. Answers can be given a value between 0 and 255.
    answerCondition String
    An expression that is used to select a set of answers that match a condition. For example, answers with matching pool properties.
    shouldKeep Boolean
    Keeps the answer only if the value is true.
    value Integer
    The rank assigned to the set of answers that match the expression in answerCondition. Answers with the lowest values move to the beginning of the list without changing the relative order of those with the same value. Answers can be given a value between 0 and 255.
    answerCondition string
    An expression that is used to select a set of answers that match a condition. For example, answers with matching pool properties.
    shouldKeep boolean
    Keeps the answer only if the value is true.
    value number
    The rank assigned to the set of answers that match the expression in answerCondition. Answers with the lowest values move to the beginning of the list without changing the relative order of those with the same value. Answers can be given a value between 0 and 255.
    answer_condition str
    An expression that is used to select a set of answers that match a condition. For example, answers with matching pool properties.
    should_keep bool
    Keeps the answer only if the value is true.
    value int
    The rank assigned to the set of answers that match the expression in answerCondition. Answers with the lowest values move to the beginning of the list without changing the relative order of those with the same value. Answers can be given a value between 0 and 255.
    answerCondition String
    An expression that is used to select a set of answers that match a condition. For example, answers with matching pool properties.
    shouldKeep Boolean
    Keeps the answer only if the value is true.
    value Number
    The rank assigned to the set of answers that match the expression in answerCondition. Answers with the lowest values move to the beginning of the list without changing the relative order of those with the same value. Answers can be given a value between 0 and 255.

    SteeringPolicyRuleDefaultAnswerData, SteeringPolicyRuleDefaultAnswerDataArgs

    AnswerCondition string
    An expression that is used to select a set of answers that match a condition. For example, answers with matching pool properties.
    ShouldKeep bool
    Keeps the answer only if the value is true.
    Value int
    The rank assigned to the set of answers that match the expression in answerCondition. Answers with the lowest values move to the beginning of the list without changing the relative order of those with the same value. Answers can be given a value between 0 and 255.
    AnswerCondition string
    An expression that is used to select a set of answers that match a condition. For example, answers with matching pool properties.
    ShouldKeep bool
    Keeps the answer only if the value is true.
    Value int
    The rank assigned to the set of answers that match the expression in answerCondition. Answers with the lowest values move to the beginning of the list without changing the relative order of those with the same value. Answers can be given a value between 0 and 255.
    answerCondition String
    An expression that is used to select a set of answers that match a condition. For example, answers with matching pool properties.
    shouldKeep Boolean
    Keeps the answer only if the value is true.
    value Integer
    The rank assigned to the set of answers that match the expression in answerCondition. Answers with the lowest values move to the beginning of the list without changing the relative order of those with the same value. Answers can be given a value between 0 and 255.
    answerCondition string
    An expression that is used to select a set of answers that match a condition. For example, answers with matching pool properties.
    shouldKeep boolean
    Keeps the answer only if the value is true.
    value number
    The rank assigned to the set of answers that match the expression in answerCondition. Answers with the lowest values move to the beginning of the list without changing the relative order of those with the same value. Answers can be given a value between 0 and 255.
    answer_condition str
    An expression that is used to select a set of answers that match a condition. For example, answers with matching pool properties.
    should_keep bool
    Keeps the answer only if the value is true.
    value int
    The rank assigned to the set of answers that match the expression in answerCondition. Answers with the lowest values move to the beginning of the list without changing the relative order of those with the same value. Answers can be given a value between 0 and 255.
    answerCondition String
    An expression that is used to select a set of answers that match a condition. For example, answers with matching pool properties.
    shouldKeep Boolean
    Keeps the answer only if the value is true.
    value Number
    The rank assigned to the set of answers that match the expression in answerCondition. Answers with the lowest values move to the beginning of the list without changing the relative order of those with the same value. Answers can be given a value between 0 and 255.

    Import

    SteeringPolicies can be imported using the id, e.g.

    $ pulumi import oci:Dns/steeringPolicy:SteeringPolicy test_steering_policy "id"
    

    Package Details

    Repository
    oci pulumi/pulumi-oci
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the oci Terraform Provider.
    oci logo
    Oracle Cloud Infrastructure v1.29.0 published on Thursday, Mar 28, 2024 by Pulumi