Пример #1
0
        public async Task <bool> WaitForComputeResourceDeploymentAsync(string resourceGroupName, string resourceName,
                                                                       string resourceType)
        {
            bool resourceExists = false;

            while (!resourceExists)
            {
                resourceExists = _resourceManager.GenericResources.CheckExistence(resourceGroupName,
                                                                                  "Microsoft.Compute", String.Empty, resourceType, resourceName, "2016-04-30-preview");

                await Task.Delay(TimeSpan.FromSeconds(5));
            }

            IGenericResource  computeResource   = GetComputeResource(resourceGroupName, resourceName, resourceType);
            ProvisioningState provisioningState =
                ProvisioningState.Parse((string)JObject.FromObject(computeResource.Properties)["provisioningState"]);

            while (!provisioningState.DeploymentEnded())
            {
                await SdkContext.DelayProvider.DelayAsync(DeploymentDelayMilliseconds, CancellationToken.None);

                computeResource = GetComputeResource(resourceGroupName, resourceName, resourceType);

                provisioningState =
                    ProvisioningState.Parse(
                        (string)JObject.FromObject(computeResource.Properties)["provisioningState"]);
            }

            return(provisioningState.DeploymentSucceeded());
        }