Batch.JobDefinition
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-podproperties-metadata.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-resourcerequirement.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ekscontainervolumemount.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-fargateplatformconfiguration.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-tmpfs.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ekshostpath.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ekscontainerenvironmentvariable.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-runtimeplatform.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ekssecret.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-authorizationconfig.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-repositorycredentials.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-environment.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ekscontainerresourcerequirements.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-mountpoints.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-timeout.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-volumeshost.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ulimit.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-device.html
and eks_container_security_context = {
run_as_user : int option;
run_as_non_root : bool option;
privileged : bool option;
read_only_root_filesystem : bool option;
run_as_group : int option;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ekscontainersecuritycontext.html
and evaluate_on_exit = {
action : string;
on_exit_code : string option;
on_reason : string option;
on_status_reason : string option;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-evaluateonexit.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-eksemptydir.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-ephemeralstorage.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-secret.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-networkconfiguration.html
and eks_volume = {
secret : eks_secret option;
empty_dir : eks_empty_dir option;
host_path : eks_host_path option;
name : string;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-eksvolume.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-retrystrategy.html
and linux_parameters = {
swappiness : int option;
tmpfs : tmpfs list option;
devices : device list option;
init_process_enabled : bool option;
max_swap : int option;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-linuxparameters.html
and log_configuration = {
secret_options : secret list option;
options : Yojson.Safe.t option;
log_driver : string;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-logconfiguration.html
and eks_container = {
args : string list option;
volume_mounts : eks_container_volume_mount list option;
image_pull_policy : string option;
command : string list option;
security_context : eks_container_security_context option;
resources : eks_container_resource_requirements option;
image : string;
env : eks_container_environment_variable list option;
name : string option;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ekscontainer.html
and efs_volume_configuration = {
transit_encryption : string option;
file_system_id : string;
root_directory : string option;
transit_encryption_port : int option;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-efsvolumeconfiguration.html
and pod_properties = {
volumes : eks_volume list option;
dns_policy : string option;
containers : eks_container list option;
metadata : metadata option;
service_account_name : string option;
host_network : bool option;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-podproperties.html
and volumes = {
host : volumes_host option;
efs_volume_configuration : efs_volume_configuration option;
name : string option;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-volumes.html
and container_properties = {
repository_credentials : repository_credentials option;
user : string option;
secrets : secret list option;
memory : int option;
privileged : bool option;
linux_parameters : linux_parameters option;
fargate_platform_configuration : fargate_platform_configuration option;
job_role_arn : string option;
readonly_root_filesystem : bool option;
vcpus : int option;
image : string;
resource_requirements : resource_requirement list option;
log_configuration : log_configuration option;
mount_points : mount_points list option;
execution_role_arn : string option;
runtime_platform : runtime_platform option;
volumes : volumes list option;
command : string list option;
environment : environment list option;
ulimits : ulimit list option;
network_configuration : network_configuration option;
instance_type : string option;
ephemeral_storage : ephemeral_storage option;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-eksproperties.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-noderangeproperty.html
and node_properties = {
main_node : int;
node_range_properties : node_range_property list;
num_nodes : int;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-nodeproperties.html
type properties = {
type_ : string;
parameters : Yojson.Safe.t option;
node_properties : node_properties option;
scheduling_priority : int option;
timeout : timeout option;
container_properties : container_properties option;
job_definition_name : string option;
platform_capabilities : string list option;
eks_properties : eks_properties option;
retry_strategy : retry_strategy option;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html;
val make_properties :
type_:string ->
?parameters:Yojson.Safe.t ->
?node_properties:node_properties ->
?scheduling_priority:int ->
?timeout:timeout ->
?container_properties:container_properties ->
?job_definition_name:string ->
?propagate_tags:bool ->
?platform_capabilities:string list ->
?eks_properties:eks_properties ->
?retry_strategy:retry_strategy ->
?tags:Yojson.Safe.t ->
unit ->
properties
val make_metadata : ?labels:Yojson.Safe.t -> unit -> metadata
val make_resource_requirement :
?type_:string ->
?value:string ->
unit ->
resource_requirement
val make_eks_container_volume_mount :
?mount_path:string ->
?read_only:bool ->
?name:string ->
unit ->
eks_container_volume_mount
val make_fargate_platform_configuration :
?platform_version:string ->
unit ->
fargate_platform_configuration
val make_tmpfs :
size:int ->
container_path:string ->
?mount_options:string list ->
unit ->
tmpfs
val make_eks_host_path : ?path:string -> unit -> eks_host_path
val make_eks_container_environment_variable :
?value:string ->
name:string ->
unit ->
eks_container_environment_variable
val make_runtime_platform :
?operating_system_family:string ->
?cpu_architecture:string ->
unit ->
runtime_platform
val make_eks_secret :
secret_name:string ->
?optional:bool ->
unit ->
eks_secret
val make_authorization_config :
?iam:string ->
?access_point_id:string ->
unit ->
authorization_config
val make_repository_credentials :
credentials_parameter:string ->
unit ->
repository_credentials
val make_environment : ?value:string -> ?name:string -> unit -> environment
val make_eks_container_resource_requirements :
?limits:Yojson.Safe.t ->
?requests:Yojson.Safe.t ->
unit ->
eks_container_resource_requirements
val make_mount_points :
?read_only:bool ->
?source_volume:string ->
?container_path:string ->
unit ->
mount_points
val make_timeout : ?attempt_duration_seconds:int -> unit -> timeout
val make_volumes_host : ?source_path:string -> unit -> volumes_host
val make_ulimit :
soft_limit:int ->
hard_limit:int ->
name:string ->
unit ->
ulimit
val make_device :
?host_path:string ->
?permissions:string list ->
?container_path:string ->
unit ->
device
val make_eks_container_security_context :
?run_as_user:int ->
?run_as_non_root:bool ->
?privileged:bool ->
?read_only_root_filesystem:bool ->
?run_as_group:int ->
unit ->
eks_container_security_context
val make_evaluate_on_exit :
action:string ->
?on_exit_code:string ->
?on_reason:string ->
?on_status_reason:string ->
unit ->
evaluate_on_exit
val make_eks_empty_dir :
?medium:string ->
?size_limit:string ->
unit ->
eks_empty_dir
val make_ephemeral_storage : size_in_gib:int -> unit -> ephemeral_storage
val make_secret : value_from:string -> name:string -> unit -> secret
val make_network_configuration :
?assign_public_ip:string ->
unit ->
network_configuration
val make_eks_volume :
?secret:eks_secret ->
?empty_dir:eks_empty_dir ->
?host_path:eks_host_path ->
name:string ->
unit ->
eks_volume
val make_retry_strategy :
?evaluate_on_exit:evaluate_on_exit list ->
?attempts:int ->
unit ->
retry_strategy
val make_linux_parameters :
?swappiness:int ->
?tmpfs:tmpfs list ->
?shared_memory_size:int ->
?devices:device list ->
?init_process_enabled:bool ->
?max_swap:int ->
unit ->
linux_parameters
val make_log_configuration :
?secret_options:secret list ->
?options:Yojson.Safe.t ->
log_driver:string ->
unit ->
log_configuration
val make_eks_container :
?args:string list ->
?volume_mounts:eks_container_volume_mount list ->
?image_pull_policy:string ->
?command:string list ->
?security_context:eks_container_security_context ->
?resources:eks_container_resource_requirements ->
image:string ->
?env:eks_container_environment_variable list ->
?name:string ->
unit ->
eks_container
val make_efs_volume_configuration :
?transit_encryption:string ->
?authorization_config:authorization_config ->
file_system_id:string ->
?root_directory:string ->
?transit_encryption_port:int ->
unit ->
efs_volume_configuration
val make_pod_properties :
?volumes:eks_volume list ->
?dns_policy:string ->
?containers:eks_container list ->
?metadata:metadata ->
?service_account_name:string ->
?host_network:bool ->
unit ->
pod_properties
val make_volumes :
?host:volumes_host ->
?efs_volume_configuration:efs_volume_configuration ->
?name:string ->
unit ->
volumes
val make_container_properties :
?repository_credentials:repository_credentials ->
?user:string ->
?secrets:secret list ->
?memory:int ->
?privileged:bool ->
?linux_parameters:linux_parameters ->
?fargate_platform_configuration:fargate_platform_configuration ->
?job_role_arn:string ->
?readonly_root_filesystem:bool ->
?vcpus:int ->
image:string ->
?resource_requirements:resource_requirement list ->
?log_configuration:log_configuration ->
?mount_points:mount_points list ->
?execution_role_arn:string ->
?runtime_platform:runtime_platform ->
?volumes:volumes list ->
?command:string list ->
?environment:environment list ->
?ulimits:ulimit list ->
?network_configuration:network_configuration ->
?instance_type:string ->
?ephemeral_storage:ephemeral_storage ->
unit ->
container_properties
val make_eks_properties :
?pod_properties:pod_properties ->
unit ->
eks_properties
val make_node_range_property :
?container:container_properties ->
target_nodes:string ->
unit ->
node_range_property
val make_node_properties :
main_node:int ->
node_range_properties:node_range_property list ->
num_nodes:int ->
unit ->
node_properties
val yojson_of_metadata : metadata -> Yojson.Safe.t
val yojson_of_resource_requirement : resource_requirement -> Yojson.Safe.t
val yojson_of_eks_container_volume_mount :
eks_container_volume_mount ->
Yojson.Safe.t
val yojson_of_fargate_platform_configuration :
fargate_platform_configuration ->
Yojson.Safe.t
val yojson_of_tmpfs : tmpfs -> Yojson.Safe.t
val yojson_of_eks_host_path : eks_host_path -> Yojson.Safe.t
val yojson_of_eks_container_environment_variable :
eks_container_environment_variable ->
Yojson.Safe.t
val yojson_of_runtime_platform : runtime_platform -> Yojson.Safe.t
val yojson_of_eks_secret : eks_secret -> Yojson.Safe.t
val yojson_of_authorization_config : authorization_config -> Yojson.Safe.t
val yojson_of_repository_credentials : repository_credentials -> Yojson.Safe.t
val yojson_of_environment : environment -> Yojson.Safe.t
val yojson_of_eks_container_resource_requirements :
eks_container_resource_requirements ->
Yojson.Safe.t
val yojson_of_mount_points : mount_points -> Yojson.Safe.t
val yojson_of_timeout : timeout -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_volumes_host : volumes_host -> Yojson.Safe.t
val yojson_of_ulimit : ulimit -> Yojson.Safe.t
val yojson_of_device : device -> Yojson.Safe.t
val yojson_of_eks_container_security_context :
eks_container_security_context ->
Yojson.Safe.t
val yojson_of_evaluate_on_exit : evaluate_on_exit -> Yojson.Safe.t
val yojson_of_eks_empty_dir : eks_empty_dir -> Yojson.Safe.t
val yojson_of_ephemeral_storage : ephemeral_storage -> Yojson.Safe.t
val yojson_of_secret : secret -> Yojson.Safe.t
val yojson_of_network_configuration : network_configuration -> Yojson.Safe.t
val yojson_of_eks_volume : eks_volume -> Yojson.Safe.t
val yojson_of_retry_strategy :
retry_strategy ->
[> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_linux_parameters : linux_parameters -> Yojson.Safe.t
val yojson_of_log_configuration : log_configuration -> Yojson.Safe.t
val yojson_of_eks_container : eks_container -> Yojson.Safe.t
val yojson_of_efs_volume_configuration :
efs_volume_configuration ->
Yojson.Safe.t
val yojson_of_pod_properties : pod_properties -> Yojson.Safe.t
val yojson_of_volumes : volumes -> Yojson.Safe.t
val yojson_of_container_properties : container_properties -> Yojson.Safe.t
val yojson_of_eks_properties :
eks_properties ->
[> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_node_range_property : node_range_property -> Yojson.Safe.t
val yojson_of_node_properties :
node_properties ->
[> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_properties :
properties ->
[> `Assoc of (string * Yojson.Safe.t) list ]
val create_attributes : string -> attributes