Task<HttpStatusCode> DoUpdateDeploymentConfiguration(HttpClient client, string serviceName, DeploymentSlot deploymentSlot, XDocument configuration, CancellationToken cancellationToken) { return client.PostXmlAsync<HttpStatusCode>( string.Format("services/hostedservices/{0}/deploymentslots/{1}/?comp=config", serviceName, deploymentSlot), new XDocument(AzureXml.CreateElement("ChangeConfiguration", AzureXml.CreateConfiguration(configuration))), cancellationToken, _policies.RetryOnTransientErrors, (response, tcs) => { response.EnsureSuccessStatusCode(); tcs.TrySetResult(response.StatusCode); }); }