Interface GceComputeSource
- All Superinterfaces:
ComputeSource
,Credentialed
,Identified
,Named
,Serializable
- All Known Implementing Classes:
GceInstanceGroupComputeSource
,GceInstancesComputeSource
@ValidatedBy(GceComputeSourceValidator.class)
public interface GceComputeSource
extends ComputeSource
Derives from
ComputeSource
to provide the interface for all Google Compute Engine (GCE) compute source model objects.-
Field Summary
Fields inherited from interface co.yellowdog.platform.model.ComputeSource
DEFAULT_ASSIGN_PUBLIC_IP
-
Method Summary
Modifier and TypeMethodDescriptionint
@NotBlank String
@NotBlank String
getImage()
default String
Gets the image ID to use for the instances that will be provisioned.default InstancePricing
Gets the instance pricing for this source, e.g.Gets the custom instance tags to be set on the provisioned instance at startup.default String
Gets the provider-specific instance type of the instances that will be provisioned.@NotBlank String
@NotBlank String
default CloudProvider
Gets the Cloud Provider for this source.Gets the provider-specific region where instances will be provisioned.default String
Gets 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.getZone()
boolean
boolean
boolean
boolean
isSpot()
void
default void
setImageId
(String imageId) Sets the image ID to use for the instances that will be provisioned.default void
setInstanceType
(String instanceType) Sets the provider-specific instance type of the instances that will be provisioned.void
setMachineType
(String machineType) void
setSupportingResourceCreated
(Boolean supportingResourceCreated) Methods inherited from interface co.yellowdog.platform.model.ComputeSource
getCreatedFromId, getExhaustion, getId, getInstanceSummary, getLimit, getName, getStatus, getStatusMessage, getTraits, getUserData, setCreatedFromId, setExhaustion, setId, setInstanceSummary, setInstanceTags, setLimit, setName, setStatus, setStatusMessage, setUserData
Methods inherited from interface co.yellowdog.platform.model.Credentialed
getCredentials
-
Method Details
-
getProvider
Description copied from interface:ComputeSource
Gets the Cloud Provider for this source.- Specified by:
getProvider
in interfaceComputeSource
- Returns:
- the Cloud Provider for this source
-
getInstancePricing
Description copied from interface:ComputeSource
Gets the instance pricing for this source, e.g. Spot- Specified by:
getInstancePricing
in interfaceComputeSource
- Returns:
- the instance pricing for this source
-
getCredential
- Specified by:
getCredential
in interfaceComputeSource
-
getRegion
String getRegion()Description copied from interface:ComputeSource
Gets the provider-specific region where instances will be provisioned.- Specified by:
getRegion
in interfaceComputeSource
- Returns:
- the provider-specific region where instances will be provisioned
-
getSubregion
Description copied from interface:ComputeSource
Gets the provider-specific subregion (aka Availability Domain, Availability Zone or Zone) where instances will be provisioned.- Specified by:
getSubregion
in interfaceComputeSource
- Returns:
- the provider-specific subregion where instances will be provisioned
-
getInstanceType
Description copied from interface:ComputeSource
Gets the provider-specific instance type of the instances that will be provisioned.- Specified by:
getInstanceType
in interfaceComputeSource
- Returns:
- the provider-specific instance type of the instances that will be provisioned
-
setInstanceType
Description copied from interface:ComputeSource
Sets the provider-specific instance type of the instances that will be provisioned.- Specified by:
setInstanceType
in interfaceComputeSource
- Parameters:
instanceType
- the provider-specific instance type of the instances that will be provisioned
-
getImageId
Description copied from interface:ComputeSource
Gets the image ID to use for the instances that will be provisioned.- Specified by:
getImageId
in interfaceComputeSource
- Returns:
- the image ID to use for the instances that will be provisioned
-
setImageId
Description copied from interface:ComputeSource
Sets the image ID to use for the instances that will be provisioned.- Specified by:
setImageId
in interfaceComputeSource
- Parameters:
imageId
- the image ID to use for the instances that will be provisioned
-
getSupportingResourceCreated
Description copied from interface:ComputeSource
Indicates if supporting resources have been created for this source.- Specified by:
getSupportingResourceCreated
in interfaceComputeSource
- Returns:
- true, if supporting resources have been created for this source; false, if no supporting resources have been created; null, if unknown
-
setSupportingResourceCreated
-
getProject
@NotBlank @JsonPropertyDescription("The Google Cloud project within which the instances will be provisioned") @NotBlank String getProject() -
getZone
@JsonPropertyDescription("The region-specific zone where instances will be provisioned") String getZone() -
getNetwork
-
getSubnetwork
-
getMachineType
@NotBlank @JsonPropertyDescription("The machine type (aka instance type) of the instances that will be provisioned") @NotBlank String getMachineType() -
setMachineType
-
getImage
@NotBlank @JsonPropertyDescription("The GCE image ID in the form of a partial URL starting with 'projects/...'") @NotBlank String getImage() -
setImage
-
getAcceleratorType
@JsonPropertyDescription("The GPU accelerator type to attach to provisioned instances") String getAcceleratorType() -
getAcceleratorCount
@JsonPropertyDescription("How many accelerators to add to each provisioned instance") int getAcceleratorCount() -
getHostMaintenanceBehaviour
@JsonPropertyDescription("Specify instance behaviour on host maintenance events") GceHostMaintenanceBehaviour getHostMaintenanceBehaviour() -
getSshKeys
@JsonPropertyDescription("The SSH keys to add to provisioned instances to enable remote access") String getSshKeys() -
isConfidential
@JsonPropertyDescription("Request confidential virtual machines") boolean isConfidential() -
isSpot
@JsonPropertyDescription("Request Spot virtual machines") boolean isSpot() -
isPreemptible
@JsonPropertyDescription("Request preemptible virtual machines") boolean isPreemptible() -
isAssignPublicIp
@JsonPropertyDescription("Assign public IP address to provisioned instances") boolean isAssignPublicIp() -
getInstanceTags
Description copied from interface:ComputeSource
Gets the custom instance tags to be set on the provisioned instance at startup.- Specified by:
getInstanceTags
in interfaceComputeSource
- Returns:
- the custom instance tags
-