IAM.Role
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-role-policy.html
type properties = {
path : string option;
managed_policy_arns : string list option;
max_session_duration : int option;
role_name : string option;
description : string option;
policies : policy list option;
assume_role_policy_document : Yojson.Safe.t;
permissions_boundary : string option;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html;
val make_properties :
?path:string ->
?managed_policy_arns:string list ->
?max_session_duration:int ->
?role_name:string ->
?description:string ->
?policies:policy list ->
assume_role_policy_document:Yojson.Safe.t ->
?tags:tag list ->
?permissions_boundary:string ->
unit ->
properties
val make_tag : value:string -> key:string -> unit -> tag
val make_policy :
policy_name:string ->
policy_document:Yojson.Safe.t ->
unit ->
policy
val yojson_of_tag : tag -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_policy : policy -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_properties :
properties ->
[> `Assoc of (string * Yojson.Safe.t) list ]
val create_attributes : string -> attributes