{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--aws-ecs-taskdefinition.json",
  "title": "AWSECSTaskDefinitionProperties",
  "description": "Resource Schema describing various properties for ECS TaskDefinition. Source:- <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html>",
  "x-lintel": {
    "source": "https://raw.githubusercontent.com/lalcebo/json-schema/master/serverless/resources/cloudformation-modified/aws-ecs-taskdefinition.json",
    "sourceSha256": "4480782b29cfc9a5c218f8cc0fa76293685ea39c8d82d81853470e40502eed07"
  },
  "type": "object",
  "properties": {
    "Family": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ]
    },
    "ContainerDefinitions": {
      "type": "array",
      "insertionOrder": false,
      "uniqueItems": true,
      "items": {
        "$ref": "#/$defs/ContainerDefinition"
      }
    },
    "Cpu": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ]
    },
    "ExecutionRoleArn": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ]
    },
    "EphemeralStorage": {
      "$ref": "#/$defs/EphemeralStorage"
    },
    "InferenceAccelerators": {
      "type": "array",
      "insertionOrder": false,
      "uniqueItems": true,
      "items": {
        "$ref": "#/$defs/InferenceAccelerator"
      }
    },
    "Memory": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ]
    },
    "NetworkMode": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ]
    },
    "PlacementConstraints": {
      "type": "array",
      "insertionOrder": false,
      "uniqueItems": true,
      "items": {
        "$ref": "#/$defs/TaskDefinitionPlacementConstraint"
      }
    },
    "ProxyConfiguration": {
      "$ref": "#/$defs/ProxyConfiguration"
    },
    "RequiresCompatibilities": {
      "type": "array",
      "insertionOrder": false,
      "uniqueItems": true,
      "items": {
        "type": "string"
      }
    },
    "TaskRoleArn": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ]
    },
    "Volumes": {
      "type": "array",
      "insertionOrder": false,
      "uniqueItems": true,
      "items": {
        "$ref": "#/$defs/Volume"
      }
    },
    "PidMode": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ]
    },
    "RuntimePlatform": {
      "$ref": "#/$defs/RuntimePlatform"
    },
    "IpcMode": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ]
    },
    "Tags": {
      "type": "array",
      "insertionOrder": false,
      "items": {
        "$ref": "#/$defs/Tag"
      }
    }
  },
  "typeName": "AWS::ECS::TaskDefinition",
  "propertyTransform": {
    "/properties/TaskRoleArn": "TaskRoleArn $OR $split(TaskRoleArn, \"role/\")[-1]"
  },
  "sourceUrl": "https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html",
  "additionalProperties": false,
  "$defs": {
    "ContainerDefinition": {
      "description": "List of container definitions that are passed to the Docker daemon on a container instance",
      "type": "object",
      "required": [
        "Name",
        "Image"
      ],
      "properties": {
        "Command": {
          "type": "array",
          "insertionOrder": true,
          "items": {
            "type": "string"
          }
        },
        "Cpu": {
          "type": "integer"
        },
        "DependsOn": {
          "type": "array",
          "insertionOrder": false,
          "items": {
            "$ref": "#/$defs/ContainerDependency"
          }
        },
        "DisableNetworking": {
          "type": "boolean"
        },
        "DnsSearchDomains": {
          "type": "array",
          "insertionOrder": false,
          "items": {
            "type": "string"
          }
        },
        "DnsServers": {
          "type": "array",
          "insertionOrder": false,
          "items": {
            "type": "string"
          }
        },
        "DockerLabels": {
          "type": "object",
          "additionalProperties": false,
          "patternProperties": {
            ".{1,}": {
              "type": "string"
            }
          }
        },
        "DockerSecurityOptions": {
          "type": "array",
          "insertionOrder": false,
          "items": {
            "type": "string"
          }
        },
        "EntryPoint": {
          "type": "array",
          "insertionOrder": true,
          "items": {
            "type": "string"
          }
        },
        "Environment": {
          "description": "The environment variables to pass to a container",
          "type": "array",
          "insertionOrder": true,
          "uniqueItems": true,
          "items": {
            "$ref": "#/$defs/KeyValuePair"
          }
        },
        "EnvironmentFiles": {
          "description": "The list of one or more files that contain the environment variables to pass to a container",
          "type": "array",
          "insertionOrder": true,
          "items": {
            "$ref": "#/$defs/EnvironmentFile"
          }
        },
        "Essential": {
          "type": "boolean"
        },
        "ExtraHosts": {
          "type": "array",
          "insertionOrder": false,
          "items": {
            "$ref": "#/$defs/HostEntry"
          }
        },
        "FirelensConfiguration": {
          "$ref": "#/$defs/FirelensConfiguration"
        },
        "HealthCheck": {
          "$ref": "#/$defs/HealthCheck"
        },
        "Hostname": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "Image": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ],
          "description": "The image used to start a container. This string is passed directly to the Docker daemon."
        },
        "Links": {
          "type": "array",
          "insertionOrder": false,
          "uniqueItems": true,
          "items": {
            "type": "string"
          }
        },
        "LinuxParameters": {
          "$ref": "#/$defs/LinuxParameters"
        },
        "LogConfiguration": {
          "$ref": "#/$defs/LogConfiguration"
        },
        "Memory": {
          "description": "The amount (in MiB) of memory to present to the container. If your container attempts to exceed the memory specified here, the container is killed.",
          "type": "integer"
        },
        "MemoryReservation": {
          "type": "integer"
        },
        "MountPoints": {
          "type": "array",
          "insertionOrder": true,
          "uniqueItems": true,
          "items": {
            "$ref": "#/$defs/MountPoint"
          }
        },
        "Name": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ],
          "description": "The name of a container. Up to 255 letters (uppercase and lowercase), numbers, hyphens, and underscores are allowed"
        },
        "PortMappings": {
          "description": "Port mappings allow containers to access ports on the host container instance to send or receive traffic.",
          "type": "array",
          "insertionOrder": false,
          "uniqueItems": true,
          "items": {
            "$ref": "#/$defs/PortMapping"
          }
        },
        "Privileged": {
          "type": "boolean"
        },
        "ReadonlyRootFilesystem": {
          "type": "boolean"
        },
        "RepositoryCredentials": {
          "$ref": "#/$defs/RepositoryCredentials"
        },
        "ResourceRequirements": {
          "type": "array",
          "insertionOrder": false,
          "items": {
            "$ref": "#/$defs/ResourceRequirement"
          }
        },
        "Secrets": {
          "type": "array",
          "insertionOrder": false,
          "items": {
            "$ref": "#/$defs/Secret"
          }
        },
        "StartTimeout": {
          "type": "integer"
        },
        "StopTimeout": {
          "type": "integer"
        },
        "Ulimits": {
          "type": "array",
          "insertionOrder": false,
          "items": {
            "$ref": "#/$defs/Ulimit"
          }
        },
        "User": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "VolumesFrom": {
          "type": "array",
          "insertionOrder": false,
          "uniqueItems": true,
          "items": {
            "$ref": "#/$defs/VolumeFrom"
          }
        },
        "WorkingDirectory": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "Interactive": {
          "type": "boolean"
        },
        "PseudoTerminal": {
          "type": "boolean"
        },
        "SystemControls": {
          "type": "array",
          "insertionOrder": false,
          "items": {
            "$ref": "#/$defs/SystemControl"
          }
        }
      },
      "title": "AWSECSTaskDefinitionContainerDefinition",
      "additionalProperties": false
    },
    "SystemControl": {
      "type": "object",
      "properties": {
        "Namespace": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "Value": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "title": "AWSECSTaskDefinitionSystemControlDefinition",
      "additionalProperties": false
    },
    "ContainerDependency": {
      "type": "object",
      "properties": {
        "ContainerName": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "Condition": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "title": "AWSECSTaskDefinitionContainerDependencyDefinition",
      "additionalProperties": false
    },
    "Device": {
      "type": "object",
      "properties": {
        "ContainerPath": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "HostPath": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "Permissions": {
          "type": "array",
          "insertionOrder": false,
          "uniqueItems": true,
          "items": {
            "type": "string"
          }
        }
      },
      "title": "AWSECSTaskDefinitionDeviceDefinition",
      "additionalProperties": false
    },
    "DockerVolumeConfiguration": {
      "type": "object",
      "properties": {
        "Autoprovision": {
          "type": "boolean"
        },
        "Driver": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "DriverOpts": {
          "type": "object",
          "additionalProperties": false,
          "patternProperties": {
            ".{1,}": {
              "type": "string"
            }
          }
        },
        "Labels": {
          "type": "object",
          "additionalProperties": false,
          "patternProperties": {
            ".{1,}": {
              "type": "string"
            }
          }
        },
        "Scope": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "title": "AWSECSTaskDefinitionDockerVolumeConfigurationDefinition",
      "additionalProperties": false
    },
    "AuthorizationConfig": {
      "type": "object",
      "properties": {
        "IAM": {
          "oneOf": [
            {
              "type": "string",
              "enum": [
                "ENABLED",
                "DISABLED"
              ]
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "AccessPointId": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "title": "AWSECSTaskDefinitionAuthorizationConfigDefinition",
      "additionalProperties": false
    },
    "EFSVolumeConfiguration": {
      "type": "object",
      "required": [
        "FilesystemId"
      ],
      "properties": {
        "FilesystemId": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "RootDirectory": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "TransitEncryption": {
          "oneOf": [
            {
              "type": "string",
              "enum": [
                "ENABLED",
                "DISABLED"
              ]
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "TransitEncryptionPort": {
          "type": "integer"
        },
        "AuthorizationConfig": {
          "$ref": "#/$defs/AuthorizationConfig"
        }
      },
      "title": "AWSECSTaskDefinitionEFSVolumeConfigurationDefinition",
      "additionalProperties": false
    },
    "EnvironmentFile": {
      "type": "object",
      "properties": {
        "Value": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "Type": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "title": "AWSECSTaskDefinitionEnvironmentFileDefinition",
      "additionalProperties": false
    },
    "EphemeralStorage": {
      "type": "object",
      "properties": {
        "SizeInGiB": {
          "type": "integer"
        }
      },
      "title": "AWSECSTaskDefinitionEphemeralStorageDefinition",
      "additionalProperties": false
    },
    "FirelensConfiguration": {
      "type": "object",
      "properties": {
        "Type": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "Options": {
          "type": "object",
          "additionalProperties": false,
          "patternProperties": {
            ".{1,}": {
              "type": "string"
            }
          }
        }
      },
      "title": "AWSECSTaskDefinitionFirelensConfigurationDefinition",
      "additionalProperties": false
    },
    "HealthCheck": {
      "description": "The health check command and associated configuration parameters for the container.",
      "type": "object",
      "properties": {
        "Command": {
          "description": "A string array representing the command that the container runs to determine if it is healthy.",
          "type": "array",
          "insertionOrder": true,
          "items": {
            "type": "string"
          }
        },
        "Interval": {
          "description": "The time period in seconds between each health check execution. You may specify between 5 and 300 seconds. The default value is 30 seconds.",
          "type": "integer"
        },
        "Timeout": {
          "description": "The time period in seconds to wait for a health check to succeed before it is considered a failure. You may specify between 2 and 60 seconds. The default value is 5 seconds.",
          "type": "integer"
        },
        "Retries": {
          "description": "The number of times to retry a failed health check before the container is considered unhealthy. You may specify between 1 and 10 retries. The default value is three retries.",
          "type": "integer"
        },
        "StartPeriod": {
          "description": "The optional grace period within which to provide containers time to bootstrap before failed health checks count towards the maximum number of retries. You may specify between 0 and 300 seconds. The startPeriod is disabled by default.",
          "type": "integer"
        }
      },
      "title": "AWSECSTaskDefinitionHealthCheckDefinition",
      "additionalProperties": false
    },
    "HostEntry": {
      "type": "object",
      "properties": {
        "Hostname": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "IpAddress": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "title": "AWSECSTaskDefinitionHostEntryDefinition",
      "additionalProperties": false
    },
    "HostVolumeProperties": {
      "type": "object",
      "properties": {
        "SourcePath": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "title": "AWSECSTaskDefinitionHostVolumePropertiesDefinition",
      "additionalProperties": false
    },
    "InferenceAccelerator": {
      "type": "object",
      "properties": {
        "DeviceName": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "DeviceType": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "title": "AWSECSTaskDefinitionInferenceAcceleratorDefinition",
      "additionalProperties": false
    },
    "KernelCapabilities": {
      "type": "object",
      "properties": {
        "Add": {
          "type": "array",
          "insertionOrder": false,
          "items": {
            "type": "string"
          }
        },
        "Drop": {
          "type": "array",
          "insertionOrder": false,
          "items": {
            "type": "string"
          }
        }
      },
      "title": "AWSECSTaskDefinitionKernelCapabilitiesDefinition",
      "additionalProperties": false
    },
    "KeyValuePair": {
      "type": "object",
      "properties": {
        "Name": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "Value": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "title": "AWSECSTaskDefinitionKeyValuePairDefinition",
      "additionalProperties": false
    },
    "LinuxParameters": {
      "type": "object",
      "properties": {
        "Capabilities": {
          "$ref": "#/$defs/KernelCapabilities"
        },
        "Devices": {
          "type": "array",
          "insertionOrder": false,
          "items": {
            "$ref": "#/$defs/Device"
          }
        },
        "InitProcessEnabled": {
          "type": "boolean"
        },
        "MaxSwap": {
          "type": "integer"
        },
        "SharedMemorySize": {
          "type": "integer"
        },
        "Swappiness": {
          "type": "integer"
        },
        "Tmpfs": {
          "type": "array",
          "insertionOrder": false,
          "items": {
            "$ref": "#/$defs/Tmpfs"
          }
        }
      },
      "title": "AWSECSTaskDefinitionLinuxParametersDefinition",
      "additionalProperties": false
    },
    "LogConfiguration": {
      "type": "object",
      "required": [
        "LogDriver"
      ],
      "properties": {
        "LogDriver": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "Options": {
          "type": "object",
          "additionalProperties": false,
          "patternProperties": {
            ".{1,}": {
              "type": "string"
            }
          }
        },
        "SecretOptions": {
          "type": "array",
          "insertionOrder": false,
          "items": {
            "$ref": "#/$defs/Secret"
          }
        }
      },
      "title": "AWSECSTaskDefinitionLogConfigurationDefinition",
      "additionalProperties": false
    },
    "PortMapping": {
      "type": "object",
      "properties": {
        "Name": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "ContainerPort": {
          "type": "integer"
        },
        "ContainerPortRange": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "HostPort": {
          "type": "integer"
        },
        "Protocol": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "AppProtocol": {
          "oneOf": [
            {
              "type": "string",
              "enum": [
                "http",
                "http2",
                "grpc"
              ]
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "title": "AWSECSTaskDefinitionPortMappingDefinition",
      "additionalProperties": false
    },
    "MountPoint": {
      "type": "object",
      "properties": {
        "ContainerPath": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "ReadOnly": {
          "type": "boolean"
        },
        "SourceVolume": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "title": "AWSECSTaskDefinitionMountPointDefinition",
      "additionalProperties": false
    },
    "ProxyConfiguration": {
      "type": "object",
      "required": [
        "ContainerName"
      ],
      "properties": {
        "ContainerName": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "ProxyConfigurationProperties": {
          "type": "array",
          "insertionOrder": false,
          "uniqueItems": true,
          "items": {
            "$ref": "#/$defs/KeyValuePair"
          }
        },
        "Type": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "title": "AWSECSTaskDefinitionProxyConfigurationDefinition",
      "additionalProperties": false
    },
    "RepositoryCredentials": {
      "type": "object",
      "properties": {
        "CredentialsParameter": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "title": "AWSECSTaskDefinitionRepositoryCredentialsDefinition",
      "additionalProperties": false
    },
    "ResourceRequirement": {
      "type": "object",
      "required": [
        "Type",
        "Value"
      ],
      "properties": {
        "Type": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "Value": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "title": "AWSECSTaskDefinitionResourceRequirementDefinition",
      "additionalProperties": false
    },
    "RuntimePlatform": {
      "type": "object",
      "properties": {
        "CpuArchitecture": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "OperatingSystemFamily": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "title": "AWSECSTaskDefinitionRuntimePlatformDefinition",
      "additionalProperties": false
    },
    "Secret": {
      "type": "object",
      "required": [
        "Name",
        "ValueFrom"
      ],
      "properties": {
        "Name": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "ValueFrom": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "title": "AWSECSTaskDefinitionSecretDefinition",
      "additionalProperties": false
    },
    "TaskDefinitionPlacementConstraint": {
      "type": "object",
      "required": [
        "Type"
      ],
      "properties": {
        "Type": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "Expression": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "title": "AWSECSTaskDefinitionTaskDefinitionPlacementConstraintDefinition",
      "additionalProperties": false
    },
    "Tmpfs": {
      "type": "object",
      "required": [
        "Size"
      ],
      "properties": {
        "ContainerPath": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "MountOptions": {
          "type": "array",
          "insertionOrder": false,
          "items": {
            "type": "string"
          }
        },
        "Size": {
          "type": "integer"
        }
      },
      "title": "AWSECSTaskDefinitionTmpfsDefinition",
      "additionalProperties": false
    },
    "Ulimit": {
      "type": "object",
      "required": [
        "HardLimit",
        "Name",
        "SoftLimit"
      ],
      "properties": {
        "HardLimit": {
          "type": "integer"
        },
        "Name": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "SoftLimit": {
          "type": "integer"
        }
      },
      "title": "AWSECSTaskDefinitionUlimitDefinition",
      "additionalProperties": false
    },
    "Volume": {
      "type": "object",
      "properties": {
        "DockerVolumeConfiguration": {
          "$ref": "#/$defs/DockerVolumeConfiguration"
        },
        "EFSVolumeConfiguration": {
          "$ref": "#/$defs/EFSVolumeConfiguration"
        },
        "Host": {
          "$ref": "#/$defs/HostVolumeProperties"
        },
        "Name": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "title": "AWSECSTaskDefinitionVolumeDefinition",
      "additionalProperties": false
    },
    "VolumeFrom": {
      "type": "object",
      "properties": {
        "ReadOnly": {
          "type": "boolean"
        },
        "SourceContainer": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "title": "AWSECSTaskDefinitionVolumeFromDefinition",
      "additionalProperties": false
    },
    "Tag": {
      "type": "object",
      "properties": {
        "Key": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "Value": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "title": "AWSECSTaskDefinitionTagDefinition",
      "additionalProperties": false
    }
  },
  "primaryIdentifier": [
    "/properties/TaskDefinitionArn"
  ],
  "tagging": {
    "taggable": true,
    "tagOnCreate": true,
    "tagUpdatable": true,
    "cloudFormationSystemTags": true,
    "tagProperty": "/properties/Tags"
  },
  "createOnlyProperties": [
    "/properties/Family",
    "/properties/ContainerDefinitions",
    "/properties/Cpu",
    "/properties/ExecutionRoleArn",
    "/properties/InferenceAccelerators",
    "/properties/Memory",
    "/properties/NetworkMode",
    "/properties/PlacementConstraints",
    "/properties/ProxyConfiguration",
    "/properties/RequiresCompatibilities",
    "/properties/RuntimePlatform",
    "/properties/TaskRoleArn",
    "/properties/Volumes",
    "/properties/PidMode",
    "/properties/IpcMode",
    "/properties/EphemeralStorage"
  ],
  "readOnlyProperties": [
    "/properties/TaskDefinitionArn"
  ]
}
