Module Elasticsearch.Domain

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html

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

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

and zone_awareness_config = {
  1. availability_zone_count : int option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-zoneawarenessconfig.html

and vpc_options = {
  1. security_group_ids : string list option;
  2. subnet_ids : string list option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-vpcoptions.html

and snapshot_options = {
  1. automated_snapshot_start_hour : int option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-snapshotoptions.html

and node_to_node_encryption_options = {
  1. enabled : bool option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-nodetonodeencryptionoptions.html

and master_user_options = {
  1. master_user_arn : string option;
  2. master_user_name : string option;
  3. master_user_password : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-masteruseroptions.html

and log_publishing_option = {
  1. cloud_watch_logs_log_group_arn : string option;
  2. enabled : bool option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-logpublishingoption.html

and encryption_at_rest_options = {
  1. enabled : bool option;
  2. kms_key_id : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-encryptionatrestoptions.html

and ebs_options = {
  1. ebs_enabled : bool option;
  2. iops : int option;
  3. volume_size : int option;
  4. volume_type : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-ebsoptions.html

and domain_endpoint_options = {
  1. custom_endpoint : string option;
  2. custom_endpoint_certificate_arn : string option;
  3. custom_endpoint_enabled : bool option;
  4. enforce_https : bool option;
  5. tls_security_policy : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-domainendpointoptions.html

and cold_storage_options = {
  1. enabled : bool option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-coldstorageoptions.html

and cognito_options = {
  1. enabled : bool option;
  2. identity_pool_id : string option;
  3. role_arn : string option;
  4. user_pool_id : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-cognitooptions.html

and elasticsearch_cluster_config = {
  1. cold_storage_options : cold_storage_options option;
  2. dedicated_master_count : int option;
  3. dedicated_master_enabled : bool option;
  4. dedicated_master_type : string option;
  5. instance_count : int option;
  6. instance_type : string option;
  7. warm_count : int option;
  8. warm_enabled : bool option;
  9. warm_type : string option;
  10. zone_awareness_config : zone_awareness_config option;
  11. zone_awareness_enabled : bool option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html

and advanced_security_options_input = {
  1. anonymous_auth_enabled : bool option;
  2. enabled : bool option;
  3. internal_user_database_enabled : bool option;
  4. master_user_options : master_user_options option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-advancedsecurityoptionsinput.html

type properties = {
  1. access_policies : Yojson.Safe.t option;
  2. advanced_options : string Stdlib__Map.Make(Stdlib.String).t option;
  3. advanced_security_options : advanced_security_options_input option;
  4. cognito_options : cognito_options option;
  5. domain_endpoint_options : domain_endpoint_options option;
  6. domain_name : string option;
  7. ebs_options : ebs_options option;
  8. elasticsearch_cluster_config : elasticsearch_cluster_config option;
  9. elasticsearch_version : string option;
  10. encryption_at_rest_options : encryption_at_rest_options option;
  11. log_publishing_options : log_publishing_option Stdlib__Map.Make(Stdlib.String).t option;
  12. node_to_node_encryption_options : node_to_node_encryption_options option;
  13. snapshot_options : snapshot_options option;
  14. tags : tag list option;
  15. vpc_options : vpc_options option;
}

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

val make_properties : ?access_policies:Yojson.Safe.t -> ?advanced_options:string Stdlib__Map.Make(Stdlib.String).t -> ?advanced_security_options:advanced_security_options_input -> ?cognito_options:cognito_options -> ?domain_endpoint_options:domain_endpoint_options -> ?domain_name:string -> ?ebs_options:ebs_options -> ?elasticsearch_cluster_config:elasticsearch_cluster_config -> ?elasticsearch_version:string -> ?encryption_at_rest_options:encryption_at_rest_options -> ?log_publishing_options: log_publishing_option Stdlib__Map.Make(Stdlib.String).t -> ?node_to_node_encryption_options:node_to_node_encryption_options -> ?snapshot_options:snapshot_options -> ?tags:tag list -> ?vpc_options:vpc_options -> unit -> properties
val make_tag : key:string -> value:string -> unit -> tag
val make_zone_awareness_config : ?availability_zone_count:int -> unit -> zone_awareness_config
val make_vpc_options : ?security_group_ids:string list -> ?subnet_ids:string list -> unit -> vpc_options
val make_snapshot_options : ?automated_snapshot_start_hour:int -> unit -> snapshot_options
val make_node_to_node_encryption_options : ?enabled:bool -> unit -> node_to_node_encryption_options
val make_master_user_options : ?master_user_arn:string -> ?master_user_name:string -> ?master_user_password:string -> unit -> master_user_options
val make_log_publishing_option : ?cloud_watch_logs_log_group_arn:string -> ?enabled:bool -> unit -> log_publishing_option
val make_encryption_at_rest_options : ?enabled:bool -> ?kms_key_id:string -> unit -> encryption_at_rest_options
val make_ebs_options : ?ebs_enabled:bool -> ?iops:int -> ?volume_size:int -> ?volume_type:string -> unit -> ebs_options
val make_domain_endpoint_options : ?custom_endpoint:string -> ?custom_endpoint_certificate_arn:string -> ?custom_endpoint_enabled:bool -> ?enforce_https:bool -> ?tls_security_policy:string -> unit -> domain_endpoint_options
val make_cold_storage_options : ?enabled:bool -> unit -> cold_storage_options
val make_cognito_options : ?enabled:bool -> ?identity_pool_id:string -> ?role_arn:string -> ?user_pool_id:string -> unit -> cognito_options
val make_elasticsearch_cluster_config : ?cold_storage_options:cold_storage_options -> ?dedicated_master_count:int -> ?dedicated_master_enabled:bool -> ?dedicated_master_type:string -> ?instance_count:int -> ?instance_type:string -> ?warm_count:int -> ?warm_enabled:bool -> ?warm_type:string -> ?zone_awareness_config:zone_awareness_config -> ?zone_awareness_enabled:bool -> unit -> elasticsearch_cluster_config
val make_advanced_security_options_input : ?anonymous_auth_enabled:bool -> ?enabled:bool -> ?internal_user_database_enabled:bool -> ?master_user_options:master_user_options -> unit -> advanced_security_options_input
val yojson_of_tag : tag -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_zone_awareness_config : zone_awareness_config -> Yojson.Safe.t
val yojson_of_vpc_options : vpc_options -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_snapshot_options : snapshot_options -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_node_to_node_encryption_options : node_to_node_encryption_options -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_master_user_options : master_user_options -> Yojson.Safe.t
val yojson_of_log_publishing_option : log_publishing_option -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_encryption_at_rest_options : encryption_at_rest_options -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_ebs_options : ebs_options -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_domain_endpoint_options : domain_endpoint_options -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_cold_storage_options : cold_storage_options -> Yojson.Safe.t
val yojson_of_cognito_options : cognito_options -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_elasticsearch_cluster_config : elasticsearch_cluster_config -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_advanced_security_options_input : advanced_security_options_input -> [> `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. arn : string;
  3. domain_arn : string;
  4. domain_endpoint : string;
}
val create_attributes : string -> attributes
val cloudformation_type : string