Class LaunchTemplateSpecificationOverride
- java.lang.Object
-
- software.amazon.awssdk.services.batch.model.LaunchTemplateSpecificationOverride
-
- All Implemented Interfaces:
Serializable,SdkPojo,ToCopyableBuilder<LaunchTemplateSpecificationOverride.Builder,LaunchTemplateSpecificationOverride>
@Generated("software.amazon.awssdk:codegen") public final class LaunchTemplateSpecificationOverride extends Object implements SdkPojo, Serializable, ToCopyableBuilder<LaunchTemplateSpecificationOverride.Builder,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
securityGroupIdsparameter ofCreateComputeEnvironmentand the launch template, the values in thesecurityGroupIdsparameter ofCreateComputeEnvironmentwill be used.You can define up to ten (10) overrides for each compute environment.
This object isn't applicable to jobs that are running on Fargate resources.
To unset all override templates for a compute environment, you can pass an empty array to the UpdateComputeEnvironment.overrides parameter, or not include the
overridesparameter when submitting theUpdateComputeEnvironmentAPI operation.- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceLaunchTemplateSpecificationOverride.Builder
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static LaunchTemplateSpecificationOverride.Builderbuilder()booleanequals(Object obj)booleanequalsBySdkFields(Object obj)<T> Optional<T>getValueForField(String fieldName, Class<T> clazz)inthashCode()booleanhasTargetInstanceTypes()For responses, this returns true if the service returned a value for the TargetInstanceTypes property.StringlaunchTemplateId()The ID of the launch template.StringlaunchTemplateName()The name of the launch template.Map<String,SdkField<?>>sdkFieldNameToField()List<SdkField<?>>sdkFields()static Class<? extends LaunchTemplateSpecificationOverride.Builder>serializableBuilderClass()List<String>targetInstanceTypes()The instance type or family that this override launch template should be applied to.LaunchTemplateSpecificationOverride.BuildertoBuilder()StringtoString()Returns a string representation of this object.Stringversion()The version number of the launch template,$Default, or$Latest.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
-
-
-
Method Detail
-
launchTemplateId
public final String launchTemplateId()
The ID of the launch template.
Note: If you specify the
launchTemplateIdyou can't specify thelaunchTemplateNameas well.- Returns:
- The ID of the launch template.
Note: If you specify the
launchTemplateIdyou can't specify thelaunchTemplateNameas well.
-
launchTemplateName
public final String launchTemplateName()
The name of the launch template.
Note: If you specify the
launchTemplateNameyou can't specify thelaunchTemplateIdas well.- Returns:
- The name of the launch template.
Note: If you specify the
launchTemplateNameyou can't specify thelaunchTemplateIdas well.
-
version
public final String 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.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
updateToLatestImageVersionparameter for the compute environment is set totrue. During an infrastructure update, if either$Defaultor$Latestis specified, 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 Batch User Guide.Default:
$DefaultLatest:
$Latest- Returns:
- 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.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
updateToLatestImageVersionparameter for the compute environment is set totrue. During an infrastructure update, if either$Defaultor$Latestis specified, 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 Batch User Guide.Default:
$DefaultLatest:
$Latest
-
hasTargetInstanceTypes
public final boolean hasTargetInstanceTypes()
For responses, this returns true if the service returned a value for the TargetInstanceTypes property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
-
targetInstanceTypes
public final List<String> targetInstanceTypes()
The instance type or family that 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.
-
optimalisn't allowed. -
targetInstanceTypescan target only instance types and families that are included within theComputeResource.instanceTypesset.targetInstanceTypesdoesn't need to include all of the instances from theinstanceTypeset, but at least a subset. For example, ifComputeResource.instanceTypesincludes[m5, g5],targetInstanceTypescan include[m5.2xlarge]and[m5.large]but not[c5.large]. -
targetInstanceTypesincluded 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.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasTargetInstanceTypes()method.- Returns:
- The instance type or family that 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.
-
optimalisn't allowed. -
targetInstanceTypescan target only instance types and families that are included within theComputeResource.instanceTypesset.targetInstanceTypesdoesn't need to include all of the instances from theinstanceTypeset, but at least a subset. For example, ifComputeResource.instanceTypesincludes[m5, g5],targetInstanceTypescan include[m5.2xlarge]and[m5.large]but not[c5.large]. -
targetInstanceTypesincluded 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.
-
-
-
toBuilder
public LaunchTemplateSpecificationOverride.Builder toBuilder()
- Specified by:
toBuilderin interfaceToCopyableBuilder<LaunchTemplateSpecificationOverride.Builder,LaunchTemplateSpecificationOverride>
-
builder
public static LaunchTemplateSpecificationOverride.Builder builder()
-
serializableBuilderClass
public static Class<? extends LaunchTemplateSpecificationOverride.Builder> serializableBuilderClass()
-
equalsBySdkFields
public final boolean equalsBySdkFields(Object obj)
- Specified by:
equalsBySdkFieldsin interfaceSdkPojo
-
toString
public final String toString()
Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
-
sdkFieldNameToField
public final Map<String,SdkField<?>> sdkFieldNameToField()
- Specified by:
sdkFieldNameToFieldin interfaceSdkPojo
-
-