Module Lightsail.Container

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-container.html

type port_info = {
  1. port : string option;
  2. protocol : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-container-portinfo.html

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

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

and environment_variable = {
  1. variable : string option;
  2. value : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-container-environmentvariable.html

and public_domain_name = {
  1. certificate_name : string option;
  2. domain_names : string list option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-container-publicdomainname.html

and health_check_config = {
  1. path : string option;
  2. timeout_seconds : int option;
  3. success_codes : string option;
  4. unhealthy_threshold : int option;
  5. healthy_threshold : int option;
  6. interval_seconds : int option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-container-healthcheckconfig.html

and ecr_image_puller_role = {
  1. principal_arn : string option;
  2. is_active : bool option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-container-ecrimagepullerrole.html

and private_registry_access = {
  1. ecr_image_puller_role : ecr_image_puller_role option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-container-privateregistryaccess.html

and container = {
  1. container_name : string option;
  2. command : string list option;
  3. environment : environment_variable list option;
  4. ports : port_info list option;
  5. image : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-container-container.html

and public_endpoint = {
  1. container_name : string option;
  2. container_port : int option;
  3. health_check_config : health_check_config option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-container-publicendpoint.html

and container_service_deployment = {
  1. containers : container list option;
  2. public_endpoint : public_endpoint option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-container-containerservicedeployment.html

type properties = {
  1. public_domain_names : public_domain_name list option;
  2. service_name : string;
  3. private_registry_access : private_registry_access option;
  4. container_service_deployment : container_service_deployment option;
  5. is_disabled : bool option;
  6. scale : int;
  7. power : string;
  8. tags : tag list option;
}

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

val make_properties : ?public_domain_names:public_domain_name list -> service_name:string -> ?private_registry_access:private_registry_access -> ?container_service_deployment:container_service_deployment -> ?is_disabled:bool -> scale:int -> power:string -> ?tags:tag list -> unit -> properties
val make_port_info : ?port:string -> ?protocol:string -> unit -> port_info
val make_tag : value:string -> key:string -> unit -> tag
val make_environment_variable : ?variable:string -> ?value:string -> unit -> environment_variable
val make_public_domain_name : ?certificate_name:string -> ?domain_names:string list -> unit -> public_domain_name
val make_health_check_config : ?path:string -> ?timeout_seconds:int -> ?success_codes:string -> ?unhealthy_threshold:int -> ?healthy_threshold:int -> ?interval_seconds:int -> unit -> health_check_config
val make_ecr_image_puller_role : ?principal_arn:string -> ?is_active:bool -> unit -> ecr_image_puller_role
val make_private_registry_access : ?ecr_image_puller_role:ecr_image_puller_role -> unit -> private_registry_access
val make_container : ?container_name:string -> ?command:string list -> ?environment:environment_variable list -> ?ports:port_info list -> ?image:string -> unit -> container
val make_public_endpoint : ?container_name:string -> ?container_port:int -> ?health_check_config:health_check_config -> unit -> public_endpoint
val make_container_service_deployment : ?containers:container list -> ?public_endpoint:public_endpoint -> unit -> container_service_deployment
val yojson_of_port_info : port_info -> Yojson.Safe.t
val yojson_of_tag : tag -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_environment_variable : environment_variable -> Yojson.Safe.t
val yojson_of_public_domain_name : public_domain_name -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_health_check_config : health_check_config -> Yojson.Safe.t
val yojson_of_ecr_image_puller_role : ecr_image_puller_role -> Yojson.Safe.t
val yojson_of_private_registry_access : private_registry_access -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_container : container -> Yojson.Safe.t
val yojson_of_public_endpoint : public_endpoint -> Yojson.Safe.t
val yojson_of_container_service_deployment : container_service_deployment -> [> `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. principal_arn : string;
  3. private_registry_access__ecr_image_puller_role__principal_arn : string;
  4. container_arn : string;
  5. url : string;
}
val create_attributes : string -> attributes
val cloudformation_type : string