Azure / Azure/azure-libraries-for-java
How can I get async behavior out of the Fluent SDK?
- Dominant language
- Java
- Stars
- 97
- Forks
- 102
- PR merge metrics
- No merged PRs in 30d
Description
_From @awesley on June 23, 2017 19:25_
Hiya,
I'm creating VMs using the Fluent SDK. Here's a code snippet:
```
var vm = await this.azure
.VirtualMachines
.Define(vmName)
.WithRegion(region)
.WithExistingResourceGroup(resourceGroupName)
.WithExistingPrimaryNetwork(network)
.WithSubnet(subNetName)
.WithPrimaryPrivateIPAddressDynamic()
.WithoutPrimaryPublicIPAddress()
.WithWindowsCustomImage(image)
.WithAdminUsername(adminUserName)
.WithAdminPassword(adminPassword)
.WithSize(vmSize)
.WithNewStorageAccount(storageAccountName)
.WithTag(TagKeyNames.StorageAccountId, storageAccount.Id)
.CreateAsync();
```
This task does not complete until the machine is entirely provisioned and booting - a period of over ten minutes. That doesn't seem async to me. Is there something I am doing wrong? I want the call to return prior to the machine's availability.
For comparison, when provisioning a VM on Amazon EC2 returns nearly immediately, well before the machine is fully provisioned and booted.
I need from the call is the Id (`vm.Id`), the Primary Private IP (`vm.GetPrimaryNetworkInterface().PrimaryPrivateIP`), and the primary NIC Id (`vm.PrimaryNetworkInterfaceId`). I do not need the machine to be ready.
Thanks!
_Copied from original issue: Azure/azure-sdk-for-net#3411_
Contributor guide
Research direction
Start by tracing the Fluent SDK's VM CreateAsync provisioning path and reviewing the issue discussion for the intended completion semantics. Determine whether the requested VM ID, primary private IP, and NIC ID are available before the machine is ready; done means documenting or implementing a supported return point that matches those requirements.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- azure, java
- Domain
- api, cloud
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100