AWS Native is in preview. AWS Classic is fully supported.
aws-native.route53recoverycontrol.SafetyRule
Explore with Pulumi AI
AWS Native is in preview. AWS Classic is fully supported.
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.
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:
- Assertion
Rule Pulumi.Aws Native. Route53Recovery Control. Inputs. Safety Rule Assertion Rule - An assertion rule enforces that, when you change a routing control state, that the criteria that you set in the rule configuration is met. Otherwise, the change to the routing control is not accepted. For example, the criteria might be that at least one routing control state is
On
after the transaction so that traffic continues to flow to at least one cell for the application. This ensures that you avoid a fail-open scenario. - Control
Panel stringArn - The Amazon Resource Name (ARN) of the control panel.
- Gating
Rule Pulumi.Aws Native. Route53Recovery Control. Inputs. Safety Rule Gating Rule A gating rule verifies that a gating routing control or set of gating routing controls, evaluates as true, based on a rule configuration that you specify, which allows a set of routing control state changes to complete.
For example, if you specify one gating routing control and you set the
Type
in the rule configuration toOR
, that indicates that you must set the gating routing control toOn
for the rule to evaluate as true; that is, for the gating control switch to be On. When you do that, then you can update the routing control states for the target routing controls that you specify in the gating rule.- Name string
- The name of the assertion rule. The name must be unique within a control panel. You can use any non-white space character in the name except the following: & > < ' (single quote) " (double quote) ; (semicolon)
- Rule
Config Pulumi.Aws Native. Route53Recovery Control. Inputs. Safety Rule Rule Config - The criteria that you set for specific assertion controls (routing controls) that designate how many control states must be
ON
as the result of a transaction. For example, if you have three assertion controls, you might specifyATLEAST 2
for your rule configuration. This means that at least two assertion controls must beON
, so that at least two AWS Regions have traffic flowing to them. - List<Pulumi.
Aws Native. Inputs. Create Only Tag> - A collection of tags associated with a resource
- Assertion
Rule SafetyRule Assertion Rule Args - An assertion rule enforces that, when you change a routing control state, that the criteria that you set in the rule configuration is met. Otherwise, the change to the routing control is not accepted. For example, the criteria might be that at least one routing control state is
On
after the transaction so that traffic continues to flow to at least one cell for the application. This ensures that you avoid a fail-open scenario. - Control
Panel stringArn - The Amazon Resource Name (ARN) of the control panel.
- Gating
Rule SafetyRule Gating Rule Args A gating rule verifies that a gating routing control or set of gating routing controls, evaluates as true, based on a rule configuration that you specify, which allows a set of routing control state changes to complete.
For example, if you specify one gating routing control and you set the
Type
in the rule configuration toOR
, that indicates that you must set the gating routing control toOn
for the rule to evaluate as true; that is, for the gating control switch to be On. When you do that, then you can update the routing control states for the target routing controls that you specify in the gating rule.- Name string
- The name of the assertion rule. The name must be unique within a control panel. You can use any non-white space character in the name except the following: & > < ' (single quote) " (double quote) ; (semicolon)
- Rule
Config SafetyRule Rule Config Args - The criteria that you set for specific assertion controls (routing controls) that designate how many control states must be
ON
as the result of a transaction. For example, if you have three assertion controls, you might specifyATLEAST 2
for your rule configuration. This means that at least two assertion controls must beON
, so that at least two AWS Regions have traffic flowing to them. - Create
Only Tag Args - A collection of tags associated with a resource
- assertion
Rule SafetyRule Assertion Rule - An assertion rule enforces that, when you change a routing control state, that the criteria that you set in the rule configuration is met. Otherwise, the change to the routing control is not accepted. For example, the criteria might be that at least one routing control state is
On
after the transaction so that traffic continues to flow to at least one cell for the application. This ensures that you avoid a fail-open scenario. - control
Panel StringArn - The Amazon Resource Name (ARN) of the control panel.
- gating
Rule SafetyRule Gating Rule A gating rule verifies that a gating routing control or set of gating routing controls, evaluates as true, based on a rule configuration that you specify, which allows a set of routing control state changes to complete.
For example, if you specify one gating routing control and you set the
Type
in the rule configuration toOR
, that indicates that you must set the gating routing control toOn
for the rule to evaluate as true; that is, for the gating control switch to be On. When you do that, then you can update the routing control states for the target routing controls that you specify in the gating rule.- name String
- The name of the assertion rule. The name must be unique within a control panel. You can use any non-white space character in the name except the following: & > < ' (single quote) " (double quote) ; (semicolon)
- rule
Config SafetyRule Rule Config - The criteria that you set for specific assertion controls (routing controls) that designate how many control states must be
ON
as the result of a transaction. For example, if you have three assertion controls, you might specifyATLEAST 2
for your rule configuration. This means that at least two assertion controls must beON
, so that at least two AWS Regions have traffic flowing to them. - List<Create
Only Tag> - A collection of tags associated with a resource
- assertion
Rule SafetyRule Assertion Rule - An assertion rule enforces that, when you change a routing control state, that the criteria that you set in the rule configuration is met. Otherwise, the change to the routing control is not accepted. For example, the criteria might be that at least one routing control state is
On
after the transaction so that traffic continues to flow to at least one cell for the application. This ensures that you avoid a fail-open scenario. - control
Panel stringArn - The Amazon Resource Name (ARN) of the control panel.
- gating
Rule SafetyRule Gating Rule A gating rule verifies that a gating routing control or set of gating routing controls, evaluates as true, based on a rule configuration that you specify, which allows a set of routing control state changes to complete.
For example, if you specify one gating routing control and you set the
Type
in the rule configuration toOR
, that indicates that you must set the gating routing control toOn
for the rule to evaluate as true; that is, for the gating control switch to be On. When you do that, then you can update the routing control states for the target routing controls that you specify in the gating rule.- name string
- The name of the assertion rule. The name must be unique within a control panel. You can use any non-white space character in the name except the following: & > < ' (single quote) " (double quote) ; (semicolon)
- rule
Config SafetyRule Rule Config - The criteria that you set for specific assertion controls (routing controls) that designate how many control states must be
ON
as the result of a transaction. For example, if you have three assertion controls, you might specifyATLEAST 2
for your rule configuration. This means that at least two assertion controls must beON
, so that at least two AWS Regions have traffic flowing to them. - Create
Only Tag[] - A collection of tags associated with a resource
- assertion_
rule SafetyRule Assertion Rule Args - An assertion rule enforces that, when you change a routing control state, that the criteria that you set in the rule configuration is met. Otherwise, the change to the routing control is not accepted. For example, the criteria might be that at least one routing control state is
On
after the transaction so that traffic continues to flow to at least one cell for the application. This ensures that you avoid a fail-open scenario. - control_
panel_ strarn - The Amazon Resource Name (ARN) of the control panel.
- gating_
rule SafetyRule Gating Rule Args A gating rule verifies that a gating routing control or set of gating routing controls, evaluates as true, based on a rule configuration that you specify, which allows a set of routing control state changes to complete.
For example, if you specify one gating routing control and you set the
Type
in the rule configuration toOR
, that indicates that you must set the gating routing control toOn
for the rule to evaluate as true; that is, for the gating control switch to be On. When you do that, then you can update the routing control states for the target routing controls that you specify in the gating rule.- name str
- The name of the assertion rule. The name must be unique within a control panel. You can use any non-white space character in the name except the following: & > < ' (single quote) " (double quote) ; (semicolon)
- rule_
config SafetyRule Rule Config Args - The criteria that you set for specific assertion controls (routing controls) that designate how many control states must be
ON
as the result of a transaction. For example, if you have three assertion controls, you might specifyATLEAST 2
for your rule configuration. This means that at least two assertion controls must beON
, so that at least two AWS Regions have traffic flowing to them. - Sequence[Create
Only Tag Args] - A collection of tags associated with a resource
- assertion
Rule Property Map - An assertion rule enforces that, when you change a routing control state, that the criteria that you set in the rule configuration is met. Otherwise, the change to the routing control is not accepted. For example, the criteria might be that at least one routing control state is
On
after the transaction so that traffic continues to flow to at least one cell for the application. This ensures that you avoid a fail-open scenario. - control
Panel StringArn - The Amazon Resource Name (ARN) of the control panel.
- gating
Rule Property Map A gating rule verifies that a gating routing control or set of gating routing controls, evaluates as true, based on a rule configuration that you specify, which allows a set of routing control state changes to complete.
For example, if you specify one gating routing control and you set the
Type
in the rule configuration toOR
, that indicates that you must set the gating routing control toOn
for the rule to evaluate as true; that is, for the gating control switch to be On. When you do that, then you can update the routing control states for the target routing controls that you specify in the gating rule.- name String
- The name of the assertion rule. The name must be unique within a control panel. You can use any non-white space character in the name except the following: & > < ' (single quote) " (double quote) ; (semicolon)
- rule
Config Property Map - The criteria that you set for specific assertion controls (routing controls) that designate how many control states must be
ON
as the result of a transaction. For example, if you have three assertion controls, you might specifyATLEAST 2
for your rule configuration. This means that at least two assertion controls must beON
, so that at least two AWS Regions have traffic flowing to them. - 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.
- Safety
Rule stringArn - The Amazon Resource Name (ARN) of the safety rule.
- Status
Pulumi.
Aws Native. Route53Recovery Control. Safety Rule Status - 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.
- Safety
Rule stringArn - The Amazon Resource Name (ARN) of the safety rule.
- Status
Safety
Rule Status - 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.
- safety
Rule StringArn - The Amazon Resource Name (ARN) of the safety rule.
- status
Safety
Rule Status - 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.
- safety
Rule stringArn - The Amazon Resource Name (ARN) of the safety rule.
- status
Safety
Rule Status - 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_ strarn - The Amazon Resource Name (ARN) of the safety rule.
- status
Safety
Rule Status - 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.
- safety
Rule StringArn - 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
SafetyRuleAssertionRule, SafetyRuleAssertionRuleArgs
- Asserted
Controls 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.
- Wait
Period intMs - 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 []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.
- Wait
Period intMs - 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 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.
- wait
Period IntegerMs - 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 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.
- wait
Period numberMs - 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_ intms - 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 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.
- wait
Period NumberMs - 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
- Gating
Controls List<string> - The gating controls for the gating rule. That is, routing controls that are evaluated by the rule configuration that you specify.
- Target
Controls 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.
- Wait
Period intMs - 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 []string - The gating controls for the gating rule. That is, routing controls that are evaluated by the rule configuration that you specify.
- Target
Controls []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.
- Wait
Period intMs - 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 List<String> - The gating controls for the gating rule. That is, routing controls that are evaluated by the rule configuration that you specify.
- target
Controls 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.
- wait
Period IntegerMs - 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 string[] - The gating controls for the gating rule. That is, routing controls that are evaluated by the rule configuration that you specify.
- target
Controls 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.
- wait
Period numberMs - 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_ intms - 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 List<String> - The gating controls for the gating rule. That is, routing controls that are evaluated by the rule configuration that you specify.
- target
Controls 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.
- wait
Period NumberMs - 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.
Aws Native. Route53Recovery Control. Safety Rule Rule Type - A rule can be one of the following:
ATLEAST
,AND
, orOR
.
- 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
Safety
Rule Rule Type - A rule can be one of the following:
ATLEAST
,AND
, orOR
.
- 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
Safety
Rule Rule Type - A rule can be one of the following:
ATLEAST
,AND
, orOR
.
- 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
Safety
Rule Rule Type - A rule can be one of the following:
ATLEAST
,AND
, orOR
.
- 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
Safety
Rule Rule Type - A rule can be one of the following:
ATLEAST
,AND
, orOR
.
- 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"
- A rule can be one of the following:
ATLEAST
,AND
, orOR
.
SafetyRuleRuleType, SafetyRuleRuleTypeArgs
- And
- AND
- Or
- OR
- Atleast
- ATLEAST
- Safety
Rule Rule Type And - AND
- Safety
Rule Rule Type Or - OR
- Safety
Rule Rule Type Atleast - 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
- Pending
Deletion - PENDING_DELETION
- Safety
Rule Status Pending - PENDING
- Safety
Rule Status Deployed - DEPLOYED
- Safety
Rule Status Pending Deletion - PENDING_DELETION
- Pending
- PENDING
- Deployed
- DEPLOYED
- Pending
Deletion - PENDING_DELETION
- Pending
- PENDING
- Deployed
- DEPLOYED
- Pending
Deletion - 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 is in preview. AWS Classic is fully supported.