Class OciInstancePoolComputeSource
java.lang.Object
co.yellowdog.platform.model.OciInstancePoolComputeSource
- All Implemented Interfaces:
ComputeSource,Credentialed,Identified,Named,OciComputeSource,Serializable
@JsonClassDescription("Details needed for provisioning instances within an OCI Instance Pool")
public class OciInstancePoolComputeSource
extends Object
implements OciComputeSource
Defines a source of compute composed of OCI instances provisioned using the OCI Instance Pool API.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classA builder that can be used to build a new OciInstancePoolComputeSource that is automatically validated on build. -
Field Summary
Fields inherited from interface co.yellowdog.platform.model.ComputeSource
DEFAULT_ASSIGN_PUBLIC_IP -
Constructor Summary
ConstructorsConstructorDescriptionOciInstancePoolComputeSource(String name, String credential, String sshKey, String region, String availabilityDomain, String compartmentId, String imageId, String shape, String subnetId, int limit, Boolean assignPublicIp, Boolean createClusterNetwork, String userData, Map<String, String> instanceTags) -
Method Summary
Modifier and TypeMethodDescriptionbuilder()protected booleanbooleanThe OCI availability domain where instances will be provisioned.The OCI compartment ID (ocid) where instances will be provisioned.Gets the ID of the source template if this source was created from a template.Return the names of the credentials to be used for this Credentialed entity.If this source is associated with an exhausted allowance, gets the exhaustion state.The number of OCPUs to provision on a flex type machine shapeThe amount of ram in GB to provision on a flex type machine shapegetId()Returns the IDThe region-specific OCI Image ID (ocid) for the image to use for the provisioned instances.Gets the instance pricing for this source, e.g.A summary of instance counts according to instance statusGets the custom instance tags to be set on the provisioned instance at startup.intgetLimit()Returns the limit in number of instances that can be provisioned from this source.getName()Returns the name of this compute source (which must be unique within the containing ComputeRequirement).The OCI region where instances will be provisioned.getShape()The machine shape to use for the provisioned instances.The public SSH key.Gets the current provisioning status of this source.Gets the message associated with the current provisioning status of this source.The region-specific OCI Subnet ID (ocid) for the subnet to use for the provisioned instances.Indicates if supporting resources have been created for this source.Returns an object describing behavioural traits specific to this compute source.Gets the user-data script to be passed to the provisioned instance at startup.inthashCode()booleanIndicates if provisioned instances should be assigned public IP addresses.voidsetAssignPublicIp(boolean assignPublicIp) Indicates if provisioned instances should be assigned public IP addresses.voidsetAvailabilityDomain(String availabilityDomain) The OCI availability domain where instances will be provisioned.voidsetCompartmentId(String compartmentId) The OCI compartment ID (ocid) where instances will be provisioned.voidsetCreateClusterNetwork(Boolean createClusterNetwork) voidsetCreatedFromId(String createdFromId) Sets the source template IDvoidsetCredential(String credential) voidsetExhaustion(ComputeSourceExhaustion exhaustion) voidsetFlexOcpus(Float flexOcpus) voidsetFlexRam(Float flexRam) voidSets the IDvoidsetImageId(String imageId) The region-specific OCI Image ID (ocid) for the image to use for the provisioned instances.voidsetInstanceSummary(InstanceSummary instanceSummary) voidsetInstanceTags(Map<@OciInstanceTagKey String, @OciInstanceTagValue String> instanceTags) Sets the custom instance tags to be set on the provisioned instance at startup.voidsetLimit(int limit) Sets the limit in number of instances that can be provisioned from this source.voidSets the name of this compute source (which must be unique within the containing ComputeRequirement).voidThe OCI region where instances will be provisioned.voidThe machine shape to use for the provisioned instances.voidThe public SSH key.voidsetStatus(ComputeSourceStatus status) Sets the current provisioning status of this source.voidsetStatusMessage(String statusMessage) Sets the message associated with the current provisioning status of this source.voidsetSubnetId(String subnetId) The region-specific OCI Subnet ID (ocid) for the subnet to use for the provisioned instances.voidsetSupportingResourceCreated(Boolean supportingResourceCreated) voidsetUserData(String userData) Sets the user-data script to be passed to the provisioned instance at startup.toString()Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface co.yellowdog.platform.model.OciComputeSource
getInstanceType, getProvider, getSubregion, setInstanceType
-
Constructor Details
-
OciInstancePoolComputeSource
public OciInstancePoolComputeSource(String name, String credential, String sshKey, String region, String availabilityDomain, String compartmentId, String imageId, String shape, String subnetId, int limit, Boolean assignPublicIp, Boolean createClusterNetwork, String userData, Map<String, String> instanceTags)
-
-
Method Details
-
getTraits
Description copied from interface:ComputeSourceReturns an object describing behavioural traits specific to this compute source.- Specified by:
getTraitsin interfaceComputeSource- Returns:
- an object describing behavioural traits specific to this compute source
-
getInstancePricing
Description copied from interface:ComputeSourceGets the instance pricing for this source, e.g. Spot- Specified by:
getInstancePricingin interfaceComputeSource- Returns:
- the instance pricing for this source
-
getCredentials
Description copied from interface:CredentialedReturn the names of the credentials to be used for this Credentialed entity.- Specified by:
getCredentialsin interfaceCredentialed- Returns:
- the names of the credentials to be used
-
builder
-
toBuilder
-
getId
Description copied from interface:IdentifiedReturns the ID- Specified by:
getIdin interfaceComputeSource- Specified by:
getIdin interfaceIdentified- Returns:
- the ID
-
getCreatedFromId
Description copied from interface:ComputeSourceGets the ID of the source template if this source was created from a template.- Specified by:
getCreatedFromIdin interfaceComputeSource- Returns:
- the ID of the source template if this source was created from a template
-
getName
Description copied from interface:ComputeSourceReturns the name of this compute source (which must be unique within the containing ComputeRequirement).- Specified by:
getNamein interfaceComputeSource- Specified by:
getNamein interfaceNamed- Returns:
- the name of this compute source
-
getCredential
- Specified by:
getCredentialin interfaceComputeSource- Specified by:
getCredentialin interfaceOciComputeSource
-
getSshKey
The public SSH key. If provided, instances will be accessible with the matching private key through SSH.- Specified by:
getSshKeyin interfaceOciComputeSource- Returns:
- the public SSH key
-
getRegion
The OCI region where instances will be provisioned.- Specified by:
getRegionin interfaceComputeSource- Returns:
- the OCI region where instances will be provisioned
-
getAvailabilityDomain
The OCI availability domain where instances will be provisioned.- Specified by:
getAvailabilityDomainin interfaceOciComputeSource- Returns:
- the OCI availability domain where instances will be provisioned
-
getCompartmentId
The OCI compartment ID (ocid) where instances will be provisioned.- Specified by:
getCompartmentIdin interfaceOciComputeSource- Returns:
- the OCI compartment ID (ocid) where instances will be provisioned
-
getImageId
The region-specific OCI Image ID (ocid) for the image to use for the provisioned instances.- Specified by:
getImageIdin interfaceComputeSource- Returns:
- the OCI Image ID (ocid) for the image to use for the provisioned instances
-
getShape
Description copied from interface:OciComputeSourceThe machine shape to use for the provisioned instances.- Specified by:
getShapein interfaceOciComputeSource- Returns:
- the machine shape to use for the provisioned instances
-
getFlexOcpus
Description copied from interface:OciComputeSourceThe number of OCPUs to provision on a flex type machine shape- Specified by:
getFlexOcpusin interfaceOciComputeSource- Returns:
- the number of OCPUs to provision on a flex type machine shape
-
getFlexRam
Description copied from interface:OciComputeSourceThe amount of ram in GB to provision on a flex type machine shape- Specified by:
getFlexRamin interfaceOciComputeSource- Returns:
- the amount of ram in GB to provision on a flex type machine shape
-
getSubnetId
The region-specific OCI Subnet ID (ocid) for the subnet to use for the provisioned instances.- Specified by:
getSubnetIdin interfaceOciComputeSource- Returns:
- the region-specific OCI Subnet ID (ocid) for the subnet to use for the provisioned instances
-
getLimit
public int getLimit()Description copied from interface:ComputeSourceReturns the limit in number of instances that can be provisioned from this source.- Specified by:
getLimitin interfaceComputeSource- Returns:
- the limit in number of instances that can be provisioned from this source
-
isAssignPublicIp
public boolean isAssignPublicIp()Indicates if provisioned instances should be assigned public IP addresses.- Specified by:
isAssignPublicIpin interfaceOciComputeSource- Returns:
- true, if provisioned instances should be assigned public IP addresses; otherwise, false
-
getCreateClusterNetwork
-
getUserData
Description copied from interface:ComputeSourceGets the user-data script to be passed to the provisioned instance at startup.- Specified by:
getUserDatain interfaceComputeSource- Returns:
- the user-data script
-
getInstanceTags
Description copied from interface:ComputeSourceGets the custom instance tags to be set on the provisioned instance at startup.- Specified by:
getInstanceTagsin interfaceComputeSource- Specified by:
getInstanceTagsin interfaceOciComputeSource- Returns:
- the custom instance tags
-
getInstanceSummary
Description copied from interface:ComputeSourceA summary of instance counts according to instance status- Specified by:
getInstanceSummaryin interfaceComputeSource- Returns:
- a summary of instance counts according to instance status
-
getStatus
Description copied from interface:ComputeSourceGets the current provisioning status of this source.- Specified by:
getStatusin interfaceComputeSource- Returns:
- the current provisioning status of this source
-
getStatusMessage
Description copied from interface:ComputeSourceGets the message associated with the current provisioning status of this source. Returns null if no further detail is relevant to the status.- Specified by:
getStatusMessagein interfaceComputeSource- Returns:
- the message associated with the current provisioning status of this source
-
getExhaustion
Description copied from interface:ComputeSourceIf this source is associated with an exhausted allowance, gets the exhaustion state.- Specified by:
getExhaustionin interfaceComputeSource- Returns:
- the exhaustion state, if the source is associated with an exhausted allowance; otherwise, null
-
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
-
setId
Description copied from interface:ComputeSourceSets the ID- Specified by:
setIdin interfaceComputeSource- Parameters:
id- This should only be set by the YellowDog Platform
-
setCreatedFromId
Description copied from interface:ComputeSourceSets the source template ID- Specified by:
setCreatedFromIdin interfaceComputeSource- Parameters:
createdFromId- This should only be set by the YellowDog Platform
-
setName
Description copied from interface:ComputeSourceSets the name of this compute source (which must be unique within the containing ComputeRequirement).- Specified by:
setNamein interfaceComputeSource- Parameters:
name- the name of this compute source
-
setCredential
-
setSshKey
The public SSH key. If provided, instances will be accessible with the matching private key through SSH.- Parameters:
sshKey- the public SSH key
-
setRegion
The OCI region where instances will be provisioned.- Parameters:
region- the OCI region where instances will be provisioned
This should not be changed once the requirement has been submitted to YellowDog Compute.
-
setAvailabilityDomain
The OCI availability domain where instances will be provisioned.- Parameters:
availabilityDomain- the OCI availability domain where instances will be provisioned
This should not be changed once the requirement has been submitted to YellowDog Compute.
-
setCompartmentId
The OCI compartment ID (ocid) where instances will be provisioned.- Parameters:
compartmentId- the OCI compartment ID (ocid) where instances will be provisioned
This should not be changed once the requirement has been submitted to YellowDog Compute.
-
setImageId
The region-specific OCI Image ID (ocid) for the image to use for the provisioned instances.- Specified by:
setImageIdin interfaceComputeSource- Parameters:
imageId- the OCI Image ID (ocid) for the image to use for the provisioned instances
-
setShape
Description copied from interface:OciComputeSourceThe machine shape to use for the provisioned instances.- Specified by:
setShapein interfaceOciComputeSource- Parameters:
shape- the machine shape to use for the provisioned instances
-
setFlexOcpus
-
setFlexRam
-
setSubnetId
The region-specific OCI Subnet ID (ocid) for the subnet to use for the provisioned instances.- Parameters:
subnetId- the region-specific OCI Subnet ID (ocid) for the subnet to use for the provisioned instances
-
setLimit
public void setLimit(int limit) Description copied from interface:ComputeSourceSets the limit in number of instances that can be provisioned from this source.- Specified by:
setLimitin interfaceComputeSource- Parameters:
limit- the limit in number of instances that can be provisioned from this source
-
setAssignPublicIp
public void setAssignPublicIp(boolean assignPublicIp) Indicates if provisioned instances should be assigned public IP addresses.- Parameters:
assignPublicIp- true, if provisioned instances should be assigned public IP addresses; otherwise, false
-
setCreateClusterNetwork
-
setUserData
Description copied from interface:ComputeSourceSets the user-data script to be passed to the provisioned instance at startup.- Specified by:
setUserDatain interfaceComputeSource- Parameters:
userData- the user-data script
-
setInstanceTags
public void setInstanceTags(Map<@OciInstanceTagKey String, @OciInstanceTagValue String> instanceTags) Description copied from interface:ComputeSourceSets the custom instance tags to be set on the provisioned instance at startup.- Specified by:
setInstanceTagsin interfaceComputeSource- Parameters:
instanceTags- the custom instance tags
-
setInstanceSummary
- Specified by:
setInstanceSummaryin interfaceComputeSource
-
setStatus
Description copied from interface:ComputeSourceSets the current provisioning status of this source.- Specified by:
setStatusin interfaceComputeSource- Parameters:
status- This should only be set by the YellowDog Platform
-
setStatusMessage
Description copied from interface:ComputeSourceSets the message associated with the current provisioning status of this source.- Specified by:
setStatusMessagein interfaceComputeSource- Parameters:
statusMessage- This should only be set by the YellowDog Platform
-
setExhaustion
- Specified by:
setExhaustionin interfaceComputeSource
-
setSupportingResourceCreated
-
equals
-
canEqual
-
hashCode
-
toString
-