1. Packages
  2. AWS Native
  3. API Docs
  4. route53recoverycontrol
  5. SafetyRule

AWS Native is in preview. AWS Classic is fully supported.

AWS Native v0.103.0 published on Monday, Apr 22, 2024 by Pulumi

aws-native.route53recoverycontrol.SafetyRule

Explore with Pulumi AI

aws-native logo

AWS Native is in preview. AWS Classic is fully supported.

AWS Native v0.103.0 published on Monday, Apr 22, 2024 by Pulumi

    Resource schema for AWS Route53 Recovery Control basic constructs and validation rules.

    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: Optional[SafetyRuleArgs] = None,
                   opts: Optional[ResourceOptions] = None)
    
    @overload
    def SafetyRule(resource_name: str,
                   opts: Optional[ResourceOptions] = None,
                   assertion_rule: Optional[SafetyRuleAssertionRuleArgs] = None,
                   control_panel_arn: Optional[str] = None,
                   gating_rule: Optional[SafetyRuleGatingRuleArgs] = None,
                   name: Optional[str] = None,
                   rule_config: Optional[SafetyRuleRuleConfigArgs] = None,
                   tags: Optional[Sequence[_root_inputs.CreateOnlyTagArgs]] = None)
    func NewSafetyRule(ctx *Context, name string, args *SafetyRuleArgs, opts ...ResourceOption) (*SafetyRule, error)
    public SafetyRule(string name, SafetyRuleArgs? args = null, CustomResourceOptions? opts = null)
    public SafetyRule(String name, SafetyRuleArgs args)
    public SafetyRule(String name, SafetyRuleArgs args, CustomResourceOptions options)
    
    type: aws-native: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.

    Example

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

    Coming soon!
    
    Coming soon!
    
    Coming soon!
    
    Coming soon!
    
    const safetyRuleResource = new aws_native.route53recoverycontrol.SafetyRule("safetyRuleResource", {
        assertionRule: {
            assertedControls: ["string"],
            waitPeriodMs: 0,
        },
        controlPanelArn: "string",
        gatingRule: {
            gatingControls: ["string"],
            targetControls: ["string"],
            waitPeriodMs: 0,
        },
        name: "string",
        ruleConfig: {
            inverted: false,
            threshold: 0,
            type: aws_native.route53recoverycontrol.SafetyRuleRuleType.And,
        },
        tags: [{
            key: "string",
            value: "string",
        }],
    });
    
    Coming soon!
    

    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

    The SafetyRule resource accepts the following input properties:

    AssertionRule SafetyRuleAssertionRuleArgs
    ControlPanelArn string
    The Amazon Resource Name (ARN) of the control panel.
    GatingRule SafetyRuleGatingRuleArgs
    Name string
    RuleConfig SafetyRuleRuleConfigArgs
    Tags CreateOnlyTagArgs
    A collection of tags associated with a resource
    assertionRule SafetyRuleAssertionRule
    controlPanelArn String
    The Amazon Resource Name (ARN) of the control panel.
    gatingRule SafetyRuleGatingRule
    name String
    ruleConfig SafetyRuleRuleConfig
    tags List<CreateOnlyTag>
    A collection of tags associated with a resource
    assertionRule SafetyRuleAssertionRule
    controlPanelArn string
    The Amazon Resource Name (ARN) of the control panel.
    gatingRule SafetyRuleGatingRule
    name string
    ruleConfig SafetyRuleRuleConfig
    tags CreateOnlyTag[]
    A collection of tags associated with a resource
    assertion_rule SafetyRuleAssertionRuleArgs
    control_panel_arn str
    The Amazon Resource Name (ARN) of the control panel.
    gating_rule SafetyRuleGatingRuleArgs
    name str
    rule_config SafetyRuleRuleConfigArgs
    tags Sequence[CreateOnlyTagArgs]
    A collection of tags associated with a resource
    assertionRule Property Map
    controlPanelArn String
    The Amazon Resource Name (ARN) of the control panel.
    gatingRule Property Map
    name String
    ruleConfig Property Map
    tags List<Property Map>
    A collection of tags associated with a resource

    Outputs

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

    Id string
    The provider-assigned unique ID for this managed resource.
    SafetyRuleArn string
    The Amazon Resource Name (ARN) of the safety rule.
    Status Pulumi.AwsNative.Route53RecoveryControl.SafetyRuleStatus
    The deployment status of the routing control. Status can be one of the following: PENDING, DEPLOYED, PENDING_DELETION.
    Id string
    The provider-assigned unique ID for this managed resource.
    SafetyRuleArn string
    The Amazon Resource Name (ARN) of the safety rule.
    Status SafetyRuleStatus
    The deployment status of the routing control. Status can be one of the following: PENDING, DEPLOYED, PENDING_DELETION.
    id String
    The provider-assigned unique ID for this managed resource.
    safetyRuleArn String
    The Amazon Resource Name (ARN) of the safety rule.
    status SafetyRuleStatus
    The deployment status of the routing control. Status can be one of the following: PENDING, DEPLOYED, PENDING_DELETION.
    id string
    The provider-assigned unique ID for this managed resource.
    safetyRuleArn string
    The Amazon Resource Name (ARN) of the safety rule.
    status SafetyRuleStatus
    The deployment status of the routing control. Status can be one of the following: PENDING, DEPLOYED, PENDING_DELETION.
    id str
    The provider-assigned unique ID for this managed resource.
    safety_rule_arn str
    The Amazon Resource Name (ARN) of the safety rule.
    status SafetyRuleStatus
    The deployment status of the routing control. Status can be one of the following: PENDING, DEPLOYED, PENDING_DELETION.
    id String
    The provider-assigned unique ID for this managed resource.
    safetyRuleArn String
    The Amazon Resource Name (ARN) of the safety rule.
    status "PENDING" | "DEPLOYED" | "PENDING_DELETION"
    The deployment status of the routing control. Status can be one of the following: PENDING, DEPLOYED, PENDING_DELETION.

    Supporting Types

    CreateOnlyTag, CreateOnlyTagArgs

    Key string
    The key name of the tag
    Value string
    The value of the tag
    Key string
    The key name of the tag
    Value string
    The value of the tag
    key String
    The key name of the tag
    value String
    The value of the tag
    key string
    The key name of the tag
    value string
    The value of the tag
    key str
    The key name of the tag
    value str
    The value of the tag
    key String
    The key name of the tag
    value String
    The value of the tag

    SafetyRuleAssertionRule, SafetyRuleAssertionRuleArgs

    AssertedControls List<string>
    The routing controls that are part of transactions that are evaluated to determine if a request to change a routing control state is allowed. For example, you might include three routing controls, one for each of three AWS Regions.
    WaitPeriodMs int
    An evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail. This helps prevent "flapping" of state. The wait period is 5000 ms by default, but you can choose a custom value.
    AssertedControls []string
    The routing controls that are part of transactions that are evaluated to determine if a request to change a routing control state is allowed. For example, you might include three routing controls, one for each of three AWS Regions.
    WaitPeriodMs int
    An evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail. This helps prevent "flapping" of state. The wait period is 5000 ms by default, but you can choose a custom value.
    assertedControls List<String>
    The routing controls that are part of transactions that are evaluated to determine if a request to change a routing control state is allowed. For example, you might include three routing controls, one for each of three AWS Regions.
    waitPeriodMs Integer
    An evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail. This helps prevent "flapping" of state. The wait period is 5000 ms by default, but you can choose a custom value.
    assertedControls string[]
    The routing controls that are part of transactions that are evaluated to determine if a request to change a routing control state is allowed. For example, you might include three routing controls, one for each of three AWS Regions.
    waitPeriodMs number
    An evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail. This helps prevent "flapping" of state. The wait period is 5000 ms by default, but you can choose a custom value.
    asserted_controls Sequence[str]
    The routing controls that are part of transactions that are evaluated to determine if a request to change a routing control state is allowed. For example, you might include three routing controls, one for each of three AWS Regions.
    wait_period_ms int
    An evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail. This helps prevent "flapping" of state. The wait period is 5000 ms by default, but you can choose a custom value.
    assertedControls List<String>
    The routing controls that are part of transactions that are evaluated to determine if a request to change a routing control state is allowed. For example, you might include three routing controls, one for each of three AWS Regions.
    waitPeriodMs Number
    An evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail. This helps prevent "flapping" of state. The wait period is 5000 ms by default, but you can choose a custom value.

    SafetyRuleGatingRule, SafetyRuleGatingRuleArgs

    GatingControls List<string>
    The gating controls for the gating rule. That is, routing controls that are evaluated by the rule configuration that you specify.
    TargetControls List<string>
    Routing controls that can only be set or unset if the specified RuleConfig evaluates to true for the specified GatingControls. For example, say you have three gating controls, one for each of three AWS Regions. Now you specify AtLeast 2 as your RuleConfig. With these settings, you can only change (set or unset) the routing controls that you have specified as TargetControls if that rule evaluates to true. In other words, your ability to change the routing controls that you have specified as TargetControls is gated by the rule that you set for the routing controls in GatingControls.
    WaitPeriodMs int
    An evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail. This helps prevent "flapping" of state. The wait period is 5000 ms by default, but you can choose a custom value.
    GatingControls []string
    The gating controls for the gating rule. That is, routing controls that are evaluated by the rule configuration that you specify.
    TargetControls []string
    Routing controls that can only be set or unset if the specified RuleConfig evaluates to true for the specified GatingControls. For example, say you have three gating controls, one for each of three AWS Regions. Now you specify AtLeast 2 as your RuleConfig. With these settings, you can only change (set or unset) the routing controls that you have specified as TargetControls if that rule evaluates to true. In other words, your ability to change the routing controls that you have specified as TargetControls is gated by the rule that you set for the routing controls in GatingControls.
    WaitPeriodMs int
    An evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail. This helps prevent "flapping" of state. The wait period is 5000 ms by default, but you can choose a custom value.
    gatingControls List<String>
    The gating controls for the gating rule. That is, routing controls that are evaluated by the rule configuration that you specify.
    targetControls List<String>
    Routing controls that can only be set or unset if the specified RuleConfig evaluates to true for the specified GatingControls. For example, say you have three gating controls, one for each of three AWS Regions. Now you specify AtLeast 2 as your RuleConfig. With these settings, you can only change (set or unset) the routing controls that you have specified as TargetControls if that rule evaluates to true. In other words, your ability to change the routing controls that you have specified as TargetControls is gated by the rule that you set for the routing controls in GatingControls.
    waitPeriodMs Integer
    An evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail. This helps prevent "flapping" of state. The wait period is 5000 ms by default, but you can choose a custom value.
    gatingControls string[]
    The gating controls for the gating rule. That is, routing controls that are evaluated by the rule configuration that you specify.
    targetControls string[]
    Routing controls that can only be set or unset if the specified RuleConfig evaluates to true for the specified GatingControls. For example, say you have three gating controls, one for each of three AWS Regions. Now you specify AtLeast 2 as your RuleConfig. With these settings, you can only change (set or unset) the routing controls that you have specified as TargetControls if that rule evaluates to true. In other words, your ability to change the routing controls that you have specified as TargetControls is gated by the rule that you set for the routing controls in GatingControls.
    waitPeriodMs number
    An evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail. This helps prevent "flapping" of state. The wait period is 5000 ms by default, but you can choose a custom value.
    gating_controls Sequence[str]
    The gating controls for the gating rule. That is, routing controls that are evaluated by the rule configuration that you specify.
    target_controls Sequence[str]
    Routing controls that can only be set or unset if the specified RuleConfig evaluates to true for the specified GatingControls. For example, say you have three gating controls, one for each of three AWS Regions. Now you specify AtLeast 2 as your RuleConfig. With these settings, you can only change (set or unset) the routing controls that you have specified as TargetControls if that rule evaluates to true. In other words, your ability to change the routing controls that you have specified as TargetControls is gated by the rule that you set for the routing controls in GatingControls.
    wait_period_ms int
    An evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail. This helps prevent "flapping" of state. The wait period is 5000 ms by default, but you can choose a custom value.
    gatingControls List<String>
    The gating controls for the gating rule. That is, routing controls that are evaluated by the rule configuration that you specify.
    targetControls List<String>
    Routing controls that can only be set or unset if the specified RuleConfig evaluates to true for the specified GatingControls. For example, say you have three gating controls, one for each of three AWS Regions. Now you specify AtLeast 2 as your RuleConfig. With these settings, you can only change (set or unset) the routing controls that you have specified as TargetControls if that rule evaluates to true. In other words, your ability to change the routing controls that you have specified as TargetControls is gated by the rule that you set for the routing controls in GatingControls.
    waitPeriodMs Number
    An evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail. This helps prevent "flapping" of state. The wait period is 5000 ms by default, but you can choose a custom value.

    SafetyRuleRuleConfig, SafetyRuleRuleConfigArgs

    Inverted bool
    Logical negation of the rule. If the rule would usually evaluate true, it's evaluated as false, and vice versa.
    Threshold int
    The value of N, when you specify an ATLEAST rule type. That is, Threshold is the number of controls that must be set when you specify an ATLEAST type.
    Type Pulumi.AwsNative.Route53RecoveryControl.SafetyRuleRuleType
    Inverted bool
    Logical negation of the rule. If the rule would usually evaluate true, it's evaluated as false, and vice versa.
    Threshold int
    The value of N, when you specify an ATLEAST rule type. That is, Threshold is the number of controls that must be set when you specify an ATLEAST type.
    Type SafetyRuleRuleType
    inverted Boolean
    Logical negation of the rule. If the rule would usually evaluate true, it's evaluated as false, and vice versa.
    threshold Integer
    The value of N, when you specify an ATLEAST rule type. That is, Threshold is the number of controls that must be set when you specify an ATLEAST type.
    type SafetyRuleRuleType
    inverted boolean
    Logical negation of the rule. If the rule would usually evaluate true, it's evaluated as false, and vice versa.
    threshold number
    The value of N, when you specify an ATLEAST rule type. That is, Threshold is the number of controls that must be set when you specify an ATLEAST type.
    type SafetyRuleRuleType
    inverted bool
    Logical negation of the rule. If the rule would usually evaluate true, it's evaluated as false, and vice versa.
    threshold int
    The value of N, when you specify an ATLEAST rule type. That is, Threshold is the number of controls that must be set when you specify an ATLEAST type.
    type SafetyRuleRuleType
    inverted Boolean
    Logical negation of the rule. If the rule would usually evaluate true, it's evaluated as false, and vice versa.
    threshold Number
    The value of N, when you specify an ATLEAST rule type. That is, Threshold is the number of controls that must be set when you specify an ATLEAST type.
    type "AND" | "OR" | "ATLEAST"

    SafetyRuleRuleType, SafetyRuleRuleTypeArgs

    And
    AND
    Or
    OR
    Atleast
    ATLEAST
    SafetyRuleRuleTypeAnd
    AND
    SafetyRuleRuleTypeOr
    OR
    SafetyRuleRuleTypeAtleast
    ATLEAST
    And
    AND
    Or
    OR
    Atleast
    ATLEAST
    And
    AND
    Or
    OR
    Atleast
    ATLEAST
    AND_
    AND
    OR_
    OR
    ATLEAST
    ATLEAST
    "AND"
    AND
    "OR"
    OR
    "ATLEAST"
    ATLEAST

    SafetyRuleStatus, SafetyRuleStatusArgs

    Pending
    PENDING
    Deployed
    DEPLOYED
    PendingDeletion
    PENDING_DELETION
    SafetyRuleStatusPending
    PENDING
    SafetyRuleStatusDeployed
    DEPLOYED
    SafetyRuleStatusPendingDeletion
    PENDING_DELETION
    Pending
    PENDING
    Deployed
    DEPLOYED
    PendingDeletion
    PENDING_DELETION
    Pending
    PENDING
    Deployed
    DEPLOYED
    PendingDeletion
    PENDING_DELETION
    PENDING
    PENDING
    DEPLOYED
    DEPLOYED
    PENDING_DELETION
    PENDING_DELETION
    "PENDING"
    PENDING
    "DEPLOYED"
    DEPLOYED
    "PENDING_DELETION"
    PENDING_DELETION

    Package Details

    Repository
    AWS Native pulumi/pulumi-aws-native
    License
    Apache-2.0
    aws-native logo

    AWS Native is in preview. AWS Classic is fully supported.

    AWS Native v0.103.0 published on Monday, Apr 22, 2024 by Pulumi