Interface AwsComputeSource
- All Superinterfaces:
ComputeSource, Credentialed, Identified, Named, Serializable
- All Known Implementing Classes:
AwsFleetComputeSource, AwsInstancesComputeSource
@ValidatedBy(AwsComputeSourceValidator.class)
public interface AwsComputeSource
extends ComputeSource
Derives from
ComputeSource to provide the interface for all AWS compute source model objects.-
Field Summary
Fields inherited from interface ComputeSource
DEFAULT_ASSIGN_PUBLIC_IP -
Method Summary
Modifier and TypeMethodDescription@NotBlank String@Valid AwsPlacementGroup@Min(1L) @Max(64L) IntegerGets the custom instance tags to be set on the provisioned instance at startup.default CloudProviderGets the Cloud Provider for this source.@Size(max=31) List<AwsSecondaryNetworkInterface> @NotBlank Stringdefault StringGets the provider-specific subregion (aka Availability Domain, Availability Zone or Zone) where instances will be provisioned.Indicates if supporting resources have been created for this source.booleanvoidsetSupportingResourceCreated(Boolean supportingResourceCreated) Methods inherited from interface ComputeSource
getCreatedFromId, getExhaustion, getId, getImageId, getInstancePricing, getInstanceSummary, getInstanceType, getLimit, getName, getRegion, getStatus, getStatusMessage, getTraits, getUserData, setCreatedFromId, setExhaustion, setId, setImageId, setInstanceSummary, setInstanceTags, setInstanceType, setLimit, setName, setStatus, setStatusMessage, setUserDataMethods inherited from interface Credentialed
getCredentials
-
Method Details
-
getProvider
Description copied from interface:ComputeSourceGets the Cloud Provider for this source.- Specified by:
getProviderin interfaceComputeSource- Returns:
- the Cloud Provider for this source
-
getCredential
- Specified by:
getCredentialin interfaceComputeSource
-
getSubregion
Description copied from interface:ComputeSourceGets the provider-specific subregion (aka Availability Domain, Availability Zone or Zone) where instances will be provisioned.- Specified by:
getSubregionin interfaceComputeSource- Returns:
- the provider-specific subregion where instances will be provisioned
-
getSupportingResourceCreated
Description copied from interface:ComputeSourceIndicates if supporting resources have been created for this source.- Specified by:
getSupportingResourceCreatedin interfaceComputeSource- Returns:
- true, if supporting resources have been created for this source; false, if no supporting resources have been created; null, if unknown
-
setSupportingResourceCreated
-
getAvailabilityZone
@JsonPropertyDescription("The AWS availability zone within the region where instances will be provisioned") String getAvailabilityZone() -
getSecurityGroupId
@NotBlank @JsonPropertyDescription("The ID of the AWS Security Group for provisioned instances") @NotBlank String getSecurityGroupId() -
getSubnetId
@JsonPropertyDescription("The region-specific subnet ID to use for provisioned instances") String getSubnetId() -
getIamInstanceProfileArn
@JsonPropertyDescription("The ARN of the IAM Instance Profile to use for provisioned instances") String getIamInstanceProfileArn() -
getKeyName
@JsonPropertyDescription("The name of the EC2 key pair to use when logging into any instances provisioned from this source") String getKeyName() -
getEnableDetailedMonitoring
@JsonPropertyDescription("Enabled detailed CloudWatch monitoring for provisioned instances") Boolean getEnableDetailedMonitoring() -
getEnableInstanceMetadataTags
@JsonPropertyDescription("Enabled exposure of instance tags via instance metadata for provisioned instances") Boolean getEnableInstanceMetadataTags() -
getInstanceMetadataHttpPutResponseHopLimit
@Min(1L) @Max(64L) @JsonPropertyDescription("The number of network hops that an instance metadata service (IMDS) response is allowed to travel from provisioned instances. If not specified, the AWS default of 1 is used, which only allows processes running on the instance's host network to reach IMDS. Raise this when task workloads run in containers and need IMDS access (for example, to obtain instance-profile credentials or instance metadata): each container network boundary the response must cross consumes one hop, so use 2 for a single bridged container and 3 or more for nested, container-in-container workloads.") @Min(1L) @Max(64L) Integer getInstanceMetadataHttpPutResponseHopLimit() -
isAssignPublicIp
@JsonPropertyDescription("Assign public IP address to provisioned instances") boolean isAssignPublicIp() -
getCreateClusterPlacementGroup
@JsonPropertyDescription("Provision the instances within a cluster placement group") Boolean getCreateClusterPlacementGroup() -
getExistingPlacementGroup
@JsonPropertyDescription("Provision the instances within an existing placement group") @Valid @Valid AwsPlacementGroup getExistingPlacementGroup() -
getCreateElasticFabricAdapter
@JsonPropertyDescription("Create EFA network interface on provisioned instances") Boolean getCreateElasticFabricAdapter() -
getSecondaryNetworkInterfaces
@JsonPropertyDescription("Secondary network interfaces to create on provisioned instances") @Size(max=31) @Size(max=31) List<AwsSecondaryNetworkInterface> getSecondaryNetworkInterfaces() -
getCapacityReservation
@JsonPropertyDescription("Specifies the capacity reservation to target for provisioned instances") AwsCapacityReservation getCapacityReservation() -
getInstanceTags
Description copied from interface:ComputeSourceGets the custom instance tags to be set on the provisioned instance at startup.- Specified by:
getInstanceTagsin interfaceComputeSource- Returns:
- the custom instance tags
-
getBootVolumeSizeGb
@JsonPropertyDescription("Specifies the size of the boot volume (in GB) for provisioned instances. If not specified, the default size for the selected image will be used.") Integer getBootVolumeSizeGb()
-