Interface AzureComputeSource
- All Superinterfaces:
ComputeSource,Credentialed,Identified,Named,Serializable
- All Known Implementing Classes:
AzureInstancesComputeSource,AzureScaleSetComputeSource
@ValidatedBy(AzureComputeSourceValidator.class)
public interface AzureComputeSource
extends ComputeSource
Derives from
ComputeSource to provide the interface for all Azure compute source model objects.-
Field Summary
Fields inherited from interface co.yellowdog.platform.model.ComputeSource
DEFAULT_ASSIGN_PUBLIC_IP -
Method Summary
Modifier and TypeMethodDescription@NotBlank StringAllows the specification of an Azure environment other than the default public environment.default InstancePricingGets the instance pricing for this source, e.g.Gets the custom instance tags to be set on the provisioned instance at startup.default StringGets the provider-specific instance type of the instances that will be provisioned.@NotBlank String@NotBlank Stringdefault CloudProviderGets the Cloud Provider for this source.@DecimalMin("0.00001") DoubleThe maximum price that will be paid for Spot VMs provisioned from this source.@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.Indicates if Spot VMs should be requested from Azure.@NotBlank Stringbooleandefault voidsetInstanceType(String instanceType) Sets the provider-specific instance type of the instances that will be provisioned.voidsetSupportingResourceCreated(Boolean supportingResourceCreated) voidMethods inherited from interface co.yellowdog.platform.model.ComputeSource
getCreatedFromId, getExhaustion, getId, getImageId, getInstanceSummary, getLimit, getName, getRegion, getStatus, getStatusMessage, getTraits, getUserData, setCreatedFromId, setExhaustion, setId, setImageId, setInstanceSummary, setInstanceTags, setLimit, setName, setStatus, setStatusMessage, setUserDataMethods inherited from interface co.yellowdog.platform.model.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
-
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
-
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
-
getInstanceType
Description copied from interface:ComputeSourceGets the provider-specific instance type of the instances that will be provisioned.- Specified by:
getInstanceTypein interfaceComputeSource- Returns:
- the provider-specific instance type of the instances that will be provisioned
-
setInstanceType
Description copied from interface:ComputeSourceSets the provider-specific instance type of the instances that will be provisioned.- Specified by:
setInstanceTypein interfaceComputeSource- Parameters:
instanceType- the provider-specific instance type of the instances that will be provisioned
-
getCredential
- Specified by:
getCredentialin interfaceComputeSource
-
getAvailabilityZone
@JsonPropertyDescription("The Azure availability zone within the region where instances will be provisioned") String getAvailabilityZone() -
getNetworkResourceGroupName
@NotBlank @JsonPropertyDescription("The Azure network resource group name to use for provisioned instances") @NotBlank String getNetworkResourceGroupName() -
getNetworkName
@NotBlank @JsonPropertyDescription("The Azure network name to use for provisioned instances") @NotBlank String getNetworkName() -
getSubnetName
@NotBlank @JsonPropertyDescription("The Azure subnet name to use for provisioned instances") @NotBlank String getSubnetName() -
getEnvironment
@JsonPropertyDescription("An Azure environment other than the default public environment") String getEnvironment()Allows the specification of an Azure environment other than the default public environment. This should normally be left blank. Valid values are "china", "germany", "us_government".- Returns:
- an Azure environment other than the default public environment
-
getVmSize
@NotBlank @JsonPropertyDescription("The virtual machine type (aka instance type) of the instances that will be provisioned") @NotBlank String getVmSize() -
setVmSize
-
getAdminUserCredential
@JsonPropertyDescription("The fully qualified name of the keyring credential '{keyring name}/{credential name}' to use for the admin/root user login details for provisioned instances") String getAdminUserCredential() -
getSshKey
@JsonPropertyDescription("The public SSH key to allow instances to be accessible with the matching private key through SSH") String getSshKey() -
isAssignPublicIp
@JsonPropertyDescription("Assign public IP address to provisioned instances") boolean isAssignPublicIp() -
getCreateProximityPlacementGroup
@JsonPropertyDescription("Provision the instances within a proximity placement group") Boolean getCreateProximityPlacementGroup() -
getUseAcceleratedNetworking
@JsonPropertyDescription("Provision each instance's primary network interface with accelerated networking") Boolean getUseAcceleratedNetworking() -
getUseSpot
@JsonPropertyDescription("Request Spot VMs (requires Spot max price to be set)") Boolean getUseSpot()Indicates if Spot VMs should be requested from Azure. Requires Spot max price to be set.- Returns:
- if Spot VMs should be requested from Azure
-
getSpotMaxPrice
@DecimalMin("0.00001") @JsonPropertyDescription("The maximum price that will be paid for Spot VMs provisioned from this source") @DecimalMin("0.00001") Double getSpotMaxPrice()The maximum price that will be paid for Spot VMs provisioned from this source.- Returns:
- the maximum price that will be paid for Spot VMs
-
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
-
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
-