public async Task UpdateOriginGroups() { #region Snippet:Managing_OriginGroups_UpdateAnOriginGroup // First we need to get the cdn origin group collection from the specific endpoint ProfileResource profile = await resourceGroup.GetProfiles().GetAsync("myProfile"); CdnEndpointResource endpoint = await profile.GetCdnEndpoints().GetAsync("myEndpoint"); CdnOriginGroupCollection originGroupCollection = endpoint.GetCdnOriginGroups(); // Now we can get the origin group with GetAsync() CdnOriginGroupResource originGroup = await originGroupCollection.GetAsync("myOriginGroup"); // With UpdateAsync(), we can update the origin group CdnOriginGroupPatch input = new CdnOriginGroupPatch() { HealthProbeSettings = new HealthProbeParameters { ProbePath = "/healthz", ProbeRequestType = HealthProbeRequestType.Head, ProbeProtocol = ProbeProtocol.Https, ProbeIntervalInSeconds = 60 } }; ArmOperation <CdnOriginGroupResource> lro = await originGroup.UpdateAsync(WaitUntil.Completed, input); originGroup = lro.Value; #endregion Snippet:Managing_OriginGroups_UpdateAnOriginGroup }
public async Task Update() { SubscriptionResource subscription = await Client.GetDefaultSubscriptionAsync(); ResourceGroupResource rg = await CreateResourceGroup(subscription, "testRg-"); string cdnProfileName = Recording.GenerateAssetName("profile-"); ProfileResource cdnProfile = await CreateCdnProfile(rg, cdnProfileName, CdnSkuName.StandardMicrosoft); string cdnEndpointName = Recording.GenerateAssetName("endpoint-"); CdnEndpointResource cdnEndpoint = await CreateCdnEndpoint(cdnProfile, cdnEndpointName); string cdnOriginGroupName = Recording.GenerateAssetName("origingroup-"); CdnOriginGroupResource cdnOriginGroup = await CreateCdnOriginGroup(cdnEndpoint, cdnOriginGroupName, cdnEndpoint.Data.Origins[0].Name); CdnOriginGroupPatch updateOptions = new CdnOriginGroupPatch() { HealthProbeSettings = new HealthProbeSettings { ProbePath = "/healthz", ProbeRequestType = HealthProbeRequestType.Head, ProbeProtocol = ProbeProtocol.Https, ProbeIntervalInSeconds = 60 } }; var lro = await cdnOriginGroup.UpdateAsync(WaitUntil.Completed, updateOptions); CdnOriginGroupResource updatedCdnOriginGroup = lro.Value; ResourceDataHelper.AssertOriginGroupUpdate(updatedCdnOriginGroup, updateOptions); }
public virtual ArmOperation <CdnOriginGroupResource> Update(WaitUntil waitUntil, CdnOriginGroupPatch patch, CancellationToken cancellationToken = default) { Argument.AssertNotNull(patch, nameof(patch)); using var scope = _cdnOriginGroupClientDiagnostics.CreateScope("CdnOriginGroupResource.Update"); scope.Start(); try { var response = _cdnOriginGroupRestClient.Update(Id.SubscriptionId, Id.ResourceGroupName, Id.Parent.Parent.Name, Id.Parent.Name, Id.Name, patch, cancellationToken); var operation = new CdnArmOperation <CdnOriginGroupResource>(new CdnOriginGroupOperationSource(Client), _cdnOriginGroupClientDiagnostics, Pipeline, _cdnOriginGroupRestClient.CreateUpdateRequest(Id.SubscriptionId, Id.ResourceGroupName, Id.Parent.Parent.Name, Id.Parent.Name, Id.Name, patch).Request, response, OperationFinalStateVia.Location); if (waitUntil == WaitUntil.Completed) { operation.WaitForCompletion(cancellationToken); } return(operation); } catch (Exception e) { scope.Failed(e); throw; } }
public static void AssertOriginGroupUpdate(CdnOriginGroupResource updatedOriginGroup, CdnOriginGroupPatch updateOptions) { Assert.AreEqual(updatedOriginGroup.Data.HealthProbeSettings.ProbePath, updateOptions.HealthProbeSettings.ProbePath); Assert.AreEqual(updatedOriginGroup.Data.HealthProbeSettings.ProbeRequestType, updateOptions.HealthProbeSettings.ProbeRequestType); Assert.AreEqual(updatedOriginGroup.Data.HealthProbeSettings.ProbeProtocol, updateOptions.HealthProbeSettings.ProbeProtocol); Assert.AreEqual(updatedOriginGroup.Data.HealthProbeSettings.ProbeIntervalInSeconds, updateOptions.HealthProbeSettings.ProbeIntervalInSeconds); }