Module ECS.TaskDefinition

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html

type repository_credentials = {
  1. credentials_parameter : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-repositorycredentials.html

and port_mapping = {
  1. app_protocol : string option;
  2. container_port_range : string option;
  3. host_port : int option;
  4. container_port : int option;
  5. protocol : string option;
  6. name : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-portmapping.html

and authorization_config = {
  1. iam : string option;
  2. access_point_id : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-authorizationconfig.html

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

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

and secret = {
  1. value_from : string;
  2. name : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-secret.html

and runtime_platform = {
  1. operating_system_family : string option;
  2. cpu_architecture : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-runtimeplatform.html

and task_definition_placement_constraint = {
  1. type_ : string;
  2. expression : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-taskdefinitionplacementconstraint.html

and system_control = {
  1. value : string option;
  2. namespace : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-systemcontrol.html

and key_value_pair = {
  1. value : string option;
  2. name : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-keyvaluepair.html

and ephemeral_storage = {
  1. size_in_gib : int option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-ephemeralstorage.html

and health_check = {
  1. command : string list option;
  2. timeout : int option;
  3. retries : int option;
  4. interval : int option;
  5. start_period : int option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-healthcheck.html

and volume_from = {
  1. read_only : bool option;
  2. source_container : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumefrom.html

and tmpfs = {
  1. size : int;
  2. container_path : string option;
  3. mount_options : string list option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-tmpfs.html

and kernel_capabilities = {
  1. add : string list option;
  2. drop : string list option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-kernelcapabilities.html

and host_entry = {
  1. hostname : string option;
  2. ip_address : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-hostentry.html

and docker_volume_configuration = {
  1. driver_opts : string Stdlib__Map.Make(Stdlib.String).t option;
  2. scope : string option;
  3. autoprovision : bool option;
  4. driver : string option;
  5. labels : string Stdlib__Map.Make(Stdlib.String).t option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-dockervolumeconfiguration.html

and mount_point = {
  1. read_only : bool option;
  2. source_volume : string option;
  3. container_path : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-mountpoint.html

and inference_accelerator = {
  1. device_type : string option;
  2. device_name : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-inferenceaccelerator.html

and container_dependency = {
  1. condition : string option;
  2. container_name : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdependency.html

and resource_requirement = {
  1. type_ : string;
  2. value : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-resourcerequirement.html

and device = {
  1. host_path : string option;
  2. permissions : string list option;
  3. container_path : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-device.html

and firelens_configuration = {
  1. options : string Stdlib__Map.Make(Stdlib.String).t option;
  2. type_ : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-firelensconfiguration.html

and host_volume_properties = {
  1. source_path : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-hostvolumeproperties.html

and environment_file = {
  1. type_ : string option;
  2. value : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-environmentfile.html

and ulimit = {
  1. soft_limit : int;
  2. hard_limit : int;
  3. name : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-ulimit.html

and log_configuration = {
  1. secret_options : secret list option;
  2. options : string Stdlib__Map.Make(Stdlib.String).t option;
  3. log_driver : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-logconfiguration.html

and linux_parameters = {
  1. capabilities : kernel_capabilities option;
  2. swappiness : int option;
  3. tmpfs : tmpfs list option;
  4. shared_memory_size : int option;
  5. devices : device list option;
  6. init_process_enabled : bool option;
  7. max_swap : int option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-linuxparameters.html

and proxy_configuration = {
  1. proxy_configuration_properties : key_value_pair list option;
  2. type_ : string option;
  3. container_name : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-proxyconfiguration.html

and efs_volume_configuration = {
  1. filesystem_id : string;
  2. transit_encryption : string option;
  3. authorization_config : authorization_config option;
  4. root_directory : string option;
  5. transit_encryption_port : int option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-efsvolumeconfiguration.html

and container_definition = {
  1. user : string option;
  2. secrets : secret list option;
  3. memory : int option;
  4. privileged : bool option;
  5. health_check : health_check option;
  6. start_timeout : int option;
  7. volumes_from : volume_from list option;
  8. cpu : int option;
  9. entry_point : string list option;
  10. dns_servers : string list option;
  11. readonly_root_filesystem : bool option;
  12. image : string;
  13. essential : bool option;
  14. log_configuration : log_configuration option;
  15. resource_requirements : resource_requirement list option;
  16. environment_files : environment_file list option;
  17. name : string;
  18. firelens_configuration : firelens_configuration option;
  19. docker_security_options : string list option;
  20. system_controls : system_control list option;
  21. interactive : bool option;
  22. dns_search_domains : string list option;
  23. credential_specs : string list option;
  24. ulimits : ulimit list option;
  25. stop_timeout : int option;
  26. working_directory : string option;
  27. memory_reservation : int option;
  28. repository_credentials : repository_credentials option;
  29. extra_hosts : host_entry list option;
  30. hostname : string option;
  31. linux_parameters : linux_parameters option;
  32. disable_networking : bool option;
  33. pseudo_terminal : bool option;
  34. mount_points : mount_point list option;
  35. depends_on : container_dependency list option;
  36. docker_labels : string Stdlib__Map.Make(Stdlib.String).t option;
  37. port_mappings : port_mapping list option;
  38. command : string list option;
  39. environment : key_value_pair list option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinition.html

and volume = {
  1. efs_volume_configuration : efs_volume_configuration option;
  2. host : host_volume_properties option;
  3. configured_at_launch : bool option;
  4. docker_volume_configuration : docker_volume_configuration option;
  5. name : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volume.html

type properties = {
  1. task_role_arn : string option;
  2. ipc_mode : string option;
  3. inference_accelerators : inference_accelerator list option;
  4. memory : string option;
  5. placement_constraints : task_definition_placement_constraint list option;
  6. cpu : string option;
  7. requires_compatibilities : string list option;
  8. network_mode : string option;
  9. pid_mode : string option;
  10. execution_role_arn : string option;
  11. runtime_platform : runtime_platform option;
  12. proxy_configuration : proxy_configuration option;
  13. volumes : volume list option;
  14. container_definitions : container_definition list option;
  15. family : string option;
  16. ephemeral_storage : ephemeral_storage option;
  17. tags : tag list option;
}

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

val make_properties : ?task_role_arn:string -> ?ipc_mode:string -> ?inference_accelerators:inference_accelerator list -> ?memory:string -> ?placement_constraints:task_definition_placement_constraint list -> ?cpu:string -> ?requires_compatibilities:string list -> ?network_mode:string -> ?pid_mode:string -> ?execution_role_arn:string -> ?runtime_platform:runtime_platform -> ?proxy_configuration:proxy_configuration -> ?volumes:volume list -> ?container_definitions:container_definition list -> ?family:string -> ?ephemeral_storage:ephemeral_storage -> ?tags:tag list -> unit -> properties
val make_repository_credentials : ?credentials_parameter:string -> unit -> repository_credentials
val make_port_mapping : ?app_protocol:string -> ?container_port_range:string -> ?host_port:int -> ?container_port:int -> ?protocol:string -> ?name:string -> unit -> port_mapping
val make_authorization_config : ?iam:string -> ?access_point_id:string -> unit -> authorization_config
val make_tag : value:string -> key:string -> unit -> tag
val make_secret : value_from:string -> name:string -> unit -> secret
val make_runtime_platform : ?operating_system_family:string -> ?cpu_architecture:string -> unit -> runtime_platform
val make_task_definition_placement_constraint : type_:string -> ?expression:string -> unit -> task_definition_placement_constraint
val make_system_control : ?value:string -> ?namespace:string -> unit -> system_control
val make_key_value_pair : ?value:string -> ?name:string -> unit -> key_value_pair
val make_ephemeral_storage : ?size_in_gib:int -> unit -> ephemeral_storage
val make_health_check : ?command:string list -> ?timeout:int -> ?retries:int -> ?interval:int -> ?start_period:int -> unit -> health_check
val make_volume_from : ?read_only:bool -> ?source_container:string -> unit -> volume_from
val make_tmpfs : size:int -> ?container_path:string -> ?mount_options:string list -> unit -> tmpfs
val make_kernel_capabilities : ?add:string list -> ?drop:string list -> unit -> kernel_capabilities
val make_host_entry : ?hostname:string -> ?ip_address:string -> unit -> host_entry
val make_docker_volume_configuration : ?driver_opts:string Stdlib__Map.Make(Stdlib.String).t -> ?scope:string -> ?autoprovision:bool -> ?driver:string -> ?labels:string Stdlib__Map.Make(Stdlib.String).t -> unit -> docker_volume_configuration
val make_mount_point : ?read_only:bool -> ?source_volume:string -> ?container_path:string -> unit -> mount_point
val make_inference_accelerator : ?device_type:string -> ?device_name:string -> unit -> inference_accelerator
val make_container_dependency : ?condition:string -> ?container_name:string -> unit -> container_dependency
val make_resource_requirement : type_:string -> value:string -> unit -> resource_requirement
val make_device : ?host_path:string -> ?permissions:string list -> ?container_path:string -> unit -> device
val make_firelens_configuration : ?options:string Stdlib__Map.Make(Stdlib.String).t -> ?type_:string -> unit -> firelens_configuration
val make_host_volume_properties : ?source_path:string -> unit -> host_volume_properties
val make_environment_file : ?type_:string -> ?value:string -> unit -> environment_file
val make_ulimit : soft_limit:int -> hard_limit:int -> name:string -> unit -> ulimit
val make_log_configuration : ?secret_options:secret list -> ?options:string Stdlib__Map.Make(Stdlib.String).t -> log_driver:string -> unit -> log_configuration
val make_linux_parameters : ?capabilities:kernel_capabilities -> ?swappiness:int -> ?tmpfs:tmpfs list -> ?shared_memory_size:int -> ?devices:device list -> ?init_process_enabled:bool -> ?max_swap:int -> unit -> linux_parameters
val make_proxy_configuration : ?proxy_configuration_properties:key_value_pair list -> ?type_:string -> container_name:string -> unit -> proxy_configuration
val make_efs_volume_configuration : filesystem_id:string -> ?transit_encryption:string -> ?authorization_config:authorization_config -> ?root_directory:string -> ?transit_encryption_port:int -> unit -> efs_volume_configuration
val make_container_definition : ?user:string -> ?secrets:secret list -> ?memory:int -> ?privileged:bool -> ?health_check:health_check -> ?start_timeout:int -> ?volumes_from:volume_from list -> ?cpu:int -> ?entry_point:string list -> ?dns_servers:string list -> ?readonly_root_filesystem:bool -> image:string -> ?essential:bool -> ?log_configuration:log_configuration -> ?resource_requirements:resource_requirement list -> ?environment_files:environment_file list -> name:string -> ?firelens_configuration:firelens_configuration -> ?docker_security_options:string list -> ?system_controls:system_control list -> ?interactive:bool -> ?dns_search_domains:string list -> ?credential_specs:string list -> ?ulimits:ulimit list -> ?stop_timeout:int -> ?working_directory:string -> ?memory_reservation:int -> ?repository_credentials:repository_credentials -> ?extra_hosts:host_entry list -> ?hostname:string -> ?linux_parameters:linux_parameters -> ?disable_networking:bool -> ?pseudo_terminal:bool -> ?mount_points:mount_point list -> ?depends_on:container_dependency list -> ?docker_labels:string Stdlib__Map.Make(Stdlib.String).t -> ?port_mappings:port_mapping list -> ?command:string list -> ?environment:key_value_pair list -> ?links:string list -> unit -> container_definition
val make_volume : ?efs_volume_configuration:efs_volume_configuration -> ?host:host_volume_properties -> ?configured_at_launch:bool -> ?docker_volume_configuration:docker_volume_configuration -> ?name:string -> unit -> volume
val yojson_of_repository_credentials : repository_credentials -> Yojson.Safe.t
val yojson_of_port_mapping : port_mapping -> Yojson.Safe.t
val yojson_of_authorization_config : authorization_config -> Yojson.Safe.t
val yojson_of_tag : tag -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_secret : secret -> Yojson.Safe.t
val yojson_of_runtime_platform : runtime_platform -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_task_definition_placement_constraint : task_definition_placement_constraint -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_system_control : system_control -> Yojson.Safe.t
val yojson_of_key_value_pair : key_value_pair -> Yojson.Safe.t
val yojson_of_ephemeral_storage : ephemeral_storage -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_health_check : health_check -> Yojson.Safe.t
val yojson_of_volume_from : volume_from -> Yojson.Safe.t
val yojson_of_tmpfs : tmpfs -> Yojson.Safe.t
val yojson_of_kernel_capabilities : kernel_capabilities -> Yojson.Safe.t
val yojson_of_host_entry : host_entry -> Yojson.Safe.t
val yojson_of_docker_volume_configuration : docker_volume_configuration -> Yojson.Safe.t
val yojson_of_mount_point : mount_point -> Yojson.Safe.t
val yojson_of_inference_accelerator : inference_accelerator -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_container_dependency : container_dependency -> Yojson.Safe.t
val yojson_of_resource_requirement : resource_requirement -> Yojson.Safe.t
val yojson_of_device : device -> Yojson.Safe.t
val yojson_of_firelens_configuration : firelens_configuration -> Yojson.Safe.t
val yojson_of_host_volume_properties : host_volume_properties -> Yojson.Safe.t
val yojson_of_environment_file : environment_file -> Yojson.Safe.t
val yojson_of_ulimit : ulimit -> Yojson.Safe.t
val yojson_of_log_configuration : log_configuration -> Yojson.Safe.t
val yojson_of_linux_parameters : linux_parameters -> Yojson.Safe.t
val yojson_of_proxy_configuration : proxy_configuration -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_efs_volume_configuration : efs_volume_configuration -> Yojson.Safe.t
val yojson_of_container_definition : container_definition -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_volume : volume -> [> `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. task_definition_arn : string;
}
val create_attributes : string -> attributes
val cloudformation_type : string