Module Route53RecoveryControl.SafetyRule

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoverycontrol-safetyrule.html

type gating_rule = {
  1. target_controls : string list;
  2. gating_controls : string list;
  3. wait_period_ms : int;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53recoverycontrol-safetyrule-gatingrule.html

and tag = {
  1. value : string;
  2. key : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html

and assertion_rule = {
  1. asserted_controls : string list;
  2. wait_period_ms : int;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53recoverycontrol-safetyrule-assertionrule.html

and rule_config = {
  1. type_ : string;
  2. inverted : bool;
  3. threshold : int;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53recoverycontrol-safetyrule-ruleconfig.html

type properties = {
  1. control_panel_arn : string;
  2. assertion_rule : assertion_rule option;
  3. rule_config : rule_config;
  4. gating_rule : gating_rule option;
  5. tags : tag list option;
  6. name : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoverycontrol-safetyrule.html;

val make_properties : control_panel_arn:string -> ?assertion_rule:assertion_rule -> rule_config:rule_config -> ?gating_rule:gating_rule -> ?tags:tag list -> name:string -> unit -> properties
val make_gating_rule : target_controls:string list -> gating_controls:string list -> wait_period_ms:int -> unit -> gating_rule
val make_tag : value:string -> key:string -> unit -> tag
val make_assertion_rule : asserted_controls:string list -> wait_period_ms:int -> unit -> assertion_rule
val make_rule_config : type_:string -> inverted:bool -> threshold:int -> unit -> rule_config
val yojson_of_gating_rule : gating_rule -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_tag : tag -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_assertion_rule : assertion_rule -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_rule_config : rule_config -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_properties : properties -> [> `Assoc of (string * Yojson.Safe.t) list ]
type attributes = {
  1. ref_ : string;
  2. status : string;
  3. safety_rule_arn : string;
}
val create_attributes : string -> attributes
val cloudformation_type : string