Lightsail.Instance
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-instance.html
type port = {
from_port : int option;
access_direction : string option;
cidr_list_aliases : string list option;
to_port : int option;
ipv6_cidrs : string list option;
access_from : string option;
protocol : string option;
access_type : string option;
cidrs : string list option;
common_name : string option;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-instance-port.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-instance-autosnapshotaddon.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-lightsail-instance-state.html
and disk = {
size_in_gb : string option;
path : string;
attachment_state : string option;
is_system_disk : bool option;
attached_to : string option;
iops : int option;
disk_name : string;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-instance-disk.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-instance-location.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-instance-monthlytransfer.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-instance-hardware.html
and add_on = {
status : string option;
add_on_type : string;
auto_snapshot_add_on_request : auto_snapshot_add_on option;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-instance-addon.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-instance-networking.html
type properties = {
instance_name : string;
key_pair_name : string option;
bundle_id : string;
blueprint_id : string;
networking : networking option;
user_data : string option;
state : state option;
availability_zone : string option;
add_ons : add_on list option;
hardware : hardware option;
location : location option;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-instance.html;
val make_properties :
instance_name:string ->
?key_pair_name:string ->
bundle_id:string ->
blueprint_id:string ->
?networking:networking ->
?user_data:string ->
?state:state ->
?availability_zone:string ->
?add_ons:add_on list ->
?hardware:hardware ->
?tags:tag list ->
?location:location ->
unit ->
properties
val make_port :
?from_port:int ->
?access_direction:string ->
?cidr_list_aliases:string list ->
?to_port:int ->
?ipv6_cidrs:string list ->
?access_from:string ->
?protocol:string ->
?access_type:string ->
?cidrs:string list ->
?common_name:string ->
unit ->
port
val make_auto_snapshot_add_on :
?snapshot_time_of_day:string ->
unit ->
auto_snapshot_add_on
val make_tag : value:string -> key:string -> unit -> tag
val make_state : ?code:int -> ?name:string -> unit -> state
val make_disk :
?size_in_gb:string ->
path:string ->
?attachment_state:string ->
?is_system_disk:bool ->
?attached_to:string ->
?iops:int ->
disk_name:string ->
unit ->
disk
val make_location :
?region_name:string ->
?availability_zone:string ->
unit ->
location
val make_monthly_transfer :
?gb_per_month_allocated:string ->
unit ->
monthly_transfer
val make_add_on :
?status:string ->
add_on_type:string ->
?auto_snapshot_add_on_request:auto_snapshot_add_on ->
unit ->
add_on
val make_networking :
ports:port list ->
?monthly_transfer:monthly_transfer ->
unit ->
networking
val yojson_of_port : port -> Yojson.Safe.t
val yojson_of_auto_snapshot_add_on : auto_snapshot_add_on -> Yojson.Safe.t
val yojson_of_tag : tag -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_state : state -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_disk : disk -> Yojson.Safe.t
val yojson_of_location :
location ->
[> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_monthly_transfer : monthly_transfer -> Yojson.Safe.t
val yojson_of_hardware :
hardware ->
[> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_add_on : add_on -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_networking :
networking ->
[> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_properties :
properties ->
[> `Assoc of (string * Yojson.Safe.t) list ]
type attributes = {
ref_ : string;
ssh_key_name : string;
networking__monthly_transfer__gb_per_month_allocated : string;
hardware__cpu_count : int;
private_ip_address : string;
user_name : string;
resource_type : string;
location__region_name : string;
public_ip_address : string;
location__availability_zone : string;
state__code : int;
support_code : string;
state__name : string;
instance_arn : string;
hardware__ram_size_in_gb : int;
}
val create_attributes : string -> attributes