AWS::Batch::ComputeEnvironment LaunchTemplateSpecificationOverride
An object that represents a launch template to use in place of the default launch template. You must specify either the launch template ID or launch template name in the request, but not both.
If security groups are specified using both the securityGroupIds
parameter of
CreateComputeEnvironment
and the launch template, the values in the
securityGroupIds
parameter of CreateComputeEnvironment
will be
used.
You can define up to ten (10) overrides for each compute environment.
Note
This object isn't applicable to jobs that are running on Fargate resources.
Note
To unset all override templates for a compute environment, you can pass an empty array to the UpdateComputeEnvironment.overrides parameter, or not include the overrides
parameter when submitting the UpdateComputeEnvironment
API operation.
Syntax
To declare this entity in your AWS CloudFormation template, use the following syntax:
JSON
{ "LaunchTemplateId" :
String
, "LaunchTemplateName" :String
, "TargetInstanceTypes" :[ String, ... ]
, "Version" :String
}
YAML
LaunchTemplateId:
String
LaunchTemplateName:String
TargetInstanceTypes:- String
Version:String
Properties
LaunchTemplateId
-
The ID of the launch template.
Note: If you specify the
launchTemplateId
you can't specify thelaunchTemplateName
as well.Required: No
Type: String
Update requires: Some interruptions
LaunchTemplateName
-
The name of the launch template.
Note: If you specify the
launchTemplateName
you can't specify thelaunchTemplateId
as well.Required: No
Type: String
Update requires: Some interruptions
TargetInstanceTypes
-
The instance type or family that this this override launch template should be applied to.
This parameter is required when defining a launch template override.
Information included in this parameter must meet the following requirements:
-
Must be a valid Amazon EC2 instance type or family.
-
optimal
isn't allowed. -
targetInstanceTypes
can target only instance types and families that are included within theComputeResource.instanceTypes
set.targetInstanceTypes
doesn't need to include all of the instances from theinstanceType
set, but at least a subset. For example, ifComputeResource.instanceTypes
includes[m5, g5]
,targetInstanceTypes
can include[m5.2xlarge]
and[m5.large]
but not[c5.large]
. -
targetInstanceTypes
included within the same launch template override or across launch template overrides can't overlap for the same compute environment. For example, you can't define one launch template override to target an instance family and another define an instance type within this same family.
Required: No
Type: Array of String
Update requires: Some interruptions
-
Version
-
The version number of the launch template,
$Default
, or$Latest
.If the value is
$Default
, the default version of the launch template is used. If the value is$Latest
, the latest version of the launch template is used.Important
If the AMI ID that's used in a compute environment is from the launch template, the AMI isn't changed when the compute environment is updated. It's only changed if the
updateToLatestImageVersion
parameter for the compute environment is set totrue
. During an infrastructure update, if either$Default
or$Latest
is specified, AWS Batch re-evaluates the launch template version, and it might use a different version of the launch template. This is the case even if the launch template isn't specified in the update. When updating a compute environment, changing the launch template requires an infrastructure update of the compute environment. For more information, see Updating compute environments in the AWS Batch User Guide.Default:
$Default
Latest:
$Latest
Required: No
Type: String
Update requires: Some interruptions