func deleteHostedService(t *testing.T, client management.Client, vmname string) { t.Logf("Deleting hosted service: %s", vmname) if err := Await(client, func() (management.OperationID, error) { return hostedservice.NewClient(client).DeleteHostedService(vmname, true) }); err != nil { t.Error(err) } }
func createRoleConfiguration(t *testing.T, client management.Client, role vm.Role, location string) { vmc := vm.NewClient(client) hsc := hostedservice.NewClient(client) vmname := role.RoleName if err := hsc.CreateHostedService(hostedservice.CreateHostedServiceParameters{ ServiceName: vmname, Location: location, Label: base64.StdEncoding.EncodeToString([]byte(vmname))}); err != nil { t.Error(err) } if err := Await(client, func() (management.OperationID, error) { return vmc.CreateDeployment(role, vmname, vm.CreateDeploymentOptions{}) }); err != nil { t.Error(err) } }
func Example() { dnsName := "test-vm-from-go" storageAccount := "mystorageaccount" location := "West US" vmSize := "Small" vmImage := "b39f27a8b8c64d52b05eac6a62ebad85__Ubuntu-14_04-LTS-amd64-server-20140724-en-us-30GB" userName := "******" userPassword := "******" client, err := management.ClientFromPublishSettingsFile("path/to/downloaded.publishsettings", "") if err != nil { panic(err) } // create hosted service if err := hostedservice.NewClient(client).CreateHostedService(hostedservice.CreateHostedServiceParameters{ ServiceName: dnsName, Location: location, Label: base64.StdEncoding.EncodeToString([]byte(dnsName))}); err != nil { panic(err) } // create virtual machine role := NewVMConfiguration(dnsName, vmSize) ConfigureDeploymentFromPlatformImage( &role, vmImage, fmt.Sprintf("http://%s.blob.core.windows.net/sdktest/%s.vhd", storageAccount, dnsName), "") ConfigureForLinux(&role, dnsName, userName, userPassword) ConfigureWithPublicSSH(&role) operationID, err := virtualmachine.NewClient(client). CreateDeployment(role, dnsName, virtualmachine.CreateDeploymentOptions{}) if err != nil { panic(err) } err = client.WaitForOperation(operationID, nil) if err != nil { panic(err) } }