Documentation
¶
Index ¶
- Constants
- func ExtractResourceGroupFromID(ctx context.Context, id string) string
- func FromCloudyVirtualMachine(ctx context.Context, cloudyVM *models.VirtualMachine) (*armcompute.VirtualMachine, error)
- func IsAvailable(restrictions []*armcompute.ResourceSKURestrictions) bool
- func IsInLocation(region string, locations []*string) bool
- func LongIdToShortId(longId string) string
- func SizeFromResource(ctx context.Context, res *armcompute.ResourceSKU) *cloudyvm.VmSize
- func ToCloudyVirtualMachine(ctx context.Context, azVM *armcompute.VirtualMachine) *models.VirtualMachine
- func ToCloudyVirtualMachineLocation(location *string) *models.VirtualMachineLocation
- func ToCloudyVirtualMachineSize(ctx context.Context, resource *armcompute.ResourceSKU) *models.VirtualMachineSize
- func UpdateCloudyVirtualMachine(vm *models.VirtualMachine, responseVirtualMachine armcompute.VirtualMachine) error
- func VMAddTag(ctx context.Context)
- func VMGetPowerState(vm *armcompute.VirtualMachine) string
- type AzureVMController
- func (vmc *AzureVMController) ConfigureDiskSize(ctx context.Context, vm *cloudyvm.VirtualMachineConfiguration) (int32, error)
- func (vmc *AzureVMController) ConfigureVmOsDiskOsTypeType(ctx context.Context, vm *cloudyvm.VirtualMachineConfiguration) *armcompute.OperatingSystemTypes
- func (vmc *AzureVMController) ConfigureVmOsProfile(ctx context.Context, vm *cloudyvm.VirtualMachineConfiguration) *armcompute.OSProfile
- func (vmc *AzureVMController) Create(ctx context.Context, vm *cloudyvm.VirtualMachineConfiguration) (*cloudyvm.VirtualMachineConfiguration, error)
- func (vmc *AzureVMController) CreateNIC(ctx context.Context, vm *cloudyvm.VirtualMachineConfiguration, subnetId string) error
- func (vmc *AzureVMController) CreateNSG(ctx context.Context, vm *cloudyvm.VirtualMachineConfiguration) (string, error)
- func (vmc *AzureVMController) CreateVirtualMachine(ctx context.Context, vm *cloudyvm.VirtualMachineConfiguration) error
- func (vmc *AzureVMController) Delete(ctx context.Context, vm *cloudyvm.VirtualMachineConfiguration) (*cloudyvm.VirtualMachineConfiguration, error)
- func (vmc *AzureVMController) DeleteNIC(ctx context.Context, vmId string, nicName string) error
- func (vmc *AzureVMController) DeleteVM(ctx context.Context, vm *cloudyvm.VirtualMachineConfiguration) error
- func (vmc *AzureVMController) DeleteVMOSDisk(ctx context.Context, vm *cloudyvm.VirtualMachineConfiguration) error
- func (vmc *AzureVMController) FindBestSubnet(ctx context.Context, availableSubnets []string) (string, error)
- func (vmc *AzureVMController) GetAvailableIPS(ctx context.Context, subnet string) (int, error)
- func (vmc *AzureVMController) GetLatestImageVersion(ctx context.Context, imageName string) (string, error)
- func (vmc *AzureVMController) GetLimits(ctx context.Context) ([]*cloudyvm.VirtualMachineLimit, error)
- func (vmc *AzureVMController) GetNIC(ctx context.Context, vm *cloudyvm.VirtualMachineConfiguration) (*cloudyvm.VirtualMachineNetwork, error)
- func (vmc *AzureVMController) GetNSG(ctx context.Context, name string) (*armnetwork.SecurityGroup, error)
- func (vmc *AzureVMController) GetVM(ctx context.Context, vm *cloudyvm.VirtualMachineConfiguration) (*cloudyvm.VirtualMachineConfiguration, error)
- func (vmc *AzureVMController) GetVMSize(ctx context.Context, size string) (*cloudyvm.VmSize, error)
- func (vmc *AzureVMController) GetVMSizes(ctx context.Context) (map[string]*cloudyvm.VmSize, error)
- func (vmc *AzureVMController) GetVmOsDisk(ctx context.Context, vm *cloudyvm.VirtualMachineConfiguration) (*cloudyvm.VirtualMachineDisk, error)
- func (vmc *AzureVMController) ListAll(ctx context.Context) ([]*cloudyvm.VirtualMachineStatus, error)
- func (vmc *AzureVMController) ListWithTag(ctx context.Context, tag string) ([]*cloudyvm.VirtualMachineStatus, error)
- func (vmc *AzureVMController) SetState(ctx context.Context, state cloudyvm.VirtualMachineAction, vmName string, ...) (*cloudyvm.VirtualMachineStatus, error)
- func (vmc *AzureVMController) Start(ctx context.Context, vmName string, wait bool) error
- func (vmc *AzureVMController) Status(ctx context.Context, vmName string) (*cloudyvm.VirtualMachineStatus, error)
- func (vmc *AzureVMController) Stop(ctx context.Context, vmName string, wait bool) error
- func (vmc *AzureVMController) Terminate(ctx context.Context, vmName string, wait bool) error
- func (vmc *AzureVMController) ValidateConfiguration(ctx context.Context, vm *cloudyvm.VirtualMachineConfiguration) error
- type AzureVMControllerConfig
- type AzureVMControllerFactory
- type AzureVirtualMachineManager
- func (vmm *AzureVirtualMachineManager) Configure(ctx context.Context) error
- func (vmm *AzureVirtualMachineManager) CreateNic(ctx context.Context, vm *models.VirtualMachine) (*models.VirtualMachineNic, error)
- func (vmm *AzureVirtualMachineManager) CreateVirtualMachine(ctx context.Context, vm *models.VirtualMachine) (*models.VirtualMachine, error)
- func (vmm *AzureVirtualMachineManager) DeleteDisk(ctx context.Context, diskName string) error
- func (vmm *AzureVirtualMachineManager) DeleteNic(ctx context.Context, nic *models.VirtualMachineNic) error
- func (vmm *AzureVirtualMachineManager) DeleteNics(ctx context.Context, nics []*models.VirtualMachineNic) error
- func (vmm *AzureVirtualMachineManager) DeleteVirtualMachine(ctx context.Context, vmId string) error
- func (vmm *AzureVirtualMachineManager) ExecuteRemotePowershell(ctx context.Context, vmID string, script *string, ...) error
- func (vmm *AzureVirtualMachineManager) ExecuteRemoteShellScript(ctx context.Context, vmID string, script *string, ...) error
- func (vmm *AzureVirtualMachineManager) GetAllDisks(ctx context.Context) ([]*models.VirtualMachineDisk, error)
- func (vmm *AzureVirtualMachineManager) GetAllNics(ctx context.Context) ([]*models.VirtualMachineNic, error)
- func (vmm *AzureVirtualMachineManager) GetAllSessionHostVirtualMachines(ctx context.Context, attrs []string, includeState bool) (*[]models.VirtualMachine, error)
- func (vmm *AzureVirtualMachineManager) GetAllUserVirtualMachines(ctx context.Context, attrs []string, includeState bool) (*[]models.VirtualMachine, error)
- func (vmm *AzureVirtualMachineManager) GetAllVirtualMachineSizes(ctx context.Context) (map[string]*models.VirtualMachineSize, error)
- func (vmm *AzureVirtualMachineManager) GetAllVmDisks(ctx context.Context, vmId string) ([]*models.VirtualMachineDisk, error)
- func (vmm *AzureVirtualMachineManager) GetLatestImageVersion(ctx context.Context, imageName string) (string, error)
- func (vmm *AzureVirtualMachineManager) GetNics(ctx context.Context, vmId string) ([]*models.VirtualMachineNic, error)
- func (vmm *AzureVirtualMachineManager) GetOsDisk(ctx context.Context, vmId string) (*models.VirtualMachineDisk, error)
- func (vmm *AzureVirtualMachineManager) GetVirtualMachine(ctx context.Context, vmName string, includeState bool) (*models.VirtualMachine, error)
- func (vmm *AzureVirtualMachineManager) GetVirtualMachineSizesForTemplate(ctx context.Context, template models.VirtualMachineTemplate) (matches map[string]*models.VirtualMachineSize, ...)
- func (vmm *AzureVirtualMachineManager) GetVirtualMachineSizesWithUsage(ctx context.Context) (map[string]*models.VirtualMachineSize, error)
- func (vmm *AzureVirtualMachineManager) GetVirtualMachineUsage(ctx context.Context) (map[string]models.VirtualMachineFamily, error)
- func (vmm *AzureVirtualMachineManager) RunCommand(ctx context.Context, vmId string, script string) error
- func (vmm *AzureVirtualMachineManager) StartVirtualMachine(ctx context.Context, vmName string) error
- func (vmm *AzureVirtualMachineManager) StopVirtualMachine(ctx context.Context, vmName string) error
- func (vmm *AzureVirtualMachineManager) UpdateVirtualMachine(ctx context.Context, vm *models.VirtualMachine) (*models.VirtualMachine, error)
- type ScoredVMSize
- type VirtualMachineManagerConfig
Constants ¶
const AzureArmCompute = "azure-arm-compute"
const (
MIN_WINDOWS_OS_DISK_SIZE = 200
)
Variables ¶
This section is empty.
Functions ¶
func FromCloudyVirtualMachine ¶
func FromCloudyVirtualMachine(ctx context.Context, cloudyVM *models.VirtualMachine) (*armcompute.VirtualMachine, error)
func IsAvailable ¶
func IsAvailable(restrictions []*armcompute.ResourceSKURestrictions) bool
func IsInLocation ¶
func LongIdToShortId ¶
func SizeFromResource ¶
func SizeFromResource(ctx context.Context, res *armcompute.ResourceSKU) *cloudyvm.VmSize
func ToCloudyVirtualMachine ¶
func ToCloudyVirtualMachine(ctx context.Context, azVM *armcompute.VirtualMachine) *models.VirtualMachine
func ToCloudyVirtualMachineLocation ¶
func ToCloudyVirtualMachineLocation(location *string) *models.VirtualMachineLocation
func ToCloudyVirtualMachineSize ¶
func ToCloudyVirtualMachineSize(ctx context.Context, resource *armcompute.ResourceSKU) *models.VirtualMachineSize
func UpdateCloudyVirtualMachine ¶
func UpdateCloudyVirtualMachine(vm *models.VirtualMachine, responseVirtualMachine armcompute.VirtualMachine) error
func VMGetPowerState ¶
func VMGetPowerState(vm *armcompute.VirtualMachine) string
Types ¶
type AzureVMController ¶
type AzureVMController struct {
Vault *keyvault.KeyVault
Client *armcompute.VirtualMachinesClient
Usage *armcompute.UsageClient
Config *AzureVMControllerConfig
// contains filtered or unexported fields
}
func NewAzureVMController ¶
func NewAzureVMController(ctx context.Context, config *AzureVMControllerConfig) (*AzureVMController, error)
func (*AzureVMController) ConfigureDiskSize ¶
func (vmc *AzureVMController) ConfigureDiskSize(ctx context.Context, vm *cloudyvm.VirtualMachineConfiguration) (int32, error)
func (*AzureVMController) ConfigureVmOsDiskOsTypeType ¶
func (vmc *AzureVMController) ConfigureVmOsDiskOsTypeType(ctx context.Context, vm *cloudyvm.VirtualMachineConfiguration) *armcompute.OperatingSystemTypes
func (*AzureVMController) ConfigureVmOsProfile ¶
func (vmc *AzureVMController) ConfigureVmOsProfile(ctx context.Context, vm *cloudyvm.VirtualMachineConfiguration) *armcompute.OSProfile
func (*AzureVMController) Create ¶
func (vmc *AzureVMController) Create(ctx context.Context, vm *cloudyvm.VirtualMachineConfiguration) (*cloudyvm.VirtualMachineConfiguration, error)
func (*AzureVMController) CreateNIC ¶
func (vmc *AzureVMController) CreateNIC(ctx context.Context, vm *cloudyvm.VirtualMachineConfiguration, subnetId string) error
CreateNIC - Creates the Network Interface for the virtual machine. It mimics the terraform code listed below. The elements used by this method are: - VM Name / ID (from vm) - Region (from factory) - Resource Group (from factory) - Subnet ID (from vm)
Once created the NIC has an ID and an IP address that we care about. The VirtualMachineConfiguration input is mutated to add the appropriate information.
az network nic create \ --resource-group go-on-azure \ --vnet-name go-on-azure-vmVNET \ --subnet go-on-azure-vmSubnet \ --name uvm-gotest-ip
resource "azurerm_network_interface" "main-nic" {
name = join("-", [var.vdi-name, random_string.random.result])
location = data.azurerm_resource_group.main-rg.location
resource_group_name = data.azurerm_resource_group.main-rg.name
ip_configuration {
name = join("-", [var.vdi-name, "IP"])
subnet_id = data.azurerm_subnet.main-subnet.id
private_ip_address_allocation = "Dynamic"
}
}
NOT WORKING YET
func (*AzureVMController) CreateNSG ¶
func (vmc *AzureVMController) CreateNSG(ctx context.Context, vm *cloudyvm.VirtualMachineConfiguration) (string, error)
data "azurerm_network_security_group" "vdi-security-group" {
name = var.vdi-nsg
resource_group_name = data.azurerm_resource_group.main-rg.name
}
func (*AzureVMController) CreateVirtualMachine ¶
func (vmc *AzureVMController) CreateVirtualMachine(ctx context.Context, vm *cloudyvm.VirtualMachineConfiguration) error
CreateVirtualMachine
resource "azurerm_linux_virtual_machine" "main-vm" {
name = var.vdi-name
computer_name = var.vdi-name
admin_username = "salt"
resource_group_name = var.app-rg-name
location = var.def-location
size = var.vdi-size
source_image_id = "/subscriptions/${var.subscription-id}/resourceGroups/${var.app-rg-name}/providers/Microsoft.Compute/galleries/${var.source-image-gallery-name}/images/${var.source-image}/versions/${var.source-image-version}"
network_interface_ids = [
azurerm_network_interface.main-nic.id,
]
admin_ssh_key {
username = "salt"
public_key = file("${path.module}/vdi-terraform_id_rsa.pub")
}
os_disk {
caching = "ReadWrite"
storage_account_type = "Standard_LRS"
}
tags = {
Application = "SKYBORG"
"Functional Area " = "VDI"
"User Principle Name" = var.user-principle-name
}
}
func (*AzureVMController) Delete ¶
func (vmc *AzureVMController) Delete(ctx context.Context, vm *cloudyvm.VirtualMachineConfiguration) (*cloudyvm.VirtualMachineConfiguration, error)
func (*AzureVMController) DeleteVM ¶
func (vmc *AzureVMController) DeleteVM(ctx context.Context, vm *cloudyvm.VirtualMachineConfiguration) error
func (*AzureVMController) DeleteVMOSDisk ¶
func (vmc *AzureVMController) DeleteVMOSDisk(ctx context.Context, vm *cloudyvm.VirtualMachineConfiguration) error
func (*AzureVMController) FindBestSubnet ¶
func (vmc *AzureVMController) FindBestSubnet(ctx context.Context, availableSubnets []string) (string, error)
Finds the best subnet based on IP availabilty
func (*AzureVMController) GetAvailableIPS ¶
Finds the best subnet based on IP availabilty
func (*AzureVMController) GetLatestImageVersion ¶
func (*AzureVMController) GetLimits ¶
func (vmc *AzureVMController) GetLimits(ctx context.Context) ([]*cloudyvm.VirtualMachineLimit, error)
func (*AzureVMController) GetNIC ¶
func (vmc *AzureVMController) GetNIC(ctx context.Context, vm *cloudyvm.VirtualMachineConfiguration) (*cloudyvm.VirtualMachineNetwork, error)
Find NIC if it already exists
func (*AzureVMController) GetNSG ¶
func (vmc *AzureVMController) GetNSG(ctx context.Context, name string) (*armnetwork.SecurityGroup, error)
func (*AzureVMController) GetVM ¶
func (vmc *AzureVMController) GetVM(ctx context.Context, vm *cloudyvm.VirtualMachineConfiguration) (*cloudyvm.VirtualMachineConfiguration, error)
Find VM if it already exists
func (*AzureVMController) GetVMSizes ¶
func (*AzureVMController) GetVmOsDisk ¶
func (vmc *AzureVMController) GetVmOsDisk(ctx context.Context, vm *cloudyvm.VirtualMachineConfiguration) (*cloudyvm.VirtualMachineDisk, error)
func (*AzureVMController) ListAll ¶
func (vmc *AzureVMController) ListAll(ctx context.Context) ([]*cloudyvm.VirtualMachineStatus, error)
func (*AzureVMController) ListWithTag ¶
func (vmc *AzureVMController) ListWithTag(ctx context.Context, tag string) ([]*cloudyvm.VirtualMachineStatus, error)
func (*AzureVMController) SetState ¶
func (vmc *AzureVMController) SetState(ctx context.Context, state cloudyvm.VirtualMachineAction, vmName string, wait bool) (*cloudyvm.VirtualMachineStatus, error)
func (*AzureVMController) Status ¶
func (vmc *AzureVMController) Status(ctx context.Context, vmName string) (*cloudyvm.VirtualMachineStatus, error)
func (*AzureVMController) ValidateConfiguration ¶
func (vmc *AzureVMController) ValidateConfiguration(ctx context.Context, vm *cloudyvm.VirtualMachineConfiguration) error
type AzureVMControllerConfig ¶
type AzureVMControllerConfig struct {
cloudyazure.AzureCredentials
SubscriptionID string
ResourceGroup string
// ??
NetworkResourceGroup string // From Environment Variable
SourceImageGalleryResourceGroup string
SourceImageGalleryName string // From Environment Variable
Vnet string // From Environment Variable
AvailableSubnets []string // From Environment Variable
NetworkSecurityGroupName string // From Environment Variable
NetworkSecurityGroupID string // From Environment Variable
// SaltCmd string // From Environment Variable
VaultURL string
DomainControllerOverride string
DomainControllers []*string // From Environment Variable
LogBody bool
}
type AzureVMControllerFactory ¶
type AzureVMControllerFactory struct{}
func (*AzureVMControllerFactory) Create ¶
func (f *AzureVMControllerFactory) Create(cfg interface{}) (cloudyvm.VMController, error)
func (*AzureVMControllerFactory) FromEnv ¶
func (f *AzureVMControllerFactory) FromEnv(env *cloudy.Environment) (interface{}, error)
type AzureVirtualMachineManager ¶
type AzureVirtualMachineManager struct {
Credentials *cloudyazure.AzureCredentials
Config *VirtualMachineManagerConfig
LogBody bool
// contains filtered or unexported fields
}
func NewAzureVirtualMachineManager ¶
func NewAzureVirtualMachineManager( ctx context.Context, name string, credentials *cloudyazure.AzureCredentials, config *VirtualMachineManagerConfig, ) (*AzureVirtualMachineManager, error)
func (*AzureVirtualMachineManager) Configure ¶
func (vmm *AzureVirtualMachineManager) Configure(ctx context.Context) error
func (*AzureVirtualMachineManager) CreateNic ¶
func (vmm *AzureVirtualMachineManager) CreateNic(ctx context.Context, vm *models.VirtualMachine) (*models.VirtualMachineNic, error)
func (*AzureVirtualMachineManager) CreateVirtualMachine ¶ added in v0.0.61
func (vmm *AzureVirtualMachineManager) CreateVirtualMachine(ctx context.Context, vm *models.VirtualMachine) (*models.VirtualMachine, error)
func (*AzureVirtualMachineManager) DeleteDisk ¶
func (vmm *AzureVirtualMachineManager) DeleteDisk(ctx context.Context, diskName string) error
func (*AzureVirtualMachineManager) DeleteNic ¶
func (vmm *AzureVirtualMachineManager) DeleteNic(ctx context.Context, nic *models.VirtualMachineNic) error
func (*AzureVirtualMachineManager) DeleteNics ¶
func (vmm *AzureVirtualMachineManager) DeleteNics(ctx context.Context, nics []*models.VirtualMachineNic) error
func (*AzureVirtualMachineManager) DeleteVirtualMachine ¶ added in v0.0.61
func (vmm *AzureVirtualMachineManager) DeleteVirtualMachine(ctx context.Context, vmId string) error
Delete a VM, first by deallocating it, then deleting it and its associated resources
func (*AzureVirtualMachineManager) ExecuteRemotePowershell ¶ added in v0.0.51
func (vmm *AzureVirtualMachineManager) ExecuteRemotePowershell(ctx context.Context, vmID string, script *string, timeout, pollInterval time.Duration) error
ExecuteRemotePowerShell executes a PowerShell script on a remote Azure virtual machine. It uses the RunCommand API with the "RunPowerShellScript" command.
func (*AzureVirtualMachineManager) ExecuteRemoteShellScript ¶ added in v0.0.59
func (vmm *AzureVirtualMachineManager) ExecuteRemoteShellScript(ctx context.Context, vmID string, script *string, timeout, pollInterval time.Duration) error
ExecuteRemoteShellScript executes a shell script on a remote Azure virtual machine. It uses the RunCommand API with the "RunShellScript" command.
func (*AzureVirtualMachineManager) GetAllDisks ¶
func (vmm *AzureVirtualMachineManager) GetAllDisks(ctx context.Context) ([]*models.VirtualMachineDisk, error)
func (*AzureVirtualMachineManager) GetAllNics ¶
func (vmm *AzureVirtualMachineManager) GetAllNics(ctx context.Context) ([]*models.VirtualMachineNic, error)
func (*AzureVirtualMachineManager) GetAllSessionHostVirtualMachines ¶ added in v0.0.61
func (vmm *AzureVirtualMachineManager) GetAllSessionHostVirtualMachines(ctx context.Context, attrs []string, includeState bool) (*[]models.VirtualMachine, error)
Queries Azure for the details of all Session Host VMs.
If includeState is true, this will also retrieve the state of the VMs (running, stopped, etc.) If includeState is false, vm.State will be an empty string
func (*AzureVirtualMachineManager) GetAllUserVirtualMachines ¶ added in v0.0.61
func (vmm *AzureVirtualMachineManager) GetAllUserVirtualMachines(ctx context.Context, attrs []string, includeState bool) (*[]models.VirtualMachine, error)
Queries Azure for the details of all User VMs.
If includeState is true, this will also retrieve the state of the VMs (running, stopped, etc.) If includeState is false, vm.State will be an empty string
func (*AzureVirtualMachineManager) GetAllVirtualMachineSizes ¶ added in v0.0.61
func (vmm *AzureVirtualMachineManager) GetAllVirtualMachineSizes(ctx context.Context) (map[string]*models.VirtualMachineSize, error)
func (*AzureVirtualMachineManager) GetAllVmDisks ¶
func (vmm *AzureVirtualMachineManager) GetAllVmDisks(ctx context.Context, vmId string) ([]*models.VirtualMachineDisk, error)
func (*AzureVirtualMachineManager) GetLatestImageVersion ¶
func (vmm *AzureVirtualMachineManager) GetLatestImageVersion(ctx context.Context, imageName string) (string, error)
This function was unused in v1 It would need the config to have the source image gallery name in it
func (*AzureVirtualMachineManager) GetNics ¶
func (vmm *AzureVirtualMachineManager) GetNics(ctx context.Context, vmId string) ([]*models.VirtualMachineNic, error)
func (*AzureVirtualMachineManager) GetOsDisk ¶
func (vmm *AzureVirtualMachineManager) GetOsDisk(ctx context.Context, vmId string) (*models.VirtualMachineDisk, error)
func (*AzureVirtualMachineManager) GetVirtualMachine ¶ added in v0.0.61
func (vmm *AzureVirtualMachineManager) GetVirtualMachine(ctx context.Context, vmName string, includeState bool) (*models.VirtualMachine, error)
Queries Azure for the details of a single VM.
If includeState is true, this will also retrieve the state of the VM (running, stopped, etc.) If includeState is false, vm.State will be an empty string
func (*AzureVirtualMachineManager) GetVirtualMachineSizesForTemplate ¶ added in v0.0.61
func (vmm *AzureVirtualMachineManager) GetVirtualMachineSizesForTemplate(ctx context.Context, template models.VirtualMachineTemplate) ( matches map[string]*models.VirtualMachineSize, worse map[string]*models.VirtualMachineSize, better map[string]*models.VirtualMachineSize, err error)
func (*AzureVirtualMachineManager) GetVirtualMachineSizesWithUsage ¶ added in v0.0.61
func (vmm *AzureVirtualMachineManager) GetVirtualMachineSizesWithUsage(ctx context.Context) (map[string]*models.VirtualMachineSize, error)
func (*AzureVirtualMachineManager) GetVirtualMachineUsage ¶ added in v0.0.61
func (vmm *AzureVirtualMachineManager) GetVirtualMachineUsage(ctx context.Context) (map[string]models.VirtualMachineFamily, error)
func (*AzureVirtualMachineManager) RunCommand ¶
func (*AzureVirtualMachineManager) StartVirtualMachine ¶ added in v0.0.61
func (vmm *AzureVirtualMachineManager) StartVirtualMachine(ctx context.Context, vmName string) error
func (*AzureVirtualMachineManager) StopVirtualMachine ¶ added in v0.0.61
func (vmm *AzureVirtualMachineManager) StopVirtualMachine(ctx context.Context, vmName string) error
func (*AzureVirtualMachineManager) UpdateVirtualMachine ¶ added in v0.0.61
func (vmm *AzureVirtualMachineManager) UpdateVirtualMachine(ctx context.Context, vm *models.VirtualMachine) (*models.VirtualMachine, error)
type ScoredVMSize ¶
type ScoredVMSize struct {
Score float64
Size *models.VirtualMachineSize
}