Public/Resource Property Types/Add-VSECSTaskDefinitionContainerDefinition.ps1
function Add-VSECSTaskDefinitionContainerDefinition { <# .SYNOPSIS Adds an AWS::ECS::TaskDefinition.ContainerDefinition resource property to the template .DESCRIPTION Adds an AWS::ECS::TaskDefinition.ContainerDefinition resource property to the template .LINK http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html .PARAMETER Command Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-command DuplicatesAllowed: False PrimitiveItemType: String Required: False Type: List UpdateType: Immutable .PARAMETER Cpu Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-cpu PrimitiveType: Integer Required: False UpdateType: Immutable .PARAMETER DisableNetworking Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-disablenetworking PrimitiveType: Boolean Required: False UpdateType: Immutable .PARAMETER DnsSearchDomains Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-dnssearchdomains DuplicatesAllowed: False PrimitiveItemType: String Required: False Type: List UpdateType: Immutable .PARAMETER DnsServers Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-dnsservers DuplicatesAllowed: False PrimitiveItemType: String Required: False Type: List UpdateType: Immutable .PARAMETER DockerLabels Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-dockerlabels DuplicatesAllowed: False PrimitiveItemType: String Required: False Type: Map UpdateType: Immutable .PARAMETER DockerSecurityOptions Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-dockersecurityoptions DuplicatesAllowed: False PrimitiveItemType: String Required: False Type: List UpdateType: Immutable .PARAMETER EntryPoint Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-entrypoint DuplicatesAllowed: False PrimitiveItemType: String Required: False Type: List UpdateType: Immutable .PARAMETER Environment Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-environment DuplicatesAllowed: False ItemType: KeyValuePair Required: False Type: List UpdateType: Immutable .PARAMETER Essential Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-essential PrimitiveType: Boolean Required: False UpdateType: Immutable .PARAMETER ExtraHosts Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-extrahosts DuplicatesAllowed: False ItemType: HostEntry Required: False Type: List UpdateType: Immutable .PARAMETER Hostname Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-hostname PrimitiveType: String Required: False UpdateType: Immutable .PARAMETER Image Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-image PrimitiveType: String Required: False UpdateType: Immutable .PARAMETER Links Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-links DuplicatesAllowed: False PrimitiveItemType: String Required: False Type: List UpdateType: Immutable .PARAMETER LogConfiguration Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-logconfiguration Required: False Type: LogConfiguration UpdateType: Immutable .PARAMETER Memory Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-memory PrimitiveType: Integer Required: False UpdateType: Immutable .PARAMETER MemoryReservation Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-memoryreservation PrimitiveType: Integer Required: False UpdateType: Immutable .PARAMETER MountPoints Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-mountpoints DuplicatesAllowed: False ItemType: MountPoint Required: False Type: List UpdateType: Immutable .PARAMETER Name Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-name PrimitiveType: String Required: False UpdateType: Immutable .PARAMETER PortMappings Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-portmappings DuplicatesAllowed: False ItemType: PortMapping Required: False Type: List UpdateType: Immutable .PARAMETER Privileged Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-privileged PrimitiveType: Boolean Required: False UpdateType: Immutable .PARAMETER ReadonlyRootFilesystem Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-readonlyrootfilesystem PrimitiveType: Boolean Required: False UpdateType: Immutable .PARAMETER Ulimits Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-ulimits DuplicatesAllowed: False ItemType: Ulimit Required: False Type: List UpdateType: Immutable .PARAMETER User Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-user PrimitiveType: String Required: False UpdateType: Immutable .PARAMETER VolumesFrom Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-volumesfrom DuplicatesAllowed: False ItemType: VolumeFrom Required: False Type: List UpdateType: Immutable .PARAMETER WorkingDirectory Documentation: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-workingdirectory PrimitiveType: String Required: False UpdateType: Immutable .FUNCTIONALITY Vaporshell #> [OutputType('Vaporshell.Resource.ECS.TaskDefinition.ContainerDefinition')] [cmdletbinding()] Param ( [parameter(Mandatory = $false)] $Command, [parameter(Mandatory = $false)] [Int] $Cpu, [parameter(Mandatory = $false)] [System.Boolean] $DisableNetworking, [parameter(Mandatory = $false)] $DnsSearchDomains, [parameter(Mandatory = $false)] $DnsServers, [parameter(Mandatory = $false)] [System.Collections.Hashtable] $DockerLabels, [parameter(Mandatory = $false)] $DockerSecurityOptions, [parameter(Mandatory = $false)] $EntryPoint, [parameter(Mandatory = $false)] [ValidateScript( { $allowedTypes = "Vaporshell.Resource.ECS.TaskDefinition.KeyValuePair" if ([string]$($_.PSTypeNames) -match "($(($allowedTypes|ForEach-Object{[RegEx]::Escape($_)}) -join '|'))") { $true } else { throw "This parameter only accepts the following types: $($allowedTypes -join ", "). The current types of the value are: $($_.PSTypeNames -join ", ")." } })] $Environment, [parameter(Mandatory = $false)] [System.Boolean] $Essential, [parameter(Mandatory = $false)] [ValidateScript( { $allowedTypes = "Vaporshell.Resource.ECS.TaskDefinition.HostEntry" if ([string]$($_.PSTypeNames) -match "($(($allowedTypes|ForEach-Object{[RegEx]::Escape($_)}) -join '|'))") { $true } else { throw "This parameter only accepts the following types: $($allowedTypes -join ", "). The current types of the value are: $($_.PSTypeNames -join ", ")." } })] $ExtraHosts, [parameter(Mandatory = $false)] [ValidateScript( { $allowedTypes = "System.String","Vaporshell.Function" if ([string]$($_.PSTypeNames) -match "($(($allowedTypes|ForEach-Object{[RegEx]::Escape($_)}) -join '|'))") { $true } else { throw "This parameter only accepts the following types: $($allowedTypes -join ", "). The current types of the value are: $($_.PSTypeNames -join ", ")." } })] $Hostname, [parameter(Mandatory = $false)] [ValidateScript( { $allowedTypes = "System.String","Vaporshell.Function" if ([string]$($_.PSTypeNames) -match "($(($allowedTypes|ForEach-Object{[RegEx]::Escape($_)}) -join '|'))") { $true } else { throw "This parameter only accepts the following types: $($allowedTypes -join ", "). The current types of the value are: $($_.PSTypeNames -join ", ")." } })] $Image, [parameter(Mandatory = $false)] $Links, [parameter(Mandatory = $false)] $LogConfiguration, [parameter(Mandatory = $false)] [Int] $Memory, [parameter(Mandatory = $false)] [Int] $MemoryReservation, [parameter(Mandatory = $false)] [ValidateScript( { $allowedTypes = "Vaporshell.Resource.ECS.TaskDefinition.MountPoint" if ([string]$($_.PSTypeNames) -match "($(($allowedTypes|ForEach-Object{[RegEx]::Escape($_)}) -join '|'))") { $true } else { throw "This parameter only accepts the following types: $($allowedTypes -join ", "). The current types of the value are: $($_.PSTypeNames -join ", ")." } })] $MountPoints, [parameter(Mandatory = $false)] [ValidateScript( { $allowedTypes = "System.String","Vaporshell.Function" if ([string]$($_.PSTypeNames) -match "($(($allowedTypes|ForEach-Object{[RegEx]::Escape($_)}) -join '|'))") { $true } else { throw "This parameter only accepts the following types: $($allowedTypes -join ", "). The current types of the value are: $($_.PSTypeNames -join ", ")." } })] $Name, [parameter(Mandatory = $false)] [ValidateScript( { $allowedTypes = "Vaporshell.Resource.ECS.TaskDefinition.PortMapping" if ([string]$($_.PSTypeNames) -match "($(($allowedTypes|ForEach-Object{[RegEx]::Escape($_)}) -join '|'))") { $true } else { throw "This parameter only accepts the following types: $($allowedTypes -join ", "). The current types of the value are: $($_.PSTypeNames -join ", ")." } })] $PortMappings, [parameter(Mandatory = $false)] [System.Boolean] $Privileged, [parameter(Mandatory = $false)] [System.Boolean] $ReadonlyRootFilesystem, [parameter(Mandatory = $false)] [ValidateScript( { $allowedTypes = "Vaporshell.Resource.ECS.TaskDefinition.Ulimit" if ([string]$($_.PSTypeNames) -match "($(($allowedTypes|ForEach-Object{[RegEx]::Escape($_)}) -join '|'))") { $true } else { throw "This parameter only accepts the following types: $($allowedTypes -join ", "). The current types of the value are: $($_.PSTypeNames -join ", ")." } })] $Ulimits, [parameter(Mandatory = $false)] [ValidateScript( { $allowedTypes = "System.String","Vaporshell.Function" if ([string]$($_.PSTypeNames) -match "($(($allowedTypes|ForEach-Object{[RegEx]::Escape($_)}) -join '|'))") { $true } else { throw "This parameter only accepts the following types: $($allowedTypes -join ", "). The current types of the value are: $($_.PSTypeNames -join ", ")." } })] $User, [parameter(Mandatory = $false)] [ValidateScript( { $allowedTypes = "Vaporshell.Resource.ECS.TaskDefinition.VolumeFrom" if ([string]$($_.PSTypeNames) -match "($(($allowedTypes|ForEach-Object{[RegEx]::Escape($_)}) -join '|'))") { $true } else { throw "This parameter only accepts the following types: $($allowedTypes -join ", "). The current types of the value are: $($_.PSTypeNames -join ", ")." } })] $VolumesFrom, [parameter(Mandatory = $false)] [ValidateScript( { $allowedTypes = "System.String","Vaporshell.Function" if ([string]$($_.PSTypeNames) -match "($(($allowedTypes|ForEach-Object{[RegEx]::Escape($_)}) -join '|'))") { $true } else { throw "This parameter only accepts the following types: $($allowedTypes -join ", "). The current types of the value are: $($_.PSTypeNames -join ", ")." } })] $WorkingDirectory ) Begin { $obj = [PSCustomObject]@{} } Process { foreach ($key in $PSBoundParameters.Keys) { $val = $((Get-Variable $key).Value) if ($val -eq "True") { $val = "true" } elseif ($val -eq "False") { $val = "false" } $obj | Add-Member -MemberType NoteProperty -Name $key -Value $val } } End { $obj | Add-ObjectDetail -TypeName 'Vaporshell.Resource.ECS.TaskDefinition.ContainerDefinition' } } |