1. Packages
  2. AWS
  3. API Docs
  4. route53recoverycontrol
  5. SafetyRule
AWS v6.60.0 published on Tuesday, Nov 19, 2024 by Pulumi

aws.route53recoverycontrol.SafetyRule

Explore with Pulumi AI

aws logo
AWS v6.60.0 published on Tuesday, Nov 19, 2024 by Pulumi

    Provides an AWS Route 53 Recovery Control Config Safety Rule

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const example = new aws.route53recoverycontrol.SafetyRule("example", {
        assertedControls: [exampleAwsRoute53recoverycontrolconfigRoutingControl.arn],
        controlPanelArn: "arn:aws:route53-recovery-control::313517334327:controlpanel/abd5fbfc052d4844a082dbf400f61da8",
        name: "daisyguttridge",
        waitPeriodMs: 5000,
        ruleConfig: {
            inverted: false,
            threshold: 1,
            type: "ATLEAST",
        },
    });
    
    import pulumi
    import pulumi_aws as aws
    
    example = aws.route53recoverycontrol.SafetyRule("example",
        asserted_controls=[example_aws_route53recoverycontrolconfig_routing_control["arn"]],
        control_panel_arn="arn:aws:route53-recovery-control::313517334327:controlpanel/abd5fbfc052d4844a082dbf400f61da8",
        name="daisyguttridge",
        wait_period_ms=5000,
        rule_config={
            "inverted": False,
            "threshold": 1,
            "type": "ATLEAST",
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53recoverycontrol"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := route53recoverycontrol.NewSafetyRule(ctx, "example", &route53recoverycontrol.SafetyRuleArgs{
    			AssertedControls: pulumi.StringArray{
    				exampleAwsRoute53recoverycontrolconfigRoutingControl.Arn,
    			},
    			ControlPanelArn: pulumi.String("arn:aws:route53-recovery-control::313517334327:controlpanel/abd5fbfc052d4844a082dbf400f61da8"),
    			Name:            pulumi.String("daisyguttridge"),
    			WaitPeriodMs:    pulumi.Int(5000),
    			RuleConfig: &route53recoverycontrol.SafetyRuleRuleConfigArgs{
    				Inverted:  pulumi.Bool(false),
    				Threshold: pulumi.Int(1),
    				Type:      pulumi.String("ATLEAST"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new Aws.Route53RecoveryControl.SafetyRule("example", new()
        {
            AssertedControls = new[]
            {
                exampleAwsRoute53recoverycontrolconfigRoutingControl.Arn,
            },
            ControlPanelArn = "arn:aws:route53-recovery-control::313517334327:controlpanel/abd5fbfc052d4844a082dbf400f61da8",
            Name = "daisyguttridge",
            WaitPeriodMs = 5000,
            RuleConfig = new Aws.Route53RecoveryControl.Inputs.SafetyRuleRuleConfigArgs
            {
                Inverted = false,
                Threshold = 1,
                Type = "ATLEAST",
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.route53recoverycontrol.SafetyRule;
    import com.pulumi.aws.route53recoverycontrol.SafetyRuleArgs;
    import com.pulumi.aws.route53recoverycontrol.inputs.SafetyRuleRuleConfigArgs;
    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 example = new SafetyRule("example", SafetyRuleArgs.builder()
                .assertedControls(exampleAwsRoute53recoverycontrolconfigRoutingControl.arn())
                .controlPanelArn("arn:aws:route53-recovery-control::313517334327:controlpanel/abd5fbfc052d4844a082dbf400f61da8")
                .name("daisyguttridge")
                .waitPeriodMs(5000)
                .ruleConfig(SafetyRuleRuleConfigArgs.builder()
                    .inverted(false)
                    .threshold(1)
                    .type("ATLEAST")
                    .build())
                .build());
    
        }
    }
    
    resources:
      example:
        type: aws:route53recoverycontrol:SafetyRule
        properties:
          assertedControls:
            - ${exampleAwsRoute53recoverycontrolconfigRoutingControl.arn}
          controlPanelArn: arn:aws:route53-recovery-control::313517334327:controlpanel/abd5fbfc052d4844a082dbf400f61da8
          name: daisyguttridge
          waitPeriodMs: 5000
          ruleConfig:
            inverted: false
            threshold: 1
            type: ATLEAST
    
    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const example = new aws.route53recoverycontrol.SafetyRule("example", {
        name: "i_o",
        controlPanelArn: "arn:aws:route53-recovery-control::313517334327:controlpanel/abd5fbfc052d4844a082dbf400f61da8",
        waitPeriodMs: 5000,
        gatingControls: [exampleAwsRoute53recoverycontrolconfigRoutingControl.arn],
        targetControls: [exampleAwsRoute53recoverycontrolconfigRoutingControl.arn],
        ruleConfig: {
            inverted: false,
            threshold: 1,
            type: "ATLEAST",
        },
    });
    
    import pulumi
    import pulumi_aws as aws
    
    example = aws.route53recoverycontrol.SafetyRule("example",
        name="i_o",
        control_panel_arn="arn:aws:route53-recovery-control::313517334327:controlpanel/abd5fbfc052d4844a082dbf400f61da8",
        wait_period_ms=5000,
        gating_controls=[example_aws_route53recoverycontrolconfig_routing_control["arn"]],
        target_controls=[example_aws_route53recoverycontrolconfig_routing_control["arn"]],
        rule_config={
            "inverted": False,
            "threshold": 1,
            "type": "ATLEAST",
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53recoverycontrol"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := route53recoverycontrol.NewSafetyRule(ctx, "example", &route53recoverycontrol.SafetyRuleArgs{
    			Name:            pulumi.String("i_o"),
    			ControlPanelArn: pulumi.String("arn:aws:route53-recovery-control::313517334327:controlpanel/abd5fbfc052d4844a082dbf400f61da8"),
    			WaitPeriodMs:    pulumi.Int(5000),
    			GatingControls: pulumi.StringArray{
    				exampleAwsRoute53recoverycontrolconfigRoutingControl.Arn,
    			},
    			TargetControls: pulumi.StringArray{
    				exampleAwsRoute53recoverycontrolconfigRoutingControl.Arn,
    			},
    			RuleConfig: &route53recoverycontrol.SafetyRuleRuleConfigArgs{
    				Inverted:  pulumi.Bool(false),
    				Threshold: pulumi.Int(1),
    				Type:      pulumi.String("ATLEAST"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new Aws.Route53RecoveryControl.SafetyRule("example", new()
        {
            Name = "i_o",
            ControlPanelArn = "arn:aws:route53-recovery-control::313517334327:controlpanel/abd5fbfc052d4844a082dbf400f61da8",
            WaitPeriodMs = 5000,
            GatingControls = new[]
            {
                exampleAwsRoute53recoverycontrolconfigRoutingControl.Arn,
            },
            TargetControls = new[]
            {
                exampleAwsRoute53recoverycontrolconfigRoutingControl.Arn,
            },
            RuleConfig = new Aws.Route53RecoveryControl.Inputs.SafetyRuleRuleConfigArgs
            {
                Inverted = false,
                Threshold = 1,
                Type = "ATLEAST",
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.route53recoverycontrol.SafetyRule;
    import com.pulumi.aws.route53recoverycontrol.SafetyRuleArgs;
    import com.pulumi.aws.route53recoverycontrol.inputs.SafetyRuleRuleConfigArgs;
    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 example = new SafetyRule("example", SafetyRuleArgs.builder()
                .name("i_o")
                .controlPanelArn("arn:aws:route53-recovery-control::313517334327:controlpanel/abd5fbfc052d4844a082dbf400f61da8")
                .waitPeriodMs(5000)
                .gatingControls(exampleAwsRoute53recoverycontrolconfigRoutingControl.arn())
                .targetControls(exampleAwsRoute53recoverycontrolconfigRoutingControl.arn())
                .ruleConfig(SafetyRuleRuleConfigArgs.builder()
                    .inverted(false)
                    .threshold(1)
                    .type("ATLEAST")
                    .build())
                .build());
    
        }
    }
    
    resources:
      example:
        type: aws:route53recoverycontrol:SafetyRule
        properties:
          name: i_o
          controlPanelArn: arn:aws:route53-recovery-control::313517334327:controlpanel/abd5fbfc052d4844a082dbf400f61da8
          waitPeriodMs: 5000
          gatingControls:
            - ${exampleAwsRoute53recoverycontrolconfigRoutingControl.arn}
          targetControls:
            - ${exampleAwsRoute53recoverycontrolconfigRoutingControl.arn}
          ruleConfig:
            inverted: false
            threshold: 1
            type: ATLEAST
    

    Create SafetyRule Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new SafetyRule(name: string, args: SafetyRuleArgs, opts?: CustomResourceOptions);
    @overload
    def SafetyRule(resource_name: str,
                   args: SafetyRuleArgs,
                   opts: Optional[ResourceOptions] = None)
    
    @overload
    def SafetyRule(resource_name: str,
                   opts: Optional[ResourceOptions] = None,
                   control_panel_arn: Optional[str] = None,
                   rule_config: Optional[SafetyRuleRuleConfigArgs] = None,
                   wait_period_ms: Optional[int] = None,
                   asserted_controls: Optional[Sequence[str]] = None,
                   gating_controls: Optional[Sequence[str]] = None,
                   name: Optional[str] = None,
                   target_controls: Optional[Sequence[str]] = None)
    func NewSafetyRule(ctx *Context, name string, args SafetyRuleArgs, opts ...ResourceOption) (*SafetyRule, error)
    public SafetyRule(string name, SafetyRuleArgs args, CustomResourceOptions? opts = null)
    public SafetyRule(String name, SafetyRuleArgs args)
    public SafetyRule(String name, SafetyRuleArgs args, CustomResourceOptions options)
    
    type: aws:route53recoverycontrol:SafetyRule
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args SafetyRuleArgs
    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 SafetyRuleArgs
    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 SafetyRuleArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args SafetyRuleArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args SafetyRuleArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var safetyRuleResource = new Aws.Route53RecoveryControl.SafetyRule("safetyRuleResource", new()
    {
        ControlPanelArn = "string",
        RuleConfig = new Aws.Route53RecoveryControl.Inputs.SafetyRuleRuleConfigArgs
        {
            Inverted = false,
            Threshold = 0,
            Type = "string",
        },
        WaitPeriodMs = 0,
        AssertedControls = new[]
        {
            "string",
        },
        GatingControls = new[]
        {
            "string",
        },
        Name = "string",
        TargetControls = new[]
        {
            "string",
        },
    });
    
    example, err := route53recoverycontrol.NewSafetyRule(ctx, "safetyRuleResource", &route53recoverycontrol.SafetyRuleArgs{
    	ControlPanelArn: pulumi.String("string"),
    	RuleConfig: &route53recoverycontrol.SafetyRuleRuleConfigArgs{
    		Inverted:  pulumi.Bool(false),
    		Threshold: pulumi.Int(0),
    		Type:      pulumi.String("string"),
    	},
    	WaitPeriodMs: pulumi.Int(0),
    	AssertedControls: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	GatingControls: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	Name: pulumi.String("string"),
    	TargetControls: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    })
    
    var safetyRuleResource = new SafetyRule("safetyRuleResource", SafetyRuleArgs.builder()
        .controlPanelArn("string")
        .ruleConfig(SafetyRuleRuleConfigArgs.builder()
            .inverted(false)
            .threshold(0)
            .type("string")
            .build())
        .waitPeriodMs(0)
        .assertedControls("string")
        .gatingControls("string")
        .name("string")
        .targetControls("string")
        .build());
    
    safety_rule_resource = aws.route53recoverycontrol.SafetyRule("safetyRuleResource",
        control_panel_arn="string",
        rule_config={
            "inverted": False,
            "threshold": 0,
            "type": "string",
        },
        wait_period_ms=0,
        asserted_controls=["string"],
        gating_controls=["string"],
        name="string",
        target_controls=["string"])
    
    const safetyRuleResource = new aws.route53recoverycontrol.SafetyRule("safetyRuleResource", {
        controlPanelArn: "string",
        ruleConfig: {
            inverted: false,
            threshold: 0,
            type: "string",
        },
        waitPeriodMs: 0,
        assertedControls: ["string"],
        gatingControls: ["string"],
        name: "string",
        targetControls: ["string"],
    });
    
    type: aws:route53recoverycontrol:SafetyRule
    properties:
        assertedControls:
            - string
        controlPanelArn: string
        gatingControls:
            - string
        name: string
        ruleConfig:
            inverted: false
            threshold: 0
            type: string
        targetControls:
            - string
        waitPeriodMs: 0
    

    SafetyRule Resource Properties

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

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The SafetyRule resource accepts the following input properties:

    ControlPanelArn string
    ARN of the control panel in which this safety rule will reside.
    RuleConfig SafetyRuleRuleConfig
    Configuration block for safety rule criteria. See below.
    WaitPeriodMs int

    Evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail.

    The following arguments are optional:

    AssertedControls List<string>
    Routing controls that are part of transactions that are evaluated to determine if a request to change a routing control state is allowed.
    GatingControls List<string>
    Gating controls for the new gating rule. That is, routing controls that are evaluated by the rule configuration that you specify.
    Name string
    Name describing the safety rule.
    TargetControls List<string>
    Routing controls that can only be set or unset if the specified rule_config evaluates to true for the specified gating_controls.
    ControlPanelArn string
    ARN of the control panel in which this safety rule will reside.
    RuleConfig SafetyRuleRuleConfigArgs
    Configuration block for safety rule criteria. See below.
    WaitPeriodMs int

    Evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail.

    The following arguments are optional:

    AssertedControls []string
    Routing controls that are part of transactions that are evaluated to determine if a request to change a routing control state is allowed.
    GatingControls []string
    Gating controls for the new gating rule. That is, routing controls that are evaluated by the rule configuration that you specify.
    Name string
    Name describing the safety rule.
    TargetControls []string
    Routing controls that can only be set or unset if the specified rule_config evaluates to true for the specified gating_controls.
    controlPanelArn String
    ARN of the control panel in which this safety rule will reside.
    ruleConfig SafetyRuleRuleConfig
    Configuration block for safety rule criteria. See below.
    waitPeriodMs Integer

    Evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail.

    The following arguments are optional:

    assertedControls List<String>
    Routing controls that are part of transactions that are evaluated to determine if a request to change a routing control state is allowed.
    gatingControls List<String>
    Gating controls for the new gating rule. That is, routing controls that are evaluated by the rule configuration that you specify.
    name String
    Name describing the safety rule.
    targetControls List<String>
    Routing controls that can only be set or unset if the specified rule_config evaluates to true for the specified gating_controls.
    controlPanelArn string
    ARN of the control panel in which this safety rule will reside.
    ruleConfig SafetyRuleRuleConfig
    Configuration block for safety rule criteria. See below.
    waitPeriodMs number

    Evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail.

    The following arguments are optional:

    assertedControls string[]
    Routing controls that are part of transactions that are evaluated to determine if a request to change a routing control state is allowed.
    gatingControls string[]
    Gating controls for the new gating rule. That is, routing controls that are evaluated by the rule configuration that you specify.
    name string
    Name describing the safety rule.
    targetControls string[]
    Routing controls that can only be set or unset if the specified rule_config evaluates to true for the specified gating_controls.
    control_panel_arn str
    ARN of the control panel in which this safety rule will reside.
    rule_config SafetyRuleRuleConfigArgs
    Configuration block for safety rule criteria. See below.
    wait_period_ms int

    Evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail.

    The following arguments are optional:

    asserted_controls Sequence[str]
    Routing controls that are part of transactions that are evaluated to determine if a request to change a routing control state is allowed.
    gating_controls Sequence[str]
    Gating controls for the new gating rule. That is, routing controls that are evaluated by the rule configuration that you specify.
    name str
    Name describing the safety rule.
    target_controls Sequence[str]
    Routing controls that can only be set or unset if the specified rule_config evaluates to true for the specified gating_controls.
    controlPanelArn String
    ARN of the control panel in which this safety rule will reside.
    ruleConfig Property Map
    Configuration block for safety rule criteria. See below.
    waitPeriodMs Number

    Evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail.

    The following arguments are optional:

    assertedControls List<String>
    Routing controls that are part of transactions that are evaluated to determine if a request to change a routing control state is allowed.
    gatingControls List<String>
    Gating controls for the new gating rule. That is, routing controls that are evaluated by the rule configuration that you specify.
    name String
    Name describing the safety rule.
    targetControls List<String>
    Routing controls that can only be set or unset if the specified rule_config evaluates to true for the specified gating_controls.

    Outputs

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

    Arn string
    ARN of the safety rule.
    Id string
    The provider-assigned unique ID for this managed resource.
    Status string
    Status of the safety rule. PENDING when it is being created/updated, PENDING_DELETION when it is being deleted, and DEPLOYED otherwise.
    Arn string
    ARN of the safety rule.
    Id string
    The provider-assigned unique ID for this managed resource.
    Status string
    Status of the safety rule. PENDING when it is being created/updated, PENDING_DELETION when it is being deleted, and DEPLOYED otherwise.
    arn String
    ARN of the safety rule.
    id String
    The provider-assigned unique ID for this managed resource.
    status String
    Status of the safety rule. PENDING when it is being created/updated, PENDING_DELETION when it is being deleted, and DEPLOYED otherwise.
    arn string
    ARN of the safety rule.
    id string
    The provider-assigned unique ID for this managed resource.
    status string
    Status of the safety rule. PENDING when it is being created/updated, PENDING_DELETION when it is being deleted, and DEPLOYED otherwise.
    arn str
    ARN of the safety rule.
    id str
    The provider-assigned unique ID for this managed resource.
    status str
    Status of the safety rule. PENDING when it is being created/updated, PENDING_DELETION when it is being deleted, and DEPLOYED otherwise.
    arn String
    ARN of the safety rule.
    id String
    The provider-assigned unique ID for this managed resource.
    status String
    Status of the safety rule. PENDING when it is being created/updated, PENDING_DELETION when it is being deleted, and DEPLOYED otherwise.

    Look up Existing SafetyRule Resource

    Get an existing SafetyRule 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?: SafetyRuleState, opts?: CustomResourceOptions): SafetyRule
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            arn: Optional[str] = None,
            asserted_controls: Optional[Sequence[str]] = None,
            control_panel_arn: Optional[str] = None,
            gating_controls: Optional[Sequence[str]] = None,
            name: Optional[str] = None,
            rule_config: Optional[SafetyRuleRuleConfigArgs] = None,
            status: Optional[str] = None,
            target_controls: Optional[Sequence[str]] = None,
            wait_period_ms: Optional[int] = None) -> SafetyRule
    func GetSafetyRule(ctx *Context, name string, id IDInput, state *SafetyRuleState, opts ...ResourceOption) (*SafetyRule, error)
    public static SafetyRule Get(string name, Input<string> id, SafetyRuleState? state, CustomResourceOptions? opts = null)
    public static SafetyRule get(String name, Output<String> id, SafetyRuleState 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:
    Arn string
    ARN of the safety rule.
    AssertedControls List<string>
    Routing controls that are part of transactions that are evaluated to determine if a request to change a routing control state is allowed.
    ControlPanelArn string
    ARN of the control panel in which this safety rule will reside.
    GatingControls List<string>
    Gating controls for the new gating rule. That is, routing controls that are evaluated by the rule configuration that you specify.
    Name string
    Name describing the safety rule.
    RuleConfig SafetyRuleRuleConfig
    Configuration block for safety rule criteria. See below.
    Status string
    Status of the safety rule. PENDING when it is being created/updated, PENDING_DELETION when it is being deleted, and DEPLOYED otherwise.
    TargetControls List<string>
    Routing controls that can only be set or unset if the specified rule_config evaluates to true for the specified gating_controls.
    WaitPeriodMs int

    Evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail.

    The following arguments are optional:

    Arn string
    ARN of the safety rule.
    AssertedControls []string
    Routing controls that are part of transactions that are evaluated to determine if a request to change a routing control state is allowed.
    ControlPanelArn string
    ARN of the control panel in which this safety rule will reside.
    GatingControls []string
    Gating controls for the new gating rule. That is, routing controls that are evaluated by the rule configuration that you specify.
    Name string
    Name describing the safety rule.
    RuleConfig SafetyRuleRuleConfigArgs
    Configuration block for safety rule criteria. See below.
    Status string
    Status of the safety rule. PENDING when it is being created/updated, PENDING_DELETION when it is being deleted, and DEPLOYED otherwise.
    TargetControls []string
    Routing controls that can only be set or unset if the specified rule_config evaluates to true for the specified gating_controls.
    WaitPeriodMs int

    Evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail.

    The following arguments are optional:

    arn String
    ARN of the safety rule.
    assertedControls List<String>
    Routing controls that are part of transactions that are evaluated to determine if a request to change a routing control state is allowed.
    controlPanelArn String
    ARN of the control panel in which this safety rule will reside.
    gatingControls List<String>
    Gating controls for the new gating rule. That is, routing controls that are evaluated by the rule configuration that you specify.
    name String
    Name describing the safety rule.
    ruleConfig SafetyRuleRuleConfig
    Configuration block for safety rule criteria. See below.
    status String
    Status of the safety rule. PENDING when it is being created/updated, PENDING_DELETION when it is being deleted, and DEPLOYED otherwise.
    targetControls List<String>
    Routing controls that can only be set or unset if the specified rule_config evaluates to true for the specified gating_controls.
    waitPeriodMs Integer

    Evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail.

    The following arguments are optional:

    arn string
    ARN of the safety rule.
    assertedControls string[]
    Routing controls that are part of transactions that are evaluated to determine if a request to change a routing control state is allowed.
    controlPanelArn string
    ARN of the control panel in which this safety rule will reside.
    gatingControls string[]
    Gating controls for the new gating rule. That is, routing controls that are evaluated by the rule configuration that you specify.
    name string
    Name describing the safety rule.
    ruleConfig SafetyRuleRuleConfig
    Configuration block for safety rule criteria. See below.
    status string
    Status of the safety rule. PENDING when it is being created/updated, PENDING_DELETION when it is being deleted, and DEPLOYED otherwise.
    targetControls string[]
    Routing controls that can only be set or unset if the specified rule_config evaluates to true for the specified gating_controls.
    waitPeriodMs number

    Evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail.

    The following arguments are optional:

    arn str
    ARN of the safety rule.
    asserted_controls Sequence[str]
    Routing controls that are part of transactions that are evaluated to determine if a request to change a routing control state is allowed.
    control_panel_arn str
    ARN of the control panel in which this safety rule will reside.
    gating_controls Sequence[str]
    Gating controls for the new gating rule. That is, routing controls that are evaluated by the rule configuration that you specify.
    name str
    Name describing the safety rule.
    rule_config SafetyRuleRuleConfigArgs
    Configuration block for safety rule criteria. See below.
    status str
    Status of the safety rule. PENDING when it is being created/updated, PENDING_DELETION when it is being deleted, and DEPLOYED otherwise.
    target_controls Sequence[str]
    Routing controls that can only be set or unset if the specified rule_config evaluates to true for the specified gating_controls.
    wait_period_ms int

    Evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail.

    The following arguments are optional:

    arn String
    ARN of the safety rule.
    assertedControls List<String>
    Routing controls that are part of transactions that are evaluated to determine if a request to change a routing control state is allowed.
    controlPanelArn String
    ARN of the control panel in which this safety rule will reside.
    gatingControls List<String>
    Gating controls for the new gating rule. That is, routing controls that are evaluated by the rule configuration that you specify.
    name String
    Name describing the safety rule.
    ruleConfig Property Map
    Configuration block for safety rule criteria. See below.
    status String
    Status of the safety rule. PENDING when it is being created/updated, PENDING_DELETION when it is being deleted, and DEPLOYED otherwise.
    targetControls List<String>
    Routing controls that can only be set or unset if the specified rule_config evaluates to true for the specified gating_controls.
    waitPeriodMs Number

    Evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail.

    The following arguments are optional:

    Supporting Types

    SafetyRuleRuleConfig, SafetyRuleRuleConfigArgs

    Inverted bool
    Logical negation of the rule.
    Threshold int
    Number of controls that must be set when you specify an ATLEAST type rule.
    Type string
    Rule type. Valid values are ATLEAST, AND, and OR.
    Inverted bool
    Logical negation of the rule.
    Threshold int
    Number of controls that must be set when you specify an ATLEAST type rule.
    Type string
    Rule type. Valid values are ATLEAST, AND, and OR.
    inverted Boolean
    Logical negation of the rule.
    threshold Integer
    Number of controls that must be set when you specify an ATLEAST type rule.
    type String
    Rule type. Valid values are ATLEAST, AND, and OR.
    inverted boolean
    Logical negation of the rule.
    threshold number
    Number of controls that must be set when you specify an ATLEAST type rule.
    type string
    Rule type. Valid values are ATLEAST, AND, and OR.
    inverted bool
    Logical negation of the rule.
    threshold int
    Number of controls that must be set when you specify an ATLEAST type rule.
    type str
    Rule type. Valid values are ATLEAST, AND, and OR.
    inverted Boolean
    Logical negation of the rule.
    threshold Number
    Number of controls that must be set when you specify an ATLEAST type rule.
    type String
    Rule type. Valid values are ATLEAST, AND, and OR.

    Import

    Using pulumi import, import Route53 Recovery Control Config Safety Rule using the safety rule ARN. For example:

    $ pulumi import aws:route53recoverycontrol/safetyRule:SafetyRule myrule arn:aws:route53-recovery-control::313517334327:controlpanel/1bfba17df8684f5dab0467b71424f7e8/safetyrule/3bacc77003364c0f
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    AWS Classic pulumi/pulumi-aws
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the aws Terraform Provider.
    aws logo
    AWS v6.60.0 published on Tuesday, Nov 19, 2024 by Pulumi