EC2.Instancesee http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.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-ec2-mount-point.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html
and private_dns_name_options = {enable_resource_name_dns_aaaa_record : bool option;enable_resource_name_dns_a_record : bool option;hostname_type : string option;}see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-privatednsnameoptions.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-nodevice.html;
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-licensespecification.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-launchtemplatespecification.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-instanceipv6address.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-hibernationoptions.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-enclaveoptions.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-elasticinferenceaccelerator.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-elasticgpuspecification.html
and ebs = {delete_on_termination : bool option;encrypted : bool option;iops : int option;kms_key_id : string option;snapshot_id : string option;volume_size : int option;volume_type : string option;}see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-template.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-creditspecification.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-cpuoptions.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations-associationparameters.html
and ssm_association = {association_parameters : association_parameter list option;document_name : string;}see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations.html
and network_interface = {associate_carrier_ip_address : bool option;associate_public_ip_address : bool option;delete_on_termination : bool option;description : string option;device_index : string;group_set : string list option;ipv6_address_count : int option;ipv6_addresses : instance_ipv6_address list option;network_interface_id : string option;private_ip_address : string option;private_ip_addresses : private_ip_address_specification list option;secondary_private_ip_address_count : int option;subnet_id : string option;}see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-mapping.html
type properties = {additional_info : string option;affinity : string option;availability_zone : string option;block_device_mappings : block_device_mapping list option;cpu_options : cpu_options option;credit_specification : credit_specification option;disable_api_termination : bool option;ebs_optimized : bool option;elastic_gpu_specifications : elastic_gpu_specification list option;elastic_inference_accelerators : elastic_inference_accelerator list option;enclave_options : enclave_options option;hibernation_options : hibernation_options option;host_id : string option;host_resource_group_arn : string option;iam_instance_profile : string option;image_id : string option;instance_initiated_shutdown_behavior : string option;instance_type : string option;ipv6_address_count : int option;ipv6_addresses : instance_ipv6_address list option;kernel_id : string option;key_name : string option;launch_template : launch_template_specification option;license_specifications : license_specification list option;monitoring : bool option;network_interfaces : network_interface list option;placement_group_name : string option;private_dns_name_options : private_dns_name_options option;private_ip_address : string option;ramdisk_id : string option;security_group_ids : string list option;security_groups : string list option;source_dest_check : bool option;ssm_associations : ssm_association list option;subnet_id : string option;tenancy : string option;user_data : string option;volumes : volume list option;}see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html;
val make_properties :
?additional_info:string ->
?affinity:string ->
?availability_zone:string ->
?block_device_mappings:block_device_mapping list ->
?cpu_options:cpu_options ->
?credit_specification:credit_specification ->
?disable_api_termination:bool ->
?ebs_optimized:bool ->
?elastic_gpu_specifications:elastic_gpu_specification list ->
?elastic_inference_accelerators:elastic_inference_accelerator list ->
?enclave_options:enclave_options ->
?hibernation_options:hibernation_options ->
?host_id:string ->
?host_resource_group_arn:string ->
?iam_instance_profile:string ->
?image_id:string ->
?instance_initiated_shutdown_behavior:string ->
?instance_type:string ->
?ipv6_address_count:int ->
?ipv6_addresses:instance_ipv6_address list ->
?kernel_id:string ->
?key_name:string ->
?launch_template:launch_template_specification ->
?license_specifications:license_specification list ->
?monitoring:bool ->
?network_interfaces:network_interface list ->
?placement_group_name:string ->
?private_dns_name_options:private_dns_name_options ->
?private_ip_address:string ->
?propagate_tags_to_volume_on_creation:bool ->
?ramdisk_id:string ->
?security_group_ids:string list ->
?security_groups:string list ->
?source_dest_check:bool ->
?ssm_associations:ssm_association list ->
?subnet_id:string ->
?tags:tag list ->
?tenancy:string ->
?user_data:string ->
?volumes:volume list ->
unit ->
propertiesval make_tag : key:string -> value:string -> unit -> tagval make_volume : device:string -> volume_id:string -> unit -> volumeval make_private_ip_address_specification :
primary:bool ->
private_ip_address:string ->
unit ->
private_ip_address_specificationval make_private_dns_name_options :
?enable_resource_name_dns_aaaa_record:bool ->
?enable_resource_name_dns_a_record:bool ->
?hostname_type:string ->
unit ->
private_dns_name_optionsval make_license_specification :
license_configuration_arn:string ->
unit ->
license_specificationval make_launch_template_specification :
?launch_template_id:string ->
?launch_template_name:string ->
version:string ->
unit ->
launch_template_specificationval make_instance_ipv6_address :
ipv6_address:string ->
unit ->
instance_ipv6_addressval make_hibernation_options : ?configured:bool -> unit -> hibernation_optionsval make_enclave_options : ?enabled:bool -> unit -> enclave_optionsval make_elastic_inference_accelerator :
?count:int ->
type_:string ->
unit ->
elastic_inference_acceleratorval make_elastic_gpu_specification :
type_:string ->
unit ->
elastic_gpu_specificationval make_ebs :
?delete_on_termination:bool ->
?encrypted:bool ->
?iops:int ->
?kms_key_id:string ->
?snapshot_id:string ->
?volume_size:int ->
?volume_type:string ->
unit ->
ebsval make_credit_specification :
?cpu_credits:string ->
unit ->
credit_specificationval make_cpu_options :
?core_count:int ->
?threads_per_core:int ->
unit ->
cpu_optionsval make_association_parameter :
key:string ->
value:string list ->
unit ->
association_parameterval make_ssm_association :
?association_parameters:association_parameter list ->
document_name:string ->
unit ->
ssm_associationval make_network_interface :
?associate_carrier_ip_address:bool ->
?associate_public_ip_address:bool ->
?delete_on_termination:bool ->
?description:string ->
device_index:string ->
?group_set:string list ->
?ipv6_address_count:int ->
?ipv6_addresses:instance_ipv6_address list ->
?network_interface_id:string ->
?private_ip_address:string ->
?private_ip_addresses:private_ip_address_specification list ->
?secondary_private_ip_address_count:int ->
?subnet_id:string ->
unit ->
network_interfaceval make_block_device_mapping :
device_name:string ->
?ebs:ebs ->
?no_device:no_device ->
?virtual_name:string ->
unit ->
block_device_mappingval yojson_of_tag : tag -> [> `Assoc of (string * Yojson.Safe.t) list ]val yojson_of_volume : volume -> [> `Assoc of (string * Yojson.Safe.t) list ]val yojson_of_private_ip_address_specification :
private_ip_address_specification ->
Yojson.Safe.tval yojson_of_private_dns_name_options :
private_dns_name_options ->
[> `Assoc of (string * Yojson.Safe.t) list ]val yojson_of_no_device : no_device -> Yojson.Safe.tval yojson_of_license_specification :
license_specification ->
[> `Assoc of (string * Yojson.Safe.t) list ]val yojson_of_launch_template_specification :
launch_template_specification ->
[> `Assoc of (string * Yojson.Safe.t) list ]val yojson_of_instance_ipv6_address : instance_ipv6_address -> Yojson.Safe.tval yojson_of_hibernation_options :
hibernation_options ->
[> `Assoc of (string * Yojson.Safe.t) list ]val yojson_of_enclave_options :
enclave_options ->
[> `Assoc of (string * Yojson.Safe.t) list ]val yojson_of_elastic_inference_accelerator :
elastic_inference_accelerator ->
[> `Assoc of (string * Yojson.Safe.t) list ]val yojson_of_elastic_gpu_specification :
elastic_gpu_specification ->
[> `Assoc of (string * Yojson.Safe.t) list ]val yojson_of_ebs : ebs -> Yojson.Safe.tval yojson_of_credit_specification :
credit_specification ->
[> `Assoc of (string * Yojson.Safe.t) list ]val yojson_of_cpu_options :
cpu_options ->
[> `Assoc of (string * Yojson.Safe.t) list ]val yojson_of_association_parameter : association_parameter -> Yojson.Safe.tval yojson_of_ssm_association :
ssm_association ->
[> `Assoc of (string * Yojson.Safe.t) list ]val yojson_of_network_interface :
network_interface ->
[> `Assoc of (string * Yojson.Safe.t) list ]val yojson_of_block_device_mapping :
block_device_mapping ->
[> `Assoc of (string * Yojson.Safe.t) list ]val yojson_of_properties :
properties ->
[> `Assoc of (string * Yojson.Safe.t) list ]val create_attributes : string -> attributes