diff --git a/src/HPCCache/HPCCache.Test/Fixtures/HpcCacheCollection.cs b/src/HPCCache/HPCCache.Test/Fixtures/HpcCacheCollection.cs
new file mode 100644
index 000000000000..b600bd9cfda1
--- /dev/null
+++ b/src/HPCCache/HPCCache.Test/Fixtures/HpcCacheCollection.cs
@@ -0,0 +1,26 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+
+namespace Microsoft.Azure.Commands.HPCCache.Test.Fixtures
+{
+ using Xunit;
+
+ ///
+ /// This class is used by XUnit.
+ ///
+ [CollectionDefinition("HpcCacheCollection")]
+ public class HpcCacheCollection : ICollectionFixture
+ {
+ }
+}
diff --git a/src/HPCCache/HPCCache.Test/Fixtures/HpcCacheTestContext.cs b/src/HPCCache/HPCCache.Test/Fixtures/HpcCacheTestContext.cs
new file mode 100644
index 000000000000..e517b9bb0c50
--- /dev/null
+++ b/src/HPCCache/HPCCache.Test/Fixtures/HpcCacheTestContext.cs
@@ -0,0 +1,324 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+
+namespace Microsoft.Azure.Commands.HPCCache.Test.Fixtures
+{
+ using System;
+ using System.Collections.Generic;
+ using System.Linq;
+ using Microsoft.Azure.Commands.HPCCache.Test.Utilities;
+ using Microsoft.Azure.Management.Authorization;
+ using Microsoft.Azure.Management.Authorization.Models;
+ using Microsoft.Azure.Management.Internal.Resources;
+ using Microsoft.Azure.Management.Internal.Resources.Models;
+ using Microsoft.Azure.Management.Network;
+ using Microsoft.Azure.Management.Network.Models;
+ using Microsoft.Azure.Management.StorageCache;
+ using Microsoft.Azure.Management.StorageCache.Models;
+ using Microsoft.Rest.Azure;
+ using Microsoft.Rest.ClientRuntime.Azure.TestFramework;
+
+ ///
+ /// Defines the .
+ ///
+ public class HpcCacheTestContext : IDisposable
+ {
+ ///
+ /// Defines the mockContext.
+ ///
+ private readonly MockContext mockContext;
+
+ ///
+ /// Defines the serviceClientCache.
+ ///
+ private readonly Dictionary serviceClientCache = new Dictionary();
+
+ ///
+ /// Defines the disposedValue.
+ ///
+ private bool disposedValue = false;
+
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ /// Class object.
+ /// Method name of the calling method.
+ public HpcCacheTestContext(
+ string suiteObject,
+ [System.Runtime.CompilerServices.CallerMemberName]
+ string methodName = ".ctor")
+ {
+ this.mockContext = MockContext.Start(suiteObject, methodName);
+ this.RegisterSubscriptionForResource("Microsoft.StorageCache");
+ }
+
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ /// Class type.
+ /// Method name of the calling method.
+ public HpcCacheTestContext(
+ Type type,
+ [System.Runtime.CompilerServices.CallerMemberName]
+ string methodName = ".ctor")
+ {
+ this.mockContext = MockContext.Start(type.Name, methodName);
+ this.RegisterSubscriptionForResource("Microsoft.StorageCache");
+ }
+
+ ///
+ /// Get service client.
+ ///
+ /// HTTP delegation handler.
+ /// The type of the service client to return.
+ /// A management client, created from the current context (environment variables).
+ public TServiceClient GetClient()
+ where TServiceClient : class, IDisposable
+ {
+ if (this.serviceClientCache.TryGetValue(typeof(TServiceClient), out IDisposable clientObject))
+ {
+ return (TServiceClient)clientObject;
+ }
+
+ TServiceClient client = this.mockContext.GetServiceClient();
+ this.serviceClientCache.Add(typeof(TServiceClient), client);
+ return client;
+ }
+
+ ///
+ /// Get or create resource group.
+ ///
+ /// The name of the resource group.
+ /// Location where resource group is to be created.
+ /// ResourceGroup object.
+ public ResourceGroup GetOrCreateResourceGroup(string resourceGroupName, string location)
+ {
+ ResourceManagementClient resourceClient = this.GetClient();
+ ResourceGroup resourceGroup = this.GetResourceGroupIfExists(resourceGroupName);
+
+ if (resourceGroup == null)
+ {
+ resourceGroup = resourceClient.ResourceGroups.CreateOrUpdate(
+ resourceGroupName,
+ new ResourceGroup
+ {
+ Location = location,
+ Tags = new Dictionary() { { resourceGroupName, DateTime.UtcNow.ToString("u") } },
+ });
+ }
+
+ return resourceGroup;
+ }
+
+ ///
+ /// Get or create virtual network.
+ ///
+ /// Object representing a resource group.
+ /// The name of the virtual network.
+ /// VirtualNetwork object.
+ public VirtualNetwork GetOrCreateVirtualNetwork(ResourceGroup resourceGroup, string virtualNetworkName)
+ {
+ NetworkManagementClient networkManagementClient = this.GetClient();
+ VirtualNetwork virtualNetwork = null;
+ try
+ {
+ virtualNetwork = networkManagementClient.VirtualNetworks.Get(resourceGroup.Name, virtualNetworkName);
+ }
+ catch (CloudException ex)
+ {
+ if (ex.Body.Code != "ResourceNotFound")
+ {
+ throw;
+ }
+ }
+
+ if (virtualNetwork == null)
+ {
+ var vnet = new VirtualNetwork()
+ {
+ Location = resourceGroup.Location,
+ AddressSpace = new AddressSpace()
+ {
+ AddressPrefixes = new List { "10.1.0.0/16" },
+ },
+ };
+ virtualNetwork = networkManagementClient.VirtualNetworks.CreateOrUpdate(resourceGroup.Name, virtualNetworkName, vnet);
+ }
+
+ return virtualNetwork;
+ }
+
+ ///
+ /// Get Or create subnet.
+ ///
+ /// Object representing a resource group.
+ /// Object representing a virtual network.
+ /// The name of the subnet.
+ /// Subnet object.
+ public Subnet GetOrCreateSubnet(ResourceGroup resourceGroup, VirtualNetwork virtualNetwork, string subnetName)
+ {
+ NetworkManagementClient networkManagementClient = this.GetClient();
+ Subnet subNet = null;
+ try
+ {
+ subNet = networkManagementClient.Subnets.Get(resourceGroup.Name, virtualNetwork.Name, subnetName);
+ }
+ catch (CloudException ex)
+ {
+ if (ex.Body.Code != "NotFound")
+ {
+ throw;
+ }
+ }
+
+ if (subNet == null)
+ {
+ var snet = new Subnet()
+ {
+ Name = subnetName,
+ AddressPrefix = "10.1.0.0/24",
+ };
+
+ subNet = networkManagementClient.Subnets.CreateOrUpdate(resourceGroup.Name, virtualNetwork.Name, subnetName, snet);
+ }
+
+ return subNet;
+ }
+
+ ///
+ /// Get cache if exists.
+ ///
+ /// Object representing a resource group.
+ /// The name of the cache.
+ /// Cache object if cache exists else null.
+ public Cache GetCacheIfExists(ResourceGroup resourceGroup, string cacheName)
+ {
+ StorageCacheManagementClient storagecacheManagementClient = this.GetClient();
+ storagecacheManagementClient.ApiVersion = Constants.DefaultAPIVersion;
+ try
+ {
+ return storagecacheManagementClient.Caches.Get(resourceGroup.Name, cacheName);
+ }
+ catch (CloudErrorException ex)
+ {
+ if (ex.Body.Error.Code == "ResourceNotFound")
+ {
+ return null;
+ }
+ else
+ {
+ throw;
+ }
+ }
+ }
+
+ ///
+ /// Get resource group if exists.
+ ///
+ /// The name of the resource group.
+ /// ResourceGroup object if resource group exists else null.
+ public ResourceGroup GetResourceGroupIfExists(string resourceGroupName)
+ {
+ ResourceManagementClient resourceManagementClient = this.GetClient();
+ try
+ {
+ return resourceManagementClient.ResourceGroups.Get(resourceGroupName);
+ }
+ catch (CloudException ex)
+ {
+ if (ex.Body.Code == "ResourceGroupNotFound")
+ {
+ return null;
+ }
+ else
+ {
+ throw;
+ }
+ }
+ }
+
+ ///
+ /// Register subscription for resource.
+ ///
+ /// Resource provider name.
+ public void RegisterSubscriptionForResource(string providerName)
+ {
+ ResourceManagementClient resourceManagementClient = this.GetClient();
+ var reg = resourceManagementClient.Providers.Register(providerName);
+ StorageCacheTestUtilities.ThrowIfTrue(reg == null, $"Failed to register provider {providerName}");
+ var result = resourceManagementClient.Providers.Get(providerName);
+ StorageCacheTestUtilities.ThrowIfTrue(result == null, $"Failed to register provier {providerName}");
+ }
+
+ ///
+ /// Add role assignment by role name.
+ ///
+ /// Object representing a HpcCacheTestContext.
+ /// The scope of the role assignment to create.
+ /// The role name.
+ /// The name of the role assignment to create.
+ public void AddRoleAssignment(HpcCacheTestContext context, string scope, string roleName, string assignmentName)
+ {
+ AuthorizationManagementClient authorizationManagementClient = context.GetClient();
+ var roleDefinition = authorizationManagementClient.RoleDefinitions
+ .List(scope)
+ .First(role => role.RoleName.StartsWith(roleName));
+
+ var newRoleAssignment = new RoleAssignmentCreateParameters()
+ {
+ RoleDefinitionId = roleDefinition.Id,
+ PrincipalId = Constants.StorageCacheResourceProviderPrincipalId,
+
+ // The principal ID assigned to the role.
+ // This maps to the ID inside the Active Directory.
+ // It can point to a user, service principal, or security group.
+ CanDelegate = false,
+ };
+
+ authorizationManagementClient.RoleAssignments.Create(scope, assignmentName, newRoleAssignment);
+ }
+
+ ///
+ /// This code added to correctly implement the disposable pattern.
+ ///
+ public void Dispose()
+ {
+ this.Dispose(true);
+ }
+
+ ///
+ /// Dispose managed state.
+ ///
+ /// true if we should dispose managed state, otherwise false.
+ protected virtual void Dispose(bool disposing)
+ {
+ if (!this.disposedValue)
+ {
+ if (disposing)
+ {
+ // Dispose clients
+ foreach (IDisposable client in this.serviceClientCache.Values)
+ {
+ client.Dispose();
+ }
+
+ // Dispose context
+ this.mockContext.Dispose();
+ }
+
+ this.disposedValue = true;
+ }
+ }
+ }
+}
diff --git a/src/HPCCache/HPCCache.Test/Fixtures/HpcCacheTestFixture.cs b/src/HPCCache/HPCCache.Test/Fixtures/HpcCacheTestFixture.cs
new file mode 100644
index 000000000000..8206f98b3b00
--- /dev/null
+++ b/src/HPCCache/HPCCache.Test/Fixtures/HpcCacheTestFixture.cs
@@ -0,0 +1,172 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+
+namespace Microsoft.Azure.Commands.HPCCache.Test.Fixtures
+{
+ using System;
+ using System.Text.RegularExpressions;
+ using Microsoft.Azure.Commands.HPCCache.Test.Helper;
+ using Microsoft.Azure.Commands.HPCCache.Test.Utilities;
+ using Microsoft.Azure.Management.Internal.Resources.Models;
+ using Microsoft.Azure.Management.Network.Models;
+ using Microsoft.Azure.Management.StorageCache;
+ using Microsoft.Azure.Management.StorageCache.Models;
+ using Microsoft.Azure.Test.HttpRecorder;
+
+ ///
+ /// Defines HPC cache test fixture.
+ ///
+ public class HpcCacheTestFixture : IDisposable
+ {
+ ///
+ /// Defines the SubnetRegex.
+ ///
+ private static readonly Regex SubnetRegex = new Regex(@"^(/subscriptions/[-0-9a-f]{36}/resourcegroups/[-\w\._\(\)]+/providers/Microsoft.Network/virtualNetworks/(?[-\w\._\(\)]+))/subnets/(?[-\w\._\(\)]+)$", RegexOptions.Compiled | RegexOptions.IgnoreCase);
+
+ ///
+ /// Defines the resGroupName.
+ ///
+ private readonly string resGroupName;
+
+ ///
+ /// Defines the virNetworkName.
+ ///
+ private readonly string virNetworkName;
+
+ ///
+ /// Defines the subnetName.
+ ///
+ private readonly string subnetName;
+
+ ///
+ /// Defines the cacheName.
+ ///
+ private readonly string cacheName;
+
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ public HpcCacheTestFixture()
+ {
+ using (this.Context = new HpcCacheTestContext(this.GetType().Name))
+ {
+ this.Context = new HpcCacheTestContext(this.GetType().Name);
+ try
+ {
+ StorageCacheManagementClient storagecacheMgmtClient = this.Context.GetClient();
+ storagecacheMgmtClient.ApiVersion = Constants.DefaultAPIVersion;
+
+ if (string.IsNullOrEmpty(HpcCacheTestEnvironmentUtilities.ResourceGroupName) &&
+ string.IsNullOrEmpty(HpcCacheTestEnvironmentUtilities.CacheName))
+ {
+ this.resGroupName = StorageCacheTestUtilities.GenerateName(HpcCacheTestEnvironmentUtilities.ResourcePrefix);
+ this.virNetworkName = "VNet-" + this.resGroupName;
+ this.subnetName = "Subnet-" + this.resGroupName;
+ this.cacheName = "Cache-" + this.resGroupName;
+ }
+ else
+ {
+ this.resGroupName = HpcCacheTestEnvironmentUtilities.ResourceGroupName;
+ this.cacheName = HpcCacheTestEnvironmentUtilities.CacheName;
+ this.ResourceGroup = this.Context.GetOrCreateResourceGroup(this.resGroupName, HpcCacheTestEnvironmentUtilities.Location);
+ this.Cache = this.Context.GetCacheIfExists(this.ResourceGroup, this.cacheName);
+
+ if (this.Cache != null)
+ {
+ Match subnetMatch = SubnetRegex.Match(this.Cache.Subnet);
+ this.virNetworkName = subnetMatch.Groups["VNetName"].Value;
+ this.subnetName = subnetMatch.Groups["SubnetName"].Value;
+ }
+ else
+ {
+ this.virNetworkName = "VNet-" + this.resGroupName;
+ this.subnetName = "Subnet-" + this.resGroupName;
+ }
+ }
+
+ if (this.ResourceGroup == null)
+ {
+ this.ResourceGroup = this.Context.GetOrCreateResourceGroup(this.resGroupName, HpcCacheTestEnvironmentUtilities.Location);
+ }
+
+ this.VirtualNetwork = this.Context.GetOrCreateVirtualNetwork(this.ResourceGroup, this.virNetworkName);
+ this.SubNet = this.Context.GetOrCreateSubnet(this.ResourceGroup, this.VirtualNetwork, this.subnetName);
+
+ this.SubscriptionID = HpcCacheTestEnvironmentUtilities.SubscriptionId();
+ this.CacheHelper = new CacheHelper(this.SubscriptionID, storagecacheMgmtClient, this.ResourceGroup, this.VirtualNetwork, this.SubNet);
+ var sku = HpcCacheTestEnvironmentUtilities.CacheSku;
+ var size = HpcCacheTestEnvironmentUtilities.CacheSize;
+ var int_size = int.Parse(size);
+ if (this.Cache == null)
+ {
+ this.Cache = null;
+ this.Cache = this.CacheHelper.Create(this.cacheName, sku, int_size);
+ if (HttpMockServer.Mode == HttpRecorderMode.Record)
+ {
+ this.CacheHelper.CheckCacheState(this.cacheName);
+ }
+ }
+ }
+ catch (Exception)
+ {
+ this.Context.Dispose();
+ throw;
+ }
+ }
+ }
+
+ ///
+ /// Gets the subscriptionID.
+ ///
+ public string SubscriptionID { get; }
+
+ ///
+ /// Gets or sets the Context.
+ ///
+ public HpcCacheTestContext Context { get; set; }
+
+ ///
+ /// Gets or sets the ResourceGroup.
+ ///
+ public ResourceGroup ResourceGroup { get; set; }
+
+ ///
+ /// Gets or sets the VirtualNetwork.
+ ///
+ public VirtualNetwork VirtualNetwork { get; set; }
+
+ ///
+ /// Gets or sets the SubNet.
+ ///
+ public Subnet SubNet { get; set; }
+
+ ///
+ /// Gets or sets the Hpc cache.
+ ///
+ public CacheHelper CacheHelper { get; set; }
+
+ ///
+ /// Gets or sets the Cache.
+ ///
+ public Cache Cache { get; set; }
+
+ ///
+ /// Dispose the object.
+ ///
+ public void Dispose()
+ {
+ this.Context.Dispose();
+ }
+ }
+}
diff --git a/src/HPCCache/HPCCache.Test/Fixtures/StorageAccountFixture.cs b/src/HPCCache/HPCCache.Test/Fixtures/StorageAccountFixture.cs
new file mode 100644
index 000000000000..4159c636d342
--- /dev/null
+++ b/src/HPCCache/HPCCache.Test/Fixtures/StorageAccountFixture.cs
@@ -0,0 +1,275 @@
+namespace Microsoft.Azure.Commands.HPCCache.Test.Fixtures
+{
+ using System;
+ using System.Collections.Generic;
+ using System.Text.RegularExpressions;
+ using System.Web;
+ using Microsoft.Azure.Commands.HPCCache.Test.Helper;
+ using Microsoft.Azure.Commands.HPCCache.Test.Utilities;
+ using Microsoft.Azure.Management.Internal.Resources.Models;
+ using Microsoft.Azure.Management.Storage;
+ using Microsoft.Azure.Management.Storage.Models;
+ using Microsoft.Azure.Management.StorageCache;
+ using Microsoft.Azure.Management.StorageCache.Models;
+ using Microsoft.Azure.Test.HttpRecorder;
+ using Microsoft.Rest.ClientRuntime.Azure.TestFramework;
+ using Xunit;
+ using Xunit.Abstractions;
+
+ ///
+ /// Storage account fixture to share created storage accounts between the tests in same class.
+ ///
+ [Collection("HpcCacheCollection")]
+ public class StorageAccountFixture : IDisposable
+ {
+ private static readonly Regex ClfsTargetRegex = new Regex(@"^(/subscriptions/[-0-9a-f]{36}/resourcegroups/[-\w\._\(\)]+/providers/Microsoft.Storage/storageAccounts/(?[-\w\._\(\)]+))/blobServices/default/containers/(?[-\w\._\(\)]+)$", RegexOptions.Compiled | RegexOptions.IgnoreCase);
+
+ ///
+ /// Defines the Fixture.
+ ///
+ private readonly HpcCacheTestFixture fixture;
+
+ ///
+ /// Defines the storage accounts cache.
+ ///
+ private readonly Dictionary storageAccountsCache = new Dictionary();
+
+ ///
+ /// Defines the blob containers cache.
+ ///
+ private readonly Dictionary blobContainersCache = new Dictionary();
+
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ /// HpcCacheTestFixture.
+ public StorageAccountFixture(HpcCacheTestFixture fixture)
+ {
+ this.fixture = fixture;
+ using (this.Context = new HpcCacheTestContext(this.GetType().Name))
+ {
+ this.Context = new HpcCacheTestContext(this.GetType().Name);
+ this.StorageTarget = this.AddClfsStorageTarget(this.Context);
+ Match clfsTargetMatch = ClfsTargetRegex.Match(this.StorageTarget.Clfs.Target);
+ var storageAccountName = clfsTargetMatch.Groups["StorageAccountName"].Value;
+ StorageManagementClient storageManagementClient = this.Context.GetClient();
+ StorageAccountsHelper storageAccountsHelper = new StorageAccountsHelper(storageManagementClient, this.fixture.ResourceGroup);
+ StorageAccount existingStorageAccount = storageAccountsHelper.GetStorageAccount(this.fixture.ResourceGroup.Name, storageAccountName);
+ if (!this.storageAccountsCache.TryGetValue(existingStorageAccount.Name, out StorageAccount _))
+ {
+ this.storageAccountsCache.Add(existingStorageAccount.Name, existingStorageAccount);
+ }
+
+ for (int i = 0; i < 10; i++)
+ {
+ this.AddBlobContainer(this.Context, this.fixture.ResourceGroup, existingStorageAccount, suffix: i.ToString());
+ }
+ }
+ }
+
+ ///
+ /// Gets or sets the Context.
+ ///
+ public HpcCacheTestContext Context { get; set; }
+
+ ///
+ /// Gets or sets the storageTarget.
+ ///
+ public StorageTarget StorageTarget { get; set; }
+
+ ///
+ public void Dispose()
+ {
+ // We do not create anything in this fixture but
+ // just use the HpcCacheTestFixture which has its own disposal method.
+ }
+
+ ///
+ /// Adds storage account in given resource group and applies required roles.
+ ///
+ /// HpcCacheTestContext.
+ /// Object representing a resource group.
+ /// storage account name.
+ /// suffix.
+ /// Whether to add storage account contributor roles.
+ /// testOutputHelper.
+ /// Sleep time for permissions to get propagated.
+ /// Whether to wait for permissions to be propagated.
+ /// StorageAccount.
+ public StorageAccount AddStorageAccount(
+ HpcCacheTestContext context,
+ ResourceGroup resourceGroup,
+ string storageAccountName,
+ string suffix = null,
+ bool addPermissions = true,
+ ITestOutputHelper testOutputHelper = null,
+ int sleep = 300,
+ bool waitForPermissions = true)
+ {
+ if (this.storageAccountsCache.TryGetValue(storageAccountName + suffix, out StorageAccount storageAccount))
+ {
+ if (testOutputHelper != null)
+ {
+ testOutputHelper.WriteLine($"Using existing storage account {storageAccountName + suffix}");
+ }
+
+ return storageAccount;
+ }
+
+ StorageManagementClient storageManagementClient = context.GetClient();
+ StorageAccountsHelper storageAccountsHelper = new StorageAccountsHelper(storageManagementClient, resourceGroup);
+ storageAccount = storageAccountsHelper.CreateStorageAccount(storageAccountName + suffix);
+ if (addPermissions)
+ {
+ this.AddStorageAccountAccessRules(context, storageAccount);
+ }
+
+ if (waitForPermissions && HttpMockServer.Mode == HttpRecorderMode.Record)
+ {
+ if (testOutputHelper != null)
+ {
+ testOutputHelper.WriteLine($"Sleeping {sleep.ToString()} seconds while permissions propagates.");
+ }
+ TestUtilities.Wait(new TimeSpan(0, 0, sleep));
+ }
+
+ this.storageAccountsCache.Add(storageAccount.Name, storageAccount);
+ return storageAccount;
+ }
+
+ ///
+ /// Adds blob container.
+ ///
+ /// HpcCacheTestContext.
+ /// Object representing a resource group.
+ /// Object representing a storage account.
+ /// containerName.
+ /// suffix.
+ /// testOutputHelper.
+ /// BlobContainer.
+ public BlobContainer AddBlobContainer(
+ HpcCacheTestContext context,
+ ResourceGroup resourceGroup,
+ StorageAccount storageAccount,
+ string containerName = "cmdletcontnr",
+ string suffix = null,
+ ITestOutputHelper testOutputHelper = null)
+ {
+ if (this.blobContainersCache.TryGetValue(containerName + suffix, out BlobContainer blobContainer))
+ {
+ if (testOutputHelper != null)
+ {
+ testOutputHelper.WriteLine($"Using existing blob container {containerName + suffix}");
+ }
+
+ return blobContainer;
+ }
+
+ StorageManagementClient storageManagementClient = context.GetClient();
+ StorageAccountsHelper storageAccountsHelper = new StorageAccountsHelper(storageManagementClient, resourceGroup);
+ blobContainer = storageAccountsHelper.CreateBlobContainer(storageAccount.Name, containerName + suffix);
+ this.blobContainersCache.Add(blobContainer.Name, blobContainer);
+ return blobContainer;
+ }
+
+ ///
+ /// Creates storage account, blob container and adds CLFS storage account to cache.
+ ///
+ /// HpcCacheTestContext.
+ /// suffix.
+ /// Whether to wait for storage target to deploy.
+ /// Whether to add storage account contributor roles.
+ /// testOutputHelper.
+ /// Sleep time for permissions to get propagated.
+ /// Whether to wait for permissions to be propagated.
+ /// Max retries.
+ /// StorageTarget.
+ public StorageTarget AddClfsStorageTarget(
+ HpcCacheTestContext context,
+ string storageTargetName = "msazure",
+ string storageAccountName = "cmdletsa",
+ string containerName = "cmdletcontnr",
+ string suffix = null,
+ bool waitForStorageTarget = true,
+ bool addPermissions = true,
+ ITestOutputHelper testOutputHelper = null,
+ int sleep = 300,
+ bool waitForPermissions = true,
+ int maxRequestTries = 25)
+ {
+ StorageTarget storageTarget;
+
+ if (string.IsNullOrEmpty(HpcCacheTestEnvironmentUtilities.StorageTargetName))
+ {
+ storageTargetName = string.IsNullOrEmpty(suffix) ? storageTargetName : storageTargetName + suffix;
+ }
+ else
+ {
+ storageTargetName = HpcCacheTestEnvironmentUtilities.StorageTargetName;
+ }
+
+ var client = context.GetClient();
+ client.ApiVersion = Constants.DefaultAPIVersion;
+ this.fixture.CacheHelper.StoragecacheManagementClient = client;
+ storageTarget = this.fixture.CacheHelper.GetStorageTarget(this.fixture.Cache.Name, storageTargetName);
+
+ if (storageTarget == null)
+ {
+ string junction = "/junction" + suffix;
+ var storageAccount = this.AddStorageAccount(
+ context,
+ this.fixture.ResourceGroup,
+ storageAccountName,
+ suffix,
+ addPermissions,
+ testOutputHelper,
+ sleep: sleep,
+ waitForPermissions: waitForPermissions);
+ var blobContainer = this.AddBlobContainer(context, this.fixture.ResourceGroup, storageAccount, containerName, suffix, testOutputHelper);
+ StorageTarget storageTargetParameters = this.fixture.CacheHelper.CreateClfsStorageTargetParameters(
+ storageAccount.Name,
+ blobContainer.Name,
+ junction);
+ storageTarget = this.fixture.CacheHelper.CreateStorageTarget(
+ this.fixture.Cache.Name,
+ storageTargetName,
+ storageTargetParameters,
+ testOutputHelper,
+ waitForStorageTarget,
+ maxRequestTries);
+ }
+
+ return storageTarget;
+ }
+
+ ///
+ /// Adds storage account access roles.
+ /// Storage Account Contributor or Storage blob Contributor.
+ ///
+ /// Object representing a HpcCacheTestContext.
+ /// Object representing a storage account.
+ /// Object representing a testOutputHelper.
+ private void AddStorageAccountAccessRules(
+ HpcCacheTestContext context,
+ StorageAccount storageAccount,
+ ITestOutputHelper testOutputHelper = null)
+ {
+ try
+ {
+ string role1 = "Storage Account Contributor";
+ context.AddRoleAssignment(context, storageAccount.Id, role1, TestUtilities.GenerateGuid().ToString());
+
+ // string role2 = "Storage Blob Data Contributor";
+ // context.AddRoleAssignment(context, storageAccount.Id, role2, TestUtilities.GenerateGuid().ToString());
+ if (testOutputHelper != null)
+ {
+ testOutputHelper.WriteLine($"Added {role1} role to storage account {storageAccount.Name}.");
+ }
+ }
+ catch (Exception)
+ {
+ throw;
+ }
+ }
+ }
+}
diff --git a/src/HPCCache/HPCCache.Test/HPCCache.Test.csproj b/src/HPCCache/HPCCache.Test/HPCCache.Test.csproj
new file mode 100644
index 000000000000..eb44734f7e80
--- /dev/null
+++ b/src/HPCCache/HPCCache.Test/HPCCache.Test.csproj
@@ -0,0 +1,24 @@
+
+
+
+ HPCCache
+
+
+
+
+
+ $(LegacyAssemblyPrefix)$(PsModuleName)$(AzTestAssemblySuffix)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/HPCCache/HPCCache.Test/Helper/CacheHelper.cs b/src/HPCCache/HPCCache.Test/Helper/CacheHelper.cs
new file mode 100644
index 000000000000..616835d917fa
--- /dev/null
+++ b/src/HPCCache/HPCCache.Test/Helper/CacheHelper.cs
@@ -0,0 +1,406 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+
+namespace Microsoft.Azure.Commands.HPCCache.Test.Helper
+{
+ using System;
+ using System.Collections.Generic;
+ using System.Threading.Tasks;
+ using Microsoft.Azure.Commands.HPCCache.Test.Utilities;
+ using Microsoft.Azure.Management.Internal.Resources.Models;
+ using Microsoft.Azure.Management.Network;
+ using Microsoft.Azure.Management.Network.Models;
+ using Microsoft.Azure.Management.Storage;
+ using Microsoft.Azure.Management.StorageCache;
+ using Microsoft.Azure.Management.StorageCache.Models;
+ using Microsoft.Azure.Test.HttpRecorder;
+ using Microsoft.Rest.Azure;
+ using Xunit.Abstractions;
+
+ ///
+ /// Storage cache helper.
+ ///
+ public class CacheHelper
+ {
+ ///
+ /// Target resource group.
+ ///
+ private readonly ResourceGroup resourceGroup;
+
+ ///
+ /// Target virtual network.
+ ///
+ private readonly VirtualNetwork virtualNetwork;
+
+ ///
+ /// Target subent.
+ ///
+ private readonly Subnet subNet;
+
+ ///
+ /// Subscription id.
+ ///
+ private readonly string subscriptionId;
+
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ /// Subscription id.
+ /// Object representing a cache management client.
+ /// Object representing a resource group.
+ /// Object representing a virtual network.
+ /// Object representing a subnet for cache.
+ public CacheHelper(string subscription_id, StorageCacheManagementClient client, ResourceGroup resourceGroup, VirtualNetwork virtualNetwork, Subnet subnet)
+ {
+ this.StoragecacheManagementClient = client;
+ this.resourceGroup = resourceGroup;
+ this.virtualNetwork = virtualNetwork;
+ this.subNet = subnet;
+ this.subscriptionId = subscription_id;
+ }
+
+ ///
+ /// Gets or Sets the Storage cache management client.
+ ///
+ public StorageCacheManagementClient StoragecacheManagementClient { get; set; }
+
+ ///
+ /// Gets or sets the CacheHealth
+ /// Gets or sets cache health.
+ ///
+ public string CacheHealth { get; set; }
+
+ ///
+ /// Gets or sets the ProvisioningState
+ /// Gets or sets cache provisioning state.
+ ///
+ public string ProvisioningState { get; set; }
+
+ ///
+ /// Get cache.
+ ///
+ /// Name of the cache.
+ /// Cache object.
+ public Cache Get(string name)
+ {
+ return this.StoragecacheManagementClient.Caches.Get(this.resourceGroup.Name, name);
+ }
+
+ ///
+ /// Create cache.
+ ///
+ /// Name of the cache.
+ /// Name of the SKU.
+ /// Size of cache.
+ /// Skip get cache before creating it.
+ /// Cache object.
+ public Cache Create(string name, string sku, int cacheSize, bool skipGet = false)
+ {
+ Cache cache;
+ if (!skipGet)
+ {
+ try
+ {
+ cache = this.Get(name);
+ }
+ catch (CloudErrorException ex)
+ {
+ if (ex.Body.Error.Code == "ResourceNotFound")
+ {
+ cache = null;
+ }
+ else
+ {
+ throw;
+ }
+ }
+ }
+ else
+ {
+ cache = null;
+ }
+
+ if (cache == null)
+ {
+ var cacheSku = new CacheSku() { Name = sku };
+ var subnetUri = $"/subscriptions/{this.subscriptionId}/resourcegroups/{this.resourceGroup.Name}/providers/Microsoft.Network/virtualNetworks/{this.virtualNetwork.Name}/subnets/{this.subNet.Name}";
+ var cacheParameters = new Cache() { CacheSizeGB = cacheSize, Location = this.resourceGroup.Location, Sku = cacheSku, Subnet = subnetUri };
+ cache = this.StoragecacheManagementClient.Caches.CreateOrUpdate(this.resourceGroup.Name, name, cacheParameters);
+ }
+
+ return cache;
+ }
+
+ ///
+ /// Get cache provisioning state.
+ ///
+ /// Name of the cache.
+ /// Cache provisioning state.
+ public string GetCacheProvisioningState(string name)
+ {
+ try
+ {
+ var cache = this.Get(name);
+ string state = cache.ProvisioningState;
+ return state;
+ }
+ catch (CloudException)
+ {
+ return string.Empty;
+ }
+ }
+
+ ///
+ /// Get cache health.
+ ///
+ /// Name of the cache.
+ /// Cache health.
+ public string GetCacheHealthState(string name)
+ {
+ try
+ {
+ var cache = this.Get(name);
+ string state = cache.Health.State;
+ return state;
+ }
+ catch (CloudException)
+ {
+ return string.Empty;
+ }
+ }
+
+ ///
+ /// Check both provisioning and health state of the cache.
+ ///
+ /// Name of the cache.
+ public void CheckCacheState(string name)
+ {
+ this.WaitForCacheState(this.GetCacheProvisioningState, name, "Succeeded").GetAwaiter().GetResult();
+ this.WaitForCacheState(this.GetCacheHealthState, name, "Healthy").GetAwaiter().GetResult();
+ }
+
+ ///
+ /// Wait for expected cache state.
+ ///
+ /// Function to call.
+ /// Name of the cache.
+ /// Expected sate of the cache.
+ /// Timeout for polling.
+ /// Delay between polling.
+ /// A representing the asynchronous operation.
+ public async Task WaitForCacheState(
+ Func operation,
+ string name,
+ string state,
+ int timeout = 1800,
+ int polling_delay = 120)
+ {
+ var waitTask = Task.Run(async () =>
+ {
+ string currentState = null;
+ while (!string.Equals(currentState, state))
+ {
+ currentState = operation(name);
+ if (operation == this.GetCacheProvisioningState
+ && string.Equals(currentState, "Failed", StringComparison.OrdinalIgnoreCase))
+ {
+ throw new Exception(string.Format("Cache {0} failed to deploy.", name));
+ }
+
+ await Task.Delay(new TimeSpan(0, 0, polling_delay));
+ }
+
+ if (operation == this.GetCacheProvisioningState)
+ {
+ this.ProvisioningState = currentState;
+ }
+
+ if (operation == this.GetCacheHealthState)
+ {
+ this.CacheHealth = currentState;
+ }
+ });
+
+ if (waitTask != await Task.WhenAny(waitTask, Task.Delay(new TimeSpan(0, 0, timeout))))
+ {
+ throw new TimeoutException();
+ }
+ }
+
+ ///
+ /// Gets storage target.
+ ///
+ /// Storage cache name.
+ /// Storage target name.
+ /// Raise exception.
+ /// Storage target.
+ public StorageTarget GetStorageTarget(string cacheName, string storageTargetName, bool raise = false)
+ {
+ StorageTarget storageTarget;
+ try
+ {
+ storageTarget = this.StoragecacheManagementClient.StorageTargets.Get(this.resourceGroup.Name, cacheName, storageTargetName);
+ }
+ catch (CloudErrorException ex)
+ {
+ if (ex.Body.Error.Code == "NotFound")
+ {
+ if (raise)
+ {
+ throw;
+ }
+
+ storageTarget = null;
+ }
+ else
+ {
+ throw;
+ }
+ }
+
+ return storageTarget;
+ }
+
+ ///
+ /// Create CLFS storage target parameters.
+ ///
+ /// Storage account name.
+ /// Storage container name.
+ /// namepace path.
+ /// Subscription id.
+ /// Resource group name.
+ /// CLFS storage target parameters.
+ public StorageTarget CreateClfsStorageTargetParameters(
+ string storageAccountName,
+ string containerName,
+ string namespacePath,
+ string subscriptionId = null,
+ string resourceGroupName = null)
+ {
+ var subscriptionID = string.IsNullOrEmpty(subscriptionId) ? this.subscriptionId : subscriptionId;
+ var resourceGroup = string.IsNullOrEmpty(resourceGroupName) ? this.resourceGroup.Name : resourceGroupName;
+ ClfsTarget clfsTarget = new ClfsTarget()
+ {
+ Target =
+ $"/subscriptions/{subscriptionID}/" +
+ $"resourceGroups/{resourceGroup}/" +
+ $"providers/Microsoft.Storage/storageAccounts/{storageAccountName}/" +
+ $"blobServices/default/containers/{containerName}",
+ };
+
+ NamespaceJunction namespaceJunction = new NamespaceJunction()
+ {
+ NamespacePath = namespacePath,
+ TargetPath = "/",
+ };
+
+ StorageTarget storageTargetParameters = new StorageTarget
+ {
+ TargetType = "clfs",
+ Clfs = clfsTarget,
+ Junctions = new List() { namespaceJunction },
+ };
+
+ return storageTargetParameters;
+ }
+
+ ///
+ /// Create CLFS storage target.
+ ///
+ /// Storage cache name.
+ /// Storage target name.
+ /// Object representing a Storage target parameters.
+ /// Object representing a ITestOutputHelper.
+ /// Wait for storage target to deploy.
+ /// Max retries.
+ /// Delay between each retries in seconds.
+ /// CLFS storage target.
+ public StorageTarget CreateStorageTarget(
+ string cacheName,
+ string storageTargetName,
+ StorageTarget storageTargetParameters,
+ ITestOutputHelper testOutputHelper = null,
+ bool waitForStorageTarget = true,
+ int maxRequestTries = 25,
+ int delayBetweenTries = 90)
+ {
+ StorageTarget storageTarget;
+ storageTarget = StorageCacheTestUtilities.Retry(
+ () =>
+ this.StoragecacheManagementClient.StorageTargets.CreateOrUpdate(
+ this.resourceGroup.Name,
+ cacheName,
+ storageTargetName,
+ storageTargetParameters),
+ maxRequestTries,
+ delayBetweenTries,
+ "hasn't sufficient permissions",
+ testOutputHelper);
+
+ if (waitForStorageTarget)
+ {
+ this.WaitForStoragteTargetState(cacheName, storageTargetName, "Succeeded", testOutputHelper).GetAwaiter().GetResult();
+ }
+
+ return storageTarget;
+ }
+
+ ///
+ /// Blocks until storage target ProvisioningState is as expected or timeout occurs.
+ ///
+ /// Name of the cache.
+ /// Name of the storage target.
+ /// Expected sate of the storage target.
+ /// Object representing a Storage target parameters.
+ /// Delay between cache polling.
+ /// Timeout for cache polling.
+ /// A representing the asynchronous operation.
+ public async Task WaitForStoragteTargetState(
+ string cacheName,
+ string storageTargetName,
+ string state,
+ ITestOutputHelper testOutputHelper = null,
+ int polling_delay = 60,
+ int timeout = 900)
+ {
+ var waitTask = Task.Run(async () =>
+ {
+ string currentState = null;
+ while (!string.Equals(currentState, state))
+ {
+ currentState = this.GetStorageTarget(cacheName, storageTargetName).ProvisioningState;
+ if (testOutputHelper != null)
+ {
+ testOutputHelper.WriteLine($"Waiting for successful deploy of storage target {storageTargetName}, current state is {currentState}");
+ }
+
+ if (string.Equals(currentState, "Failed"))
+ {
+ throw new Exception($"Storage target {storageTargetName} failed to deploy.");
+ }
+
+ if (HttpMockServer.Mode == HttpRecorderMode.Record)
+ {
+ await Task.Delay(new TimeSpan(0, 0, polling_delay));
+ }
+ }
+ });
+
+ if (waitTask != await Task.WhenAny(waitTask, Task.Delay(new TimeSpan(0, 0, timeout))))
+ {
+ throw new TimeoutException();
+ }
+ }
+ }
+}
diff --git a/src/HPCCache/HPCCache.Test/Helper/StorageAccountsHelper.cs b/src/HPCCache/HPCCache.Test/Helper/StorageAccountsHelper.cs
new file mode 100644
index 000000000000..d5a7a0838d0b
--- /dev/null
+++ b/src/HPCCache/HPCCache.Test/Helper/StorageAccountsHelper.cs
@@ -0,0 +1,95 @@
+namespace Microsoft.Azure.Commands.HPCCache.Test.Helper
+{
+ using Microsoft.Azure.Management.Internal.Resources.Models;
+ using Microsoft.Azure.Management.Storage;
+ using Microsoft.Azure.Management.Storage.Models;
+ using Sku = Microsoft.Azure.Management.Storage.Models.Sku;
+
+ ///
+ /// Storage account helper.
+ ///
+ public class StorageAccountsHelper
+ {
+ private static readonly string DefaultSkuName = SkuName.StandardLRS;
+ private static readonly string DefaultKind = Kind.StorageV2;
+
+ ///
+ /// Target resource group.
+ ///
+ private readonly ResourceGroup resourceGroup;
+
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ /// Object representing a storage management client.
+ /// Object representing a resource group.
+ public StorageAccountsHelper(StorageManagementClient client, ResourceGroup resourceGroup)
+ {
+ this.StorageManagementClient = client;
+ this.resourceGroup = resourceGroup;
+ }
+
+ ///
+ /// Gets or Sets the Storage cache management client.
+ ///
+ public StorageManagementClient StorageManagementClient { get; set; }
+
+ ///
+ /// Creates storage account.
+ ///
+ /// Storage account to be created.
+ /// Storage SKU.
+ /// Storage kind.
+ /// Stoprage account.
+ public StorageAccount CreateStorageAccount(string storageAccountName, string skuName = null, string storageKind = null)
+ {
+ var sku = string.IsNullOrEmpty(skuName) ? DefaultSkuName : skuName;
+ var kind = string.IsNullOrEmpty(storageKind) ? DefaultKind : storageKind;
+
+ StorageAccountCreateParameters storageAccountCreateParameters = new StorageAccountCreateParameters
+ {
+ Location = this.resourceGroup.Location,
+
+ // Tags = DefaultTags,
+ Sku = new Sku() { Name = sku },
+ Kind = kind,
+ };
+ StorageAccount storageAccount = this.StorageManagementClient.StorageAccounts.Create(this.resourceGroup.Name, storageAccountName, storageAccountCreateParameters);
+ return storageAccount;
+ }
+
+ ///
+ /// Create Blob container.
+ ///
+ /// Storage account where container is to be created.
+ /// Container name.
+ /// Blob container.
+ public BlobContainer CreateBlobContainer(string storageAccountName, string containerName)
+ {
+ BlobContainer blobContainer = this.StorageManagementClient.BlobContainers.Create(this.resourceGroup.Name, storageAccountName, containerName, publicAccess: PublicAccess.Blob);
+ return blobContainer;
+ }
+
+ ///
+ /// GetStorageAccount.
+ ///
+ /// resourceGroupName.
+ /// storageAccountName.
+ /// StorageAccount.
+ public StorageAccount GetStorageAccount(string resourceGroupName, string storageAccountName)
+ {
+ StorageAccount storageAccount = null;
+ var storageAccounts = this.StorageManagementClient.StorageAccounts.ListByResourceGroup(resourceGroupName);
+ foreach (StorageAccount storageAcnt in storageAccounts)
+ {
+ if (storageAcnt.Name == storageAccountName)
+ {
+ storageAccount = storageAcnt;
+ break;
+ }
+ }
+
+ return storageAccount;
+ }
+ }
+}
diff --git a/src/HPCCache/HPCCache.Test/Properties/AssemblyInfo.cs b/src/HPCCache/HPCCache.Test/Properties/AssemblyInfo.cs
new file mode 100644
index 000000000000..38e0cc647ac4
--- /dev/null
+++ b/src/HPCCache/HPCCache.Test/Properties/AssemblyInfo.cs
@@ -0,0 +1,50 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+
+using System.Reflection;
+using System.Runtime.InteropServices;
+using Xunit;
+
+// General Information about an assembly is controlled through the following
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("Microsoft.Azure.Commands.HPCCache.Test")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("Microsoft.Azure.Commands.HPCCache.Test")]
+[assembly: AssemblyCopyright(Microsoft.WindowsAzure.Commands.Common.AzurePowerShell.AssemblyCopyright)]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible
+// to COM components. If you need to access a type in this assembly from
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("982874c2-6cd1-4bd3-8330-ae71b69e1fc3")]
+
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+// You can specify all the values or you can default the Build and Revision Numbers
+// by using the '*' as shown below:
+[assembly: AssemblyVersion("1.0.0")]
+[assembly: AssemblyFileVersion("1.0.0")]
+[assembly: CollectionBehavior(DisableTestParallelization = true)]
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache.Test/ScenarioTests/HPCCacheController.cs b/src/HPCCache/HPCCache.Test/ScenarioTests/HPCCacheController.cs
new file mode 100644
index 000000000000..46b94476606d
--- /dev/null
+++ b/src/HPCCache/HPCCache.Test/ScenarioTests/HPCCacheController.cs
@@ -0,0 +1,193 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+
+namespace Microsoft.Azure.Commands.HPCCache.Test.ScenarioTests
+{
+ using System;
+ using System.Collections.Generic;
+ using System.Diagnostics;
+ using System.IO;
+ using System.Linq;
+ using Microsoft.Azure.Commands.Common.Authentication;
+ using Microsoft.Azure.Commands.HPCCache.Test.Fixtures;
+ using Microsoft.Azure.Management.Internal.Resources;
+ using Microsoft.Azure.Management.Storage;
+ using Microsoft.Azure.Management.StorageCache;
+ using Microsoft.Azure.ServiceManagement.Common.Models;
+ using Microsoft.Azure.Test.HttpRecorder;
+ using Microsoft.WindowsAzure.Commands.ScenarioTest;
+ using Microsoft.WindowsAzure.Commands.Test.Utilities.Common;
+
+ ///
+ /// Base test controller class.
+ ///
+ public class HpcCacheController : RMTestBase
+ {
+ private readonly EnvironmentSetupHelper helper;
+
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ protected HpcCacheController()
+ {
+ this.helper = new EnvironmentSetupHelper();
+ }
+
+ ///
+ /// Gets HpcCacheTestBase instance.
+ ///
+ public static HpcCacheController NewInstance => new HpcCacheController();
+
+ ///
+ /// Gets resource management client.
+ ///
+ public ResourceManagementClient ResourceManagementClient { get; private set; }
+
+ ///
+ /// Gets HPC cache management client.
+ ///
+ public StorageCacheManagementClient StorageCacheManagementClient { get; private set; }
+
+ ///
+ /// Gets storage management client.
+ ///
+ public StorageManagementClient StorageManagementClient { get; private set; }
+
+ ///
+ /// Methods for invoking PowerShell scripts.
+ ///
+ /// logger.
+ /// scripts.
+ public void RunPsTest(XunitTracingInterceptor logger, params string[] scripts)
+ {
+ var sf = new StackTrace().GetFrame(1);
+ var callingClassType = sf.GetMethod().ReflectedType?.ToString();
+ var mockName = sf.GetMethod().Name;
+
+ logger.Information(string.Format("Test method entered: {0}.{1}", callingClassType, mockName));
+ this.RunPsTestWorkflow(
+ logger,
+ () => scripts,
+ null,
+ callingClassType,
+ mockName);
+ logger.Information(string.Format("Test method finished: {0}.{1}", callingClassType, mockName));
+ }
+
+ ///
+ /// RunPsTestWorkflow.
+ ///
+ /// logger.
+ /// scriptBuilder.
+ /// cleanup.
+ /// callingClassType.
+ /// mockName.
+ /// initialize.
+ protected void RunPsTestWorkflow(
+ XunitTracingInterceptor logger,
+ Func scriptBuilder,
+ Action cleanup,
+ string callingClassType,
+ string mockName,
+ Action initialize = null)
+ {
+ this.helper.TracingInterceptor = logger;
+ var d = new Dictionary
+ {
+ { "Microsoft.Resources", null },
+ { "Microsoft.Features", null },
+ { "Microsoft.Authorization", null },
+ };
+ var providersToIgnore = new Dictionary
+ {
+ { "Microsoft.Azure.Management.Resources.ResourceManagementClient", "2016-02-01" },
+ { "Microsoft.Azure.Management.ResourceManager.ResourceManagementClient", "2017-05-10" },
+ };
+ HttpMockServer.Matcher = new PermissiveRecordMatcherWithApiExclusion(true, d, providersToIgnore);
+ HttpMockServer.RecordsDirectory = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "SessionRecords");
+ using (var context = new HpcCacheTestContext(callingClassType, mockName))
+ {
+ initialize?.Invoke();
+ this.SetupManagementClients(context);
+
+ var callingClassName = callingClassType.Split(new[] { "." }, StringSplitOptions.RemoveEmptyEntries).Last();
+ this.helper.SetupModules(
+ AzureModule.AzureResourceManager,
+ "ScenarioTests\\" + callingClassName + ".ps1",
+ this.helper.RMProfileModule,
+ this.helper.GetRMModulePath("Az.HPCCache.psd1"),
+ "AzureRM.Resources.ps1");
+
+ try
+ {
+ var psScripts = scriptBuilder?.Invoke();
+ if (psScripts != null)
+ {
+ this.helper.RunPowerShellTest(psScripts);
+ }
+ }
+ finally
+ {
+ cleanup?.Invoke();
+ }
+ }
+ }
+
+ ///
+ /// Management clients.
+ ///
+ /// context.
+ protected void SetupManagementClients(HpcCacheTestContext context)
+ {
+ var hpcCacheManagementClient = this.GetHpcCacheManagementClient(context);
+ var resourceManagementClient = this.GetResourceManagementClient(context);
+ var storageManagementClient = this.GetStorageManagementClient(context);
+
+ this.helper.SetupManagementClients(
+ hpcCacheManagementClient,
+ resourceManagementClient,
+ storageManagementClient);
+ }
+
+ ///
+ /// GetHpcCacheManagementClient.
+ ///
+ /// context.
+ /// StorageCacheManagementClient.
+ protected StorageCacheManagementClient GetHpcCacheManagementClient(HpcCacheTestContext context)
+ {
+ return context.GetClient();
+ }
+
+ ///
+ /// GetResourceManagementClient.
+ ///
+ /// context.
+ /// ResourceManagementClient.
+ protected ResourceManagementClient GetResourceManagementClient(HpcCacheTestContext context)
+ {
+ return context.GetClient();
+ }
+
+ ///
+ /// GetStorageManagementClient.
+ ///
+ /// context.
+ /// StorageManagementClient.
+ protected StorageManagementClient GetStorageManagementClient(HpcCacheTestContext context)
+ {
+ return context.GetClient();
+ }
+ }
+}
diff --git a/src/HPCCache/HPCCache.Test/ScenarioTests/HpcCacheStorageTargetTest.cs b/src/HPCCache/HPCCache.Test/ScenarioTests/HpcCacheStorageTargetTest.cs
new file mode 100644
index 000000000000..cb5dbf5b2410
--- /dev/null
+++ b/src/HPCCache/HPCCache.Test/ScenarioTests/HpcCacheStorageTargetTest.cs
@@ -0,0 +1,121 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+
+namespace Microsoft.Azure.Commands.HPCCache.Test.ScenarioTests
+{
+ using Microsoft.Azure.Commands.HPCCache.Test.Fixtures;
+ using Microsoft.Azure.ServiceManagement.Common.Models;
+ using Microsoft.WindowsAzure.Commands.ScenarioTest;
+ using Xunit;
+ using Xunit.Abstractions;
+
+ ///
+ /// HpcCacheTest.
+ ///
+ [Collection("HpcCacheCollection")]
+ public class HpcCacheStorageTargetTest : IClassFixture
+ {
+ ///
+ /// Defines the testOutputHelper.
+ ///
+ private readonly ITestOutputHelper testOutputHelper;
+
+ ///
+ /// Defines the Fixture.
+ ///
+ private readonly HpcCacheTestFixture fixture;
+
+ ///
+ /// StorageAccountFixture.
+ ///
+ private readonly StorageAccountFixture storageAccountFixture;
+
+ ///
+ /// XunitTracingInterceptor.
+ ///
+ private readonly XunitTracingInterceptor logger;
+
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ /// The testOutputHelper.
+ /// The Fixture.
+ /// Storage account fixture.
+ public HpcCacheStorageTargetTest(ITestOutputHelper testOutputHelper, HpcCacheTestFixture fixture, StorageAccountFixture storageAccountFixture)
+ {
+ this.fixture = fixture;
+ this.testOutputHelper = testOutputHelper;
+ this.storageAccountFixture = storageAccountFixture;
+ this.logger = new XunitTracingInterceptor(this.testOutputHelper);
+ XunitTracingInterceptor.AddToContext(this.logger);
+ }
+
+ ///
+ /// Test GetAzHPCCacheStorageTarget by resource group and name.
+ ///
+ [Fact]
+ [Trait(Category.AcceptanceType, Category.CheckIn)]
+ public void TestGetAzHPCCacheStorageTargetByNameAndResourceGroup()
+ {
+ var scripts = new string[]
+ {
+ string.Format(
+ "{0} {1} {2} {3}",
+ "Test-GetAzHPCCacheStorageTargetByNameAndResourceGroup",
+ this.fixture.ResourceGroup.Name,
+ this.fixture.Cache.Name,
+ this.storageAccountFixture.StorageTarget.Name),
+ };
+ HpcCacheController.NewInstance.RunPsTest(this.logger, scripts);
+ }
+
+ ///
+ /// Test Set-AzHpcCacheST by resource group, cachenme, storagetarget.
+ ///
+ [Fact]
+ [Trait(Category.AcceptanceType, Category.CheckIn)]
+ public void TestSetStorgeTarget()
+ {
+ var scripts = new string[]
+ {
+ string.Format(
+ "{0} {1} {2} {3}",
+ "Test-SetStorageTarget",
+ this.fixture.ResourceGroup.Name,
+ this.fixture.Cache.Name,
+ this.storageAccountFixture.StorageTarget.Name),
+ };
+ HpcCacheController.NewInstance.RunPsTest(this.logger, scripts);
+ }
+
+ ///
+ /// Test New Set Remove and Get resource group, cachenme, storagetarget.
+ ///
+ [Fact]
+ [Trait(Category.AcceptanceType, Category.CheckIn)]
+ public void TestNewGetSetRemoveST()
+ {
+ var scripts = new string[]
+ {
+ string.Format(
+ "{0} {1} {2} {3}",
+ "Test-New-Get-Remove-StorageTarget",
+ this.fixture.ResourceGroup.Name,
+ this.fixture.Cache.Name,
+ this.fixture.SubscriptionID),
+ };
+ HpcCacheController.NewInstance.RunPsTest(this.logger, scripts);
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache.Test/ScenarioTests/HpcCacheStorageTargetTest.ps1 b/src/HPCCache/HPCCache.Test/ScenarioTests/HpcCacheStorageTargetTest.ps1
new file mode 100644
index 000000000000..72f5fcf61721
--- /dev/null
+++ b/src/HPCCache/HPCCache.Test/ScenarioTests/HpcCacheStorageTargetTest.ps1
@@ -0,0 +1,74 @@
+function Test-GetAzHPCCacheStorageTargetByNameAndResourceGroup
+{
+ Param($ResourceGroupName, $CacheName, $StorageTargetName)
+ $storageTargetObj = Get-AzHPCCacheStorageTarget -ResourceGroupName $ResourceGroupName -CacheName $CacheName -StorageTargetName $StorageTargetName
+ Assert-AreEqual $StorageTargetName $storageTargetObj.Name
+}
+
+function Test-New-Get-Remove-StorageTarget
+{
+ Param($ResourceGroupName, $CacheName, $SubscriptionID)
+ $StorageAccountName = "cmdletsa"
+ $stName = "powershellstoragetarget"
+ $junctions = @(@{"namespacePath"="/msazure";"targetPath"="/";"nfsExport"="/"})
+ $containerId = "/subscriptions/" + $SubscriptionID +"/resourceGroups/" + $ResourceGroupName + "/providers/Microsoft.Storage/storageAccounts/" + $storageAccountName + "/blobServices/default/containers/cmdletcontnr4"
+ New-AzHpcCacheStorageTarget -ResourceGroupName $ResourceGroupName -CacheName $CacheName -StorageTargetName $stName -CLFS -StorageContainerID $containerID -Junction $junctions -Force
+ Start-Sleep -s 5
+ $storageTarget = Get-AzHPCCacheStorageTarget -ResourceGroupName $ResourceGroupName -CacheName $CacheName -StorageTargetName $stName
+ Assert-AreEqual $stName $storageTarget.Name
+ Assert-AreEqual "CLFS" $storageTarget.TargetType
+
+ if ([Microsoft.Azure.Test.HttpRecorder.HttpMockServer]::Mode -ne [Microsoft.Azure.Test.HttpRecorder.HttpRecorderMode]::Playback)
+ {
+ # In loop to check if StorageTarget is Succeeded
+ for ($i = 0; $i -le 20; $i++)
+ {
+ Start-Sleep -s 30
+ $storageTargetGet = Get-AzHPCCacheStorageTarget -ResourceGroupName $ResourceGroupName -CacheName $CacheName -StorageTargetName $stName
+ if ([string]::Compare("Succeeded", $storageTargetGet.ProvisioningState, $True) -eq 0)
+ {
+ Assert-AreEqual $stName $storageTargetGet.Name
+ Assert-AreEqual "Succeeded" $storageTargetGet.ProvisioningState
+ break
+ }
+ Assert-False {$i -eq 20} "StorageTarget is not done completeling after 10 minutes."
+ }
+ }
+
+ $storageTargetRemove = Remove-AzHPCCacheStorageTarget -ResourceGroupName $ResourceGroupName -CacheName $CacheName -StorageTargetName $stName -PassThru -Force
+ Assert-AreEqual $storageTargetRemove True
+ if ([Microsoft.Azure.Test.HttpRecorder.HttpMockServer]::Mode -ne [Microsoft.Azure.Test.HttpRecorder.HttpRecorderMode]::Playback)
+ {
+ Start-Sleep -s 120
+ }
+}
+
+
+function Test-SetStorageTarget
+{
+ Param($ResourceGroupName, $CacheName, $stName)
+ $junctions = @(@{"namespacePath"="/abcdefgh";"targetPath"="/";"nfsExport"="/"})
+ Set-AzHpcCacheStorageTarget -ResourceGroupName $ResourceGroupName -CacheName $CacheName -StorageTargetName $stName -CLFS -Junction $junctions -Force
+ Start-Sleep -s 5
+ $storageTarget = Get-AzHPCCacheStorageTarget -ResourceGroupName $ResourceGroupName -CacheName $CacheName -StorageTargetName $stName
+ Assert-AreEqual $stName $storageTarget.Name
+ Assert-AreEqual "CLFS" $storageTarget.TargetType
+
+ if ([Microsoft.Azure.Test.HttpRecorder.HttpMockServer]::Mode -ne [Microsoft.Azure.Test.HttpRecorder.HttpRecorderMode]::Playback)
+ {
+ # In loop to check if StorageTarget is Succeeded
+ for ($i = 0; $i -le 20; $i++)
+ {
+ Start-Sleep -s 30
+ $storageTargetGet = Get-AzHPCCacheStorageTarget -ResourceGroupName $ResourceGroupName -CacheName $CacheName -StorageTargetName $stName
+ if ([string]::Compare("Succeeded", $storageTargetGet.ProvisioningState, $True) -eq 0)
+ {
+ Assert-AreEqual $stName $storageTargetGet.Name
+ Assert-AreEqual "Succeeded" $storageTargetGet.ProvisioningState
+ Assert-AreEqual "/abcdefgh" $storageTargetGet.Junctions.nameSpacePath
+ break
+ }
+ Assert-False {$i -eq 20} "StorageTarget is not done completeling after 10 minutes."
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache.Test/ScenarioTests/HpcCacheTest.cs b/src/HPCCache/HPCCache.Test/ScenarioTests/HpcCacheTest.cs
new file mode 100644
index 000000000000..41f9b3aad5b3
--- /dev/null
+++ b/src/HPCCache/HPCCache.Test/ScenarioTests/HpcCacheTest.cs
@@ -0,0 +1,183 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+
+namespace Microsoft.Azure.Commands.HPCCache.Test.ScenarioTests
+{
+ using Microsoft.Azure.Commands.HPCCache.Test.Fixtures;
+ using Microsoft.Azure.ServiceManagement.Common.Models;
+ using Microsoft.WindowsAzure.Commands.ScenarioTest;
+ using Xunit;
+ using Xunit.Abstractions;
+
+ ///
+ /// HpcCacheTest.
+ ///
+ [Collection("HpcCacheCollection")]
+ public class HpcCacheTest
+ {
+ ///
+ /// Defines the testOutputHelper.
+ ///
+ private readonly ITestOutputHelper testOutputHelper;
+
+ ///
+ /// Defines the Fixture.
+ ///
+ private readonly HpcCacheTestFixture fixture;
+
+ ///
+ /// XunitTracingInterceptor.
+ ///
+ private readonly XunitTracingInterceptor logger;
+
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ /// The testOutputHelper.
+ /// The Fixture.
+ public HpcCacheTest(ITestOutputHelper testOutputHelper, HpcCacheTestFixture fixture)
+ {
+ this.fixture = fixture;
+ this.testOutputHelper = testOutputHelper;
+ this.logger = new XunitTracingInterceptor(this.testOutputHelper);
+ XunitTracingInterceptor.AddToContext(this.logger);
+ }
+
+ ///
+ /// Test Get-AzHpcCache by resource group and name.
+ ///
+ [Fact]
+ [Trait(Category.AcceptanceType, Category.CheckIn)]
+ public void TestGetCacheByResourceGroupAndName()
+ {
+ var scripts = new string[]
+ {
+ string.Format(
+ "{0} {1} {2}",
+ "Test-GetAzHPCCacheByNameAndResourceGroup",
+ this.fixture.ResourceGroup.Name,
+ this.fixture.Cache.Name),
+ };
+ HpcCacheController.NewInstance.RunPsTest(this.logger, scripts);
+ }
+
+ ///
+ /// Test Flush-AzHpcCache by resource group and name.
+ ///
+ [Fact]
+ [Trait(Category.AcceptanceType, Category.CheckIn)]
+ public void TestFlushCache()
+ {
+ var scripts = new string[]
+ {
+ string.Format(
+ "{0} {1} {2}",
+ "Test-FlushCache",
+ this.fixture.ResourceGroup.Name,
+ this.fixture.Cache.Name),
+ };
+ HpcCacheController.NewInstance.RunPsTest(this.logger, scripts);
+ }
+
+ ///
+ /// Test Start/Stop-AzHpcCache by resource group and name.
+ ///
+ [Fact]
+ [Trait(Category.AcceptanceType, Category.CheckIn)]
+ public void TestStartStopCache()
+ {
+ var scripts = new string[]
+ {
+ string.Format(
+ "{0} {1} {2}",
+ "Test-Stop-Start-Cache",
+ this.fixture.ResourceGroup.Name,
+ this.fixture.Cache.Name),
+ };
+ HpcCacheController.NewInstance.RunPsTest(this.logger, scripts);
+ }
+
+
+ ///
+ /// Test New-AzHpcCache and Remove-AzHpcCache.
+ ///
+ [Fact]
+ [Trait(Category.AcceptanceType, Category.CheckIn)]
+ public void TestNewCacheRemoveCache()
+ {
+ var scripts = new string[]
+ {
+ string.Format(
+ "{0} {1} {2} {3} {4} {5}",
+ "Test-NewCache-RemoveCache",
+ this.fixture.ResourceGroup.Name,
+ this.fixture.SubscriptionID,
+ this.fixture.ResourceGroup.Location,
+ this.fixture.VirtualNetwork.Name,
+ this.fixture.SubNet.Name)
+ };
+ HpcCacheController.NewInstance.RunPsTest(this.logger, scripts);
+ }
+
+ ///
+ /// Test Set-AzHpcCache by resource group and name.
+ ///
+ [Fact(Skip = "Bug in SetCache if cache has no tags, causes null pointer exception - internal server error.")]
+ [Trait(Category.AcceptanceType, Category.CheckIn)]
+ public void TestSetCache()
+ {
+ var scripts = new string[]
+ {
+ string.Format(
+ "{0} {1} {2}",
+ "Test-SetCache",
+ this.fixture.ResourceGroup.Name,
+ this.fixture.Cache.Name),
+ };
+ HpcCacheController.NewInstance.RunPsTest(this.logger, scripts);
+ }
+
+ ///
+ /// Test Get-AzHpcCacheUsageModel.
+ ///
+ [Fact]
+ [Trait(Category.AcceptanceType, Category.CheckIn)]
+ public void TestGetUsageModel()
+ {
+ var scripts = new string[]
+ {
+ string.Format(
+ "{0}",
+ "Test-GetUsageModel"),
+ };
+ HpcCacheController.NewInstance.RunPsTest(this.logger, scripts);
+ }
+
+ ///
+ /// Test Get-AzHpcCacheSku.
+ ///
+ [Fact]
+ [Trait(Category.AcceptanceType, Category.CheckIn)]
+ public void TestGetSku()
+ {
+ var scripts = new string[]
+ {
+ string.Format(
+ "{0}",
+ "Test-GetSku"),
+ };
+ HpcCacheController.NewInstance.RunPsTest(this.logger, scripts);
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache.Test/ScenarioTests/HpcCacheTest.ps1 b/src/HPCCache/HPCCache.Test/ScenarioTests/HpcCacheTest.ps1
new file mode 100644
index 000000000000..f528008eb1f0
--- /dev/null
+++ b/src/HPCCache/HPCCache.Test/ScenarioTests/HpcCacheTest.ps1
@@ -0,0 +1,126 @@
+function Test-GetAzHPCCacheByNameAndResourceGroup
+{
+ Param($ResourceGroupName, $CacheName)
+ $cacheObj = Get-AzHPCCache -ResourceGroupName $ResourceGroupName -CacheName $CacheName
+ write-host $cacheObj
+ Assert-AreEqual $CacheName $cacheObj.CacheName
+}
+
+function Test-FlushCache
+{
+ Param($ResourceGroupName, $CacheName)
+ $bool = Update-AzHpcCache -ResourceGroupName $ResourceGroupName -Name $CacheName -Flush -PassThru -Force
+ Assert-AreEqual $bool True
+ $cacheObj = Get-AzHPCCache -ResourceGroupName $ResourceGroupName -CacheName $CacheName
+ Assert-AreEqual $CacheName $cacheObj.CacheName
+ Assert-AreEqual "Flushing" $cacheObj.Health.state
+
+ if ([Microsoft.Azure.Test.HttpRecorder.HttpMockServer]::Mode -ne [Microsoft.Azure.Test.HttpRecorder.HttpRecorderMode]::Playback)
+ {
+ # In loop to check if cache is healthy yet
+ for ($i = 0; $i -le 5; $i++)
+ {
+ Start-Sleep -s 60
+ $cacheGet = Get-AzHPCCache -ResourceGroupName $ResourceGroupName -CacheName $CacheName
+ if ([string]::Compare("Healthy", $cacheGet.Health.state, $True) -eq 0)
+ {
+ Assert-AreEqual $CacheName $cacheGet.CacheName
+ Assert-AreEqual "Healthy" $cacheGet.Health.state
+ break
+ }
+ Assert-False {$i -eq 5} "Cache is not Healthy after 5 min."
+ }
+ }
+}
+
+function Test-Stop-Start-Cache
+{
+ Param($ResourceGroupName, $CacheName)
+ $bool = Stop-AzHpcCache -ResourceGroupName $ResourceGroupName -Name $CacheName -PassThru -Force
+ Assert-AreEqual $bool True
+
+ if ([Microsoft.Azure.Test.HttpRecorder.HttpMockServer]::Mode -ne [Microsoft.Azure.Test.HttpRecorder.HttpRecorderMode]::Playback)
+ {
+ # In loop to check if cache is stopped
+ for ($i = 0; $i -le 15; $i++)
+ {
+ Start-Sleep -s 60
+ $cacheGet = Get-AzHPCCache -ResourceGroupName $ResourceGroupName -CacheName $CacheName
+ if ([string]::Compare("Stopped", $cacheGet.Health.state, $True) -eq 0)
+ {
+ Assert-AreEqual $CacheName $cacheGet.CacheName
+ Assert-AreEqual "Stopped" $cacheGet.Health.state
+ break
+ }
+ Assert-False {$i -eq 15} "Cache is not Stopped after 15 min."
+ }
+ }
+ $boolStart = Start-AzHpcCache -ResourceGroupName $ResourceGroupName -Name $CacheName -PassThru -Force
+ Assert-AreEqual $boolStart True
+
+ if ([Microsoft.Azure.Test.HttpRecorder.HttpMockServer]::Mode -ne [Microsoft.Azure.Test.HttpRecorder.HttpRecorderMode]::Playback)
+ {
+ # In loop to check if cache is healthy/started
+ for ($i = 0; $i -le 20; $i++)
+ {
+ Start-Sleep -s 60
+ $cacheGet = Get-AzHPCCache -ResourceGroupName $ResourceGroupName -CacheName $CacheName
+ if ([string]::Compare("Healthy", $cacheGet.Health.state, $True) -eq 0)
+ {
+ Assert-AreEqual $CacheName $cacheGet.CacheName
+ Assert-AreEqual "Healthy" $cacheGet.Health.state
+ break
+ }
+ Assert-False {$i -eq 20} "Cache is not Healthy after 20 min."
+ }
+ }
+}
+
+function Test-NewCache-RemoveCache
+{
+ Param($ResourceGroupName, $SubID, $Location, $Vnet, $Subnet)
+ $cache = "powershell2"
+ $sku = "Standard_2G"
+ $subnetUri = "/subscriptions/" + $SubID +"/resourceGroups/" + $ResourceGroupName + "/providers/Microsoft.Network/virtualNetworks/" + $Vnet + "/subnets/" + $Subnet
+ $cacheCreate = New-AzHpcCache -ResourceGroupName $ResourceGroupName -Name $cache -Location $Location -CacheSize 3072 -Sku $sku -SubnetUri $subnetUri
+ Start-Sleep -s 2
+ $cacheCreated = Get-AzHpcCache -ResourceGroupName $resourceGroupName -CacheName $cache
+
+ Assert-AreEqual $cache $cacheCreated.CacheName
+ Assert-AreEqual $Location $cacheCreated.Location
+ Assert-AreEqual $ResourceGroupName $cacheCreated.ResourceGroupName
+ Assert-AreEqual 3072 $cacheCreated.CacheSize
+
+ $bool = Remove-AzHpcCache -ResourceGroupName $ResourceGroupName -CacheName $cache -PassThru -Force
+ Assert-AreEqual $bool True
+ $getOnRemovedCache = Get-AzHpcCache -ResourceGroupName $ResourceGroupName -CacheName $cache
+ Assert-AreEqual $cache $getOnRemovedCache.CacheName
+ Assert-AreEqual "Stopping" $getOnRemovedCache.Health.state
+}
+
+function Test-SetCache
+{
+ Param($ResourceGroupName, $CacheName)
+ $tags = @{"tag1" = "value1"; "tag2" = "value2"}
+ $updateCache = Set-AzHpcCache -ResourceGroupName $ResourceGroupName -Name $CacheName -Tag $tags
+ Assert-Match $updateCache.Tags '"tag2": "value2" "tag1": "value1"'
+ Start-Sleep -s 2
+ $getCache = Get-AzHpcCache -ResourceGroupName $ResourceGroupName -CacheName $CacheName
+ Assert-AreEqual $CacheName $getCache.CacheName
+ Assert-Match getCache.Tags '"tag2": "value2" "tag1": "value1"'
+}
+
+function Test-GetUsageModel
+{
+ $usagemodel = Get-AzHpcCacheUsageModel
+ Assert-AreEqual 3 $usagemodel.TargetType.Count
+ Assert-AreEqual "READ_HEAVY_INFREQ" $usagemodel.Name.GetValue(0)
+ Assert-AreEqual "WRITE_WORKLOAD_15" $usagemodel.Name.GetValue(1)
+ Assert-AreEqual "WRITE_AROUND" $usagemodel.Name.GetValue(2)
+}
+
+function Test-GetSku
+{
+ $sku = Get-AzHpcCacheSku
+ Assert-AreEqual "caches" $sku.Get(1).ResourceType
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache.Test/SessionRecords/HpcCacheTestFixture/.ctor.json b/src/HPCCache/HPCCache.Test/SessionRecords/HpcCacheTestFixture/.ctor.json
new file mode 100644
index 000000000000..7a522b3a1e1c
--- /dev/null
+++ b/src/HPCCache/HPCCache.Test/SessionRecords/HpcCacheTestFixture/.ctor.json
@@ -0,0 +1,1473 @@
+{
+ "Entries": [
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache/register?api-version=2016-09-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZUNhY2hlL3JlZ2lzdGVyP2FwaS12ZXJzaW9uPTIwMTYtMDktMDE=",
+ "RequestMethod": "POST",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "59568342-ea25-44ff-a788-6bca9b77bbeb"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.5"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1199"
+ ],
+ "x-ms-request-id": [
+ "640c4346-30d4-4582-a4ea-428ae640307e"
+ ],
+ "x-ms-correlation-request-id": [
+ "640c4346-30d4-4582-a4ea-428ae640307e"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T135943Z:640c4346-30d4-4582-a4ea-428ae640307e"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 13:59:43 GMT"
+ ],
+ "Content-Length": [
+ "1613"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache\",\r\n \"namespace\": \"Microsoft.StorageCache\",\r\n \"authorizations\": [\r\n {\r\n \"applicationId\": \"4392ab71-2ce2-4b0d-8770-b352745c73f5\",\r\n \"roleDefinitionId\": \"e27430df-bd6b-4f3a-bd6d-d52ad1a7d075\"\r\n }\r\n ],\r\n \"resourceTypes\": [\r\n {\r\n \"resourceType\": \"operations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"South Central US\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ],\r\n \"capabilities\": \"SystemAssignedResourceIdentity\"\r\n },\r\n {\r\n \"resourceType\": \"caches/storageTargets\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"usageModels\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations\",\r\n \"locations\": [],\r\n \"apiVersions\": [\r\n \"2020-03-01\",\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations/ascoperations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n }\r\n ],\r\n \"registrationState\": \"Registered\"\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache?api-version=2016-09-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZUNhY2hlP2FwaS12ZXJzaW9uPTIwMTYtMDktMDE=",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "65f42dac-14ea-48aa-982a-9668648d81a4"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.5"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11999"
+ ],
+ "x-ms-request-id": [
+ "cd8299e2-fbf3-49fe-aa08-7363675dae54"
+ ],
+ "x-ms-correlation-request-id": [
+ "cd8299e2-fbf3-49fe-aa08-7363675dae54"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T135943Z:cd8299e2-fbf3-49fe-aa08-7363675dae54"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 13:59:43 GMT"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ],
+ "Content-Length": [
+ "1613"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache\",\r\n \"namespace\": \"Microsoft.StorageCache\",\r\n \"authorizations\": [\r\n {\r\n \"applicationId\": \"4392ab71-2ce2-4b0d-8770-b352745c73f5\",\r\n \"roleDefinitionId\": \"e27430df-bd6b-4f3a-bd6d-d52ad1a7d075\"\r\n }\r\n ],\r\n \"resourceTypes\": [\r\n {\r\n \"resourceType\": \"operations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"South Central US\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ],\r\n \"capabilities\": \"SystemAssignedResourceIdentity\"\r\n },\r\n {\r\n \"resourceType\": \"caches/storageTargets\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"usageModels\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations\",\r\n \"locations\": [],\r\n \"apiVersions\": [\r\n \"2020-03-01\",\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations/ascoperations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n }\r\n ],\r\n \"registrationState\": \"Registered\"\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111?api-version=2016-09-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxNi0wOS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "e4457a1f-3e4b-4174-a550-16eaa9e4b72a"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.5"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-failure-cause": [
+ "gateway"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11998"
+ ],
+ "x-ms-request-id": [
+ "3371da15-9572-4c85-b738-05a8a52a76d9"
+ ],
+ "x-ms-correlation-request-id": [
+ "3371da15-9572-4c85-b738-05a8a52a76d9"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T135943Z:3371da15-9572-4c85-b738-05a8a52a76d9"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 13:59:43 GMT"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ],
+ "Content-Length": [
+ "108"
+ ]
+ },
+ "ResponseBody": "{\r\n \"error\": {\r\n \"code\": \"ResourceGroupNotFound\",\r\n \"message\": \"Resource group 'hpc0313x636d2111' could not be found.\"\r\n }\r\n}",
+ "StatusCode": 404
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111?api-version=2016-09-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxNi0wOS0wMQ==",
+ "RequestMethod": "PUT",
+ "RequestBody": "{\r\n \"location\": \"eastus\",\r\n \"tags\": {\r\n \"hpc0313x636d2111\": \"2020-03-13 13:59:43Z\"\r\n }\r\n}",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "6e1c07fc-0444-4017-9f83-5bbf1a752d42"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.5"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Content-Length": [
+ "95"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1199"
+ ],
+ "x-ms-request-id": [
+ "a2861f65-0be1-437f-8afe-a3c79cb27d8d"
+ ],
+ "x-ms-correlation-request-id": [
+ "a2861f65-0be1-437f-8afe-a3c79cb27d8d"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T135944Z:a2861f65-0be1-437f-8afe-a3c79cb27d8d"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 13:59:44 GMT"
+ ],
+ "Content-Length": [
+ "236"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111\",\r\n \"name\": \"hpc0313x636d2111\",\r\n \"location\": \"eastus\",\r\n \"tags\": {\r\n \"hpc0313x636d2111\": \"2020-03-13 13:59:43Z\"\r\n },\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\r\n }\r\n}",
+ "StatusCode": 201
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlR3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5OZXR3b3JrL3ZpcnR1YWxOZXR3b3Jrcy9WTmV0LWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "5f03dd6c-0245-4031-88b6-efd0874d4642"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Network.NetworkManagementClient/19.3.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-failure-cause": [
+ "gateway"
+ ],
+ "x-ms-request-id": [
+ "5ef01ee0-7ca9-433e-a9ba-33ed282ac33c"
+ ],
+ "x-ms-correlation-request-id": [
+ "5ef01ee0-7ca9-433e-a9ba-33ed282ac33c"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T135944Z:5ef01ee0-7ca9-433e-a9ba-33ed282ac33c"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 13:59:44 GMT"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ],
+ "Content-Length": [
+ "175"
+ ]
+ },
+ "ResponseBody": "{\r\n \"error\": {\r\n \"code\": \"ResourceNotFound\",\r\n \"message\": \"The Resource 'Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111' under resource group 'hpc0313x636d2111' was not found.\"\r\n }\r\n}",
+ "StatusCode": 404
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlR3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5OZXR3b3JrL3ZpcnR1YWxOZXR3b3Jrcy9WTmV0LWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Network.NetworkManagementClient/19.3.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "ETag": [
+ "W/\"e30b8255-d320-4951-88e0-ec98c9d52983\""
+ ],
+ "x-ms-request-id": [
+ "7d0fa0bf-051d-4d9a-a593-1cc69de85497"
+ ],
+ "x-ms-correlation-request-id": [
+ "b1d11c93-adcb-44a3-99da-aec7e5255cfa"
+ ],
+ "x-ms-arm-service-request-id": [
+ "a0cc0a55-f751-4a7b-bf25-532ec0c70622"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11994"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T135948Z:b1d11c93-adcb-44a3-99da-aec7e5255cfa"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 13:59:48 GMT"
+ ],
+ "Content-Length": [
+ "671"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"VNet-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111\",\r\n \"etag\": \"W/\\\"e30b8255-d320-4951-88e0-ec98c9d52983\\\"\",\r\n \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"eastus\",\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"resourceGuid\": \"2b7283af-c2f4-427d-a4e2-02e969ddfb4e\",\r\n \"addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.1.0.0/16\"\r\n ]\r\n },\r\n \"subnets\": [],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\": false,\r\n \"enableVmProtection\": false\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlR3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5OZXR3b3JrL3ZpcnR1YWxOZXR3b3Jrcy9WTmV0LWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "PUT",
+ "RequestBody": "{\r\n \"properties\": {\r\n \"addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.1.0.0/16\"\r\n ]\r\n }\r\n },\r\n \"location\": \"eastus\"\r\n}",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "8988b4b4-7948-4962-b485-c3e364091f35"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Network.NetworkManagementClient/19.3.0.0"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Content-Length": [
+ "143"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Retry-After": [
+ "3"
+ ],
+ "x-ms-request-id": [
+ "60aa5d87-bfcb-44c6-9e93-eb0375f594aa"
+ ],
+ "Azure-AsyncOperation": [
+ "https://management.azure.com/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Network/locations/eastus/operations/60aa5d87-bfcb-44c6-9e93-eb0375f594aa?api-version=2018-07-01"
+ ],
+ "x-ms-correlation-request-id": [
+ "14be6e2b-331f-47a0-ad48-88d95b7ff045"
+ ],
+ "x-ms-arm-service-request-id": [
+ "43ab10a1-9672-4774-af7f-56b0167a4eef"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1199"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T135945Z:14be6e2b-331f-47a0-ad48-88d95b7ff045"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 13:59:44 GMT"
+ ],
+ "Content-Length": [
+ "670"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"VNet-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111\",\r\n \"etag\": \"W/\\\"1c1ff10d-e64c-45b9-9a7e-04894e37dbe4\\\"\",\r\n \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"eastus\",\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"resourceGuid\": \"2b7283af-c2f4-427d-a4e2-02e969ddfb4e\",\r\n \"addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.1.0.0/16\"\r\n ]\r\n },\r\n \"subnets\": [],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\": false,\r\n \"enableVmProtection\": false\r\n }\r\n}",
+ "StatusCode": 201
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Network/locations/eastus/operations/60aa5d87-bfcb-44c6-9e93-eb0375f594aa?api-version=2018-07-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9sb2NhdGlvbnMvZWFzdHVzL29wZXJhdGlvbnMvNjBhYTVkODctYmZjYi00NGM2LTllOTMtZWIwMzc1ZjU5NGFhP2FwaS12ZXJzaW9uPTIwMTgtMDctMDE=",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Network.NetworkManagementClient/19.3.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-request-id": [
+ "2e583bdc-748e-4f00-90e5-be2dd59eb902"
+ ],
+ "x-ms-correlation-request-id": [
+ "da3b3521-4c37-434b-927e-71d3b3cfcdcf"
+ ],
+ "x-ms-arm-service-request-id": [
+ "19544ba1-f307-4774-9e9e-80517763a693"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11995"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T135948Z:da3b3521-4c37-434b-927e-71d3b3cfcdcf"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 13:59:48 GMT"
+ ],
+ "Content-Length": [
+ "29"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"status\": \"Succeeded\"\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlR3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5OZXR3b3JrL3ZpcnR1YWxOZXR3b3Jrcy9WTmV0LWhwYzAzMTN4NjM2ZDIxMTEvc3VibmV0cy9TdWJuZXQtaHBjMDMxM3g2MzZkMjExMT9hcGktdmVyc2lvbj0yMDE5LTExLTAx",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "e617b14b-1348-4988-8e97-b9b1fdb6840f"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Network.NetworkManagementClient/19.3.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-request-id": [
+ "a8c1eed2-25a7-4c49-9143-f65ab9583f23"
+ ],
+ "x-ms-correlation-request-id": [
+ "a81bdbb5-6142-4c0d-8267-d6248b16cdb4"
+ ],
+ "x-ms-arm-service-request-id": [
+ "741b1900-14e2-4071-ae01-f6417f6edca4"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11993"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T135948Z:a81bdbb5-6142-4c0d-8267-d6248b16cdb4"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 13:59:48 GMT"
+ ],
+ "Content-Length": [
+ "288"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"error\": {\r\n \"code\": \"NotFound\",\r\n \"message\": \"Resource /subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111 not found.\",\r\n \"details\": []\r\n }\r\n}",
+ "StatusCode": 404
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlR3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5OZXR3b3JrL3ZpcnR1YWxOZXR3b3Jrcy9WTmV0LWhwYzAzMTN4NjM2ZDIxMTEvc3VibmV0cy9TdWJuZXQtaHBjMDMxM3g2MzZkMjExMT9hcGktdmVyc2lvbj0yMDE5LTExLTAx",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Network.NetworkManagementClient/19.3.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "ETag": [
+ "W/\"8ab56e45-3514-4c1d-8a41-b115ef159c83\""
+ ],
+ "x-ms-request-id": [
+ "c69a2c3f-242d-45ed-99ba-80052f5465f1"
+ ],
+ "x-ms-correlation-request-id": [
+ "2adce7b3-b38e-4f49-b94b-786bbc040081"
+ ],
+ "x-ms-arm-service-request-id": [
+ "ca56bdf5-ec72-4b18-bed9-ad624a41c922"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11991"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T135952Z:2adce7b3-b38e-4f49-b94b-786bbc040081"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 13:59:51 GMT"
+ ],
+ "Content-Length": [
+ "472"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Subnet-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"etag\": \"W/\\\"8ab56e45-3514-4c1d-8a41-b115ef159c83\\\"\",\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"addressPrefix\": \"10.1.0.0/24\",\r\n \"delegations\": []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlR3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5OZXR3b3JrL3ZpcnR1YWxOZXR3b3Jrcy9WTmV0LWhwYzAzMTN4NjM2ZDIxMTEvc3VibmV0cy9TdWJuZXQtaHBjMDMxM3g2MzZkMjExMT9hcGktdmVyc2lvbj0yMDE5LTExLTAx",
+ "RequestMethod": "PUT",
+ "RequestBody": "{\r\n \"properties\": {\r\n \"addressPrefix\": \"10.1.0.0/24\"\r\n },\r\n \"name\": \"Subnet-hpc0313x636d2111\"\r\n}",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "e0089ba4-9b06-441d-a57b-9567a855d49b"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Network.NetworkManagementClient/19.3.0.0"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Content-Length": [
+ "102"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Retry-After": [
+ "3"
+ ],
+ "x-ms-request-id": [
+ "b36756ce-163f-4c25-acaa-e4bfa4c4d9aa"
+ ],
+ "Azure-AsyncOperation": [
+ "https://management.azure.com/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Network/locations/eastus/operations/b36756ce-163f-4c25-acaa-e4bfa4c4d9aa?api-version=2018-07-01"
+ ],
+ "x-ms-correlation-request-id": [
+ "44b2f383-79a2-4546-af5d-0669b562f734"
+ ],
+ "x-ms-arm-service-request-id": [
+ "26de0df1-f3d6-4f2b-821f-a635fc838f5b"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1198"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T135949Z:44b2f383-79a2-4546-af5d-0669b562f734"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 13:59:48 GMT"
+ ],
+ "Content-Length": [
+ "471"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Subnet-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"etag\": \"W/\\\"7c289f8c-7db2-4ec5-8b91-94917873c064\\\"\",\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"addressPrefix\": \"10.1.0.0/24\",\r\n \"delegations\": []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}",
+ "StatusCode": 201
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Network/locations/eastus/operations/b36756ce-163f-4c25-acaa-e4bfa4c4d9aa?api-version=2018-07-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9sb2NhdGlvbnMvZWFzdHVzL29wZXJhdGlvbnMvYjM2NzU2Y2UtMTYzZi00YzI1LWFjYWEtZTRiZmE0YzRkOWFhP2FwaS12ZXJzaW9uPTIwMTgtMDctMDE=",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Network.NetworkManagementClient/19.3.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-request-id": [
+ "81b9a275-cc94-49a5-b4b2-e1f06864f330"
+ ],
+ "x-ms-correlation-request-id": [
+ "0d21b912-9751-42e1-9903-247654289497"
+ ],
+ "x-ms-arm-service-request-id": [
+ "43ca763f-be97-496a-8311-2010e141cffc"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11992"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T135952Z:0d21b912-9751-42e1-9903-247654289497"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 13:59:51 GMT"
+ ],
+ "Content-Length": [
+ "29"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"status\": \"Succeeded\"\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-failure-cause": [
+ "gateway"
+ ],
+ "x-ms-request-id": [
+ "bb930851-311f-451e-ba28-b54e5ee42a99"
+ ],
+ "x-ms-correlation-request-id": [
+ "bb930851-311f-451e-ba28-b54e5ee42a99"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T135952Z:bb930851-311f-451e-ba28-b54e5ee42a99"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 13:59:51 GMT"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ],
+ "Content-Length": [
+ "172"
+ ]
+ },
+ "ResponseBody": "{\r\n \"error\": {\r\n \"code\": \"ResourceNotFound\",\r\n \"message\": \"The Resource 'Microsoft.StorageCache/caches/Cache-hpc0313x636d2111' under resource group 'hpc0313x636d2111' was not found.\"\r\n }\r\n}",
+ "StatusCode": 404
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "effc4b33-a8de-4b75-a235-2bda70f07486"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11998"
+ ],
+ "x-ms-correlation-request-id": [
+ "1043e3d9-2861-42ad-8a18-67f0e918f7ea"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T135953Z:1043e3d9-2861-42ad-8a18-67f0e918f7ea"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 13:59:52 GMT"
+ ],
+ "Content-Length": [
+ "953"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Cache-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Transitioning\",\r\n \"statusDescription\": \"Deploying Cache resources\"\r\n },\r\n \"provisioningState\": \"Creating\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T13:59:52.9034317Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "a83e9bc5-7e9f-4bae-b53e-da4d65416176"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11997"
+ ],
+ "x-ms-correlation-request-id": [
+ "e9badc88-4309-41f2-8371-5629d7d231f9"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T140153Z:e9badc88-4309-41f2-8371-5629d7d231f9"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:01:53 GMT"
+ ],
+ "Content-Length": [
+ "953"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Cache-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Transitioning\",\r\n \"statusDescription\": \"Deploying Cache resources\"\r\n },\r\n \"provisioningState\": \"Creating\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T13:59:52.9034317Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "3d9abb73-0b1d-46ac-8a7f-1035db64e8aa"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11998"
+ ],
+ "x-ms-correlation-request-id": [
+ "18e8539d-e5db-4f08-8315-b2f8e709f2fd"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T140353Z:18e8539d-e5db-4f08-8315-b2f8e709f2fd"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:03:53 GMT"
+ ],
+ "Content-Length": [
+ "953"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Cache-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Transitioning\",\r\n \"statusDescription\": \"Deploying Cache resources\"\r\n },\r\n \"provisioningState\": \"Creating\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T13:59:52.9034317Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "93af0346-03cc-4043-a3d8-2290e08e6914"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11999"
+ ],
+ "x-ms-correlation-request-id": [
+ "a8b01e91-7cab-42bf-a183-9b2ef2389d20"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T140553Z:a8b01e91-7cab-42bf-a183-9b2ef2389d20"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:05:53 GMT"
+ ],
+ "Content-Length": [
+ "953"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Cache-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Transitioning\",\r\n \"statusDescription\": \"Deploying Cache resources\"\r\n },\r\n \"provisioningState\": \"Creating\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T13:59:52.9034317Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "c5cdb99e-e11f-4f87-96c7-4740a70cc4a4"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11998"
+ ],
+ "x-ms-correlation-request-id": [
+ "82da8bfb-1a01-499f-8408-39c41e7128c4"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T140754Z:82da8bfb-1a01-499f-8408-39c41e7128c4"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:07:53 GMT"
+ ],
+ "Content-Length": [
+ "966"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Cache-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Transitioning\",\r\n \"statusDescription\": \"Waiting for cache creation to complete\"\r\n },\r\n \"provisioningState\": \"Creating\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T13:59:52.9034317Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "5530f471-d915-430a-9000-3fc736920dc5"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11993"
+ ],
+ "x-ms-correlation-request-id": [
+ "17698bfe-57f2-4482-8576-6578241a49eb"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T140954Z:17698bfe-57f2-4482-8576-6578241a49eb"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:09:54 GMT"
+ ],
+ "Content-Length": [
+ "966"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Cache-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Transitioning\",\r\n \"statusDescription\": \"Waiting for cache creation to complete\"\r\n },\r\n \"provisioningState\": \"Creating\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T13:59:52.9034317Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "59c8f911-7e33-4368-8969-5dbda960dc20"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11998"
+ ],
+ "x-ms-correlation-request-id": [
+ "9a546be0-64ca-4cc5-8ed0-73697cb6c515"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T141154Z:9a546be0-64ca-4cc5-8ed0-73697cb6c515"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:11:54 GMT"
+ ],
+ "Content-Length": [
+ "974"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Cache-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Transitioning\",\r\n \"statusDescription\": \"Cache deployment completed. Cache Starting up.\"\r\n },\r\n \"provisioningState\": \"Creating\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T13:59:52.9034317Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "ba5217a9-ed41-4d4a-99b6-1be63e55bf1e"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11999"
+ ],
+ "x-ms-correlation-request-id": [
+ "a6b3adbb-658c-4015-8abd-bc5e7df91878"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T141354Z:a6b3adbb-658c-4015-8abd-bc5e7df91878"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:13:54 GMT"
+ ],
+ "Content-Length": [
+ "1081"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Cache-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Degraded\",\r\n \"statusDescription\": \"The cache is having trouble communicating with the Storage Target ''\"\r\n },\r\n \"mountAddresses\": [\r\n \"10.1.0.7\",\r\n \"10.1.0.8\",\r\n \"10.1.0.9\"\r\n ],\r\n \"provisioningState\": \"Succeeded\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T13:59:52.9034317Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "81c334cc-3f62-4c0d-a515-960b5667cd6e"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11997"
+ ],
+ "x-ms-correlation-request-id": [
+ "0fc7d7fb-92f9-4d8e-993b-3634dbb82a86"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T141554Z:0fc7d7fb-92f9-4d8e-993b-3634dbb82a86"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:15:54 GMT"
+ ],
+ "Content-Length": [
+ "1041"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Cache-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Healthy\",\r\n \"statusDescription\": \"The cache is in Running state\"\r\n },\r\n \"mountAddresses\": [\r\n \"10.1.0.7\",\r\n \"10.1.0.8\",\r\n \"10.1.0.9\"\r\n ],\r\n \"provisioningState\": \"Succeeded\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T13:59:52.9034317Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "PUT",
+ "RequestBody": "{\r\n \"location\": \"eastus\",\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\"\r\n },\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n }\r\n}",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Content-Length": [
+ "323"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Azure-AsyncOperation": [
+ "https://management.azure.com/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache/locations/eastus/ascOperations/82386421-5a8d-4ef8-94b6-054dd4225ea9?api-version=2019-11-01"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "82386421-5a8d-4ef8-94b6-054dd4225ea9"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1199"
+ ],
+ "x-ms-correlation-request-id": [
+ "2ef92e64-1fae-465e-96d1-d1417aee631e"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T135953Z:2ef92e64-1fae-465e-96d1-d1417aee631e"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 13:59:52 GMT"
+ ],
+ "Content-Length": [
+ "896"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Cache-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Transitioning\"\r\n },\r\n \"provisioningState\": \"Creating\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T13:59:52.9034317Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 201
+ }
+ ],
+ "Names": {
+ ".ctor": [
+ "hpc0313x636d2111"
+ ]
+ },
+ "Variables": {
+ "SubscriptionId": "46841c0e-69c8-4b17-af46-6626ecb15fc2",
+ "DefaultResourcePrefix": "hpc",
+ "DefaultRegion": "eastus",
+ "DefaultCacheSku": "Standard_2G",
+ "DefaultCacheSize": "3072"
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache.Test/SessionRecords/Microsoft.Azure.Commands.HPCCache.Test.ScenarioTests.HpcCacheStorageTargetTest/TestGetAzHPCCacheStorageTargetByNameAndResourceGroup.json b/src/HPCCache/HPCCache.Test/SessionRecords/Microsoft.Azure.Commands.HPCCache.Test.ScenarioTests.HpcCacheStorageTargetTest/TestGetAzHPCCacheStorageTargetByNameAndResourceGroup.json
new file mode 100644
index 000000000000..7986478a8ee0
--- /dev/null
+++ b/src/HPCCache/HPCCache.Test/SessionRecords/Microsoft.Azure.Commands.HPCCache.Test.ScenarioTests.HpcCacheStorageTargetTest/TestGetAzHPCCacheStorageTargetByNameAndResourceGroup.json
@@ -0,0 +1,189 @@
+{
+ "Entries": [
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache/register?api-version=2016-09-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZUNhY2hlL3JlZ2lzdGVyP2FwaS12ZXJzaW9uPTIwMTYtMDktMDE=",
+ "RequestMethod": "POST",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "09f43ed3-c6a8-4eb6-9204-b29591fa18a9"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.5"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1199"
+ ],
+ "x-ms-request-id": [
+ "83aa0e88-6f56-43b0-9b16-eff0b4983892"
+ ],
+ "x-ms-correlation-request-id": [
+ "83aa0e88-6f56-43b0-9b16-eff0b4983892"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142940Z:83aa0e88-6f56-43b0-9b16-eff0b4983892"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:29:39 GMT"
+ ],
+ "Content-Length": [
+ "1613"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache\",\r\n \"namespace\": \"Microsoft.StorageCache\",\r\n \"authorizations\": [\r\n {\r\n \"applicationId\": \"4392ab71-2ce2-4b0d-8770-b352745c73f5\",\r\n \"roleDefinitionId\": \"e27430df-bd6b-4f3a-bd6d-d52ad1a7d075\"\r\n }\r\n ],\r\n \"resourceTypes\": [\r\n {\r\n \"resourceType\": \"operations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"South Central US\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ],\r\n \"capabilities\": \"SystemAssignedResourceIdentity\"\r\n },\r\n {\r\n \"resourceType\": \"caches/storageTargets\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"usageModels\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations\",\r\n \"locations\": [],\r\n \"apiVersions\": [\r\n \"2020-03-01\",\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations/ascoperations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n }\r\n ],\r\n \"registrationState\": \"Registered\"\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache?api-version=2016-09-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZUNhY2hlP2FwaS12ZXJzaW9uPTIwMTYtMDktMDE=",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "d214686d-8c22-408d-a078-776d690abcb8"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.5"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11999"
+ ],
+ "x-ms-request-id": [
+ "3156cee9-6fc9-4d32-9379-d82a97cc78d2"
+ ],
+ "x-ms-correlation-request-id": [
+ "3156cee9-6fc9-4d32-9379-d82a97cc78d2"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142940Z:3156cee9-6fc9-4d32-9379-d82a97cc78d2"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:29:39 GMT"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ],
+ "Content-Length": [
+ "1613"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache\",\r\n \"namespace\": \"Microsoft.StorageCache\",\r\n \"authorizations\": [\r\n {\r\n \"applicationId\": \"4392ab71-2ce2-4b0d-8770-b352745c73f5\",\r\n \"roleDefinitionId\": \"e27430df-bd6b-4f3a-bd6d-d52ad1a7d075\"\r\n }\r\n ],\r\n \"resourceTypes\": [\r\n {\r\n \"resourceType\": \"operations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"South Central US\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ],\r\n \"capabilities\": \"SystemAssignedResourceIdentity\"\r\n },\r\n {\r\n \"resourceType\": \"caches/storageTargets\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"usageModels\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations\",\r\n \"locations\": [],\r\n \"apiVersions\": [\r\n \"2020-03-01\",\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations/ascoperations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n }\r\n ],\r\n \"registrationState\": \"Registered\"\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/msazure?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTEvc3RvcmFnZVRhcmdldHMvbXNhenVyZT9hcGktdmVyc2lvbj0yMDE5LTExLTAx",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "915ef5b2-d43d-427f-9b0d-33694179a90b"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11987"
+ ],
+ "x-ms-correlation-request-id": [
+ "3e8abce8-ad6c-4b71-a2f8-fbabfd871857"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142940Z:3e8abce8-ad6c-4b71-a2f8-fbabfd871857"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:29:40 GMT"
+ ],
+ "Content-Length": [
+ "743"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"msazure\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/msazure\",\r\n \"type\": \"Microsoft.StorageCache/caches/storageTargets\",\r\n \"location\": \"eastus\",\r\n \"properties\": {\r\n \"targetType\": \"clfs\",\r\n \"provisioningState\": \"Deleting\",\r\n \"junctions\": [\r\n {\r\n \"namespacePath\": \"/abcdefgh\",\r\n \"nfsExport\": \"/\",\r\n \"targetPath\": \"/\"\r\n }\r\n ],\r\n \"clfs\": {\r\n \"target\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ }
+ ],
+ "Names": {},
+ "Variables": {
+ "SubscriptionId": "46841c0e-69c8-4b17-af46-6626ecb15fc2"
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache.Test/SessionRecords/Microsoft.Azure.Commands.HPCCache.Test.ScenarioTests.HpcCacheStorageTargetTest/TestNewGetSetRemoveST.json b/src/HPCCache/HPCCache.Test/SessionRecords/Microsoft.Azure.Commands.HPCCache.Test.ScenarioTests.HpcCacheStorageTargetTest/TestNewGetSetRemoveST.json
new file mode 100644
index 000000000000..e38c8a44496f
--- /dev/null
+++ b/src/HPCCache/HPCCache.Test/SessionRecords/Microsoft.Azure.Commands.HPCCache.Test.ScenarioTests.HpcCacheStorageTargetTest/TestNewGetSetRemoveST.json
@@ -0,0 +1,689 @@
+{
+ "Entries": [
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache/register?api-version=2016-09-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZUNhY2hlL3JlZ2lzdGVyP2FwaS12ZXJzaW9uPTIwMTYtMDktMDE=",
+ "RequestMethod": "POST",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "a7dc810b-5884-499d-b1bf-ccf4bfbb240a"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.5"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1199"
+ ],
+ "x-ms-request-id": [
+ "6d502b85-719d-4be6-bb3a-66b6baf2437b"
+ ],
+ "x-ms-correlation-request-id": [
+ "6d502b85-719d-4be6-bb3a-66b6baf2437b"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142942Z:6d502b85-719d-4be6-bb3a-66b6baf2437b"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:29:42 GMT"
+ ],
+ "Content-Length": [
+ "1613"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache\",\r\n \"namespace\": \"Microsoft.StorageCache\",\r\n \"authorizations\": [\r\n {\r\n \"applicationId\": \"4392ab71-2ce2-4b0d-8770-b352745c73f5\",\r\n \"roleDefinitionId\": \"e27430df-bd6b-4f3a-bd6d-d52ad1a7d075\"\r\n }\r\n ],\r\n \"resourceTypes\": [\r\n {\r\n \"resourceType\": \"operations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"South Central US\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ],\r\n \"capabilities\": \"SystemAssignedResourceIdentity\"\r\n },\r\n {\r\n \"resourceType\": \"caches/storageTargets\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"usageModels\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations\",\r\n \"locations\": [],\r\n \"apiVersions\": [\r\n \"2020-03-01\",\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations/ascoperations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n }\r\n ],\r\n \"registrationState\": \"Registered\"\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache?api-version=2016-09-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZUNhY2hlP2FwaS12ZXJzaW9uPTIwMTYtMDktMDE=",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "82335894-6d39-4347-b790-c82cbb6303c9"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.5"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11997"
+ ],
+ "x-ms-request-id": [
+ "d03ca3ab-affe-47f2-9635-c23e05370232"
+ ],
+ "x-ms-correlation-request-id": [
+ "d03ca3ab-affe-47f2-9635-c23e05370232"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142942Z:d03ca3ab-affe-47f2-9635-c23e05370232"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:29:42 GMT"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ],
+ "Content-Length": [
+ "1613"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache\",\r\n \"namespace\": \"Microsoft.StorageCache\",\r\n \"authorizations\": [\r\n {\r\n \"applicationId\": \"4392ab71-2ce2-4b0d-8770-b352745c73f5\",\r\n \"roleDefinitionId\": \"e27430df-bd6b-4f3a-bd6d-d52ad1a7d075\"\r\n }\r\n ],\r\n \"resourceTypes\": [\r\n {\r\n \"resourceType\": \"operations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"South Central US\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ],\r\n \"capabilities\": \"SystemAssignedResourceIdentity\"\r\n },\r\n {\r\n \"resourceType\": \"caches/storageTargets\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"usageModels\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations\",\r\n \"locations\": [],\r\n \"apiVersions\": [\r\n \"2020-03-01\",\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations/ascoperations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n }\r\n ],\r\n \"registrationState\": \"Registered\"\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/powershellstoragetarget?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTEvc3RvcmFnZVRhcmdldHMvcG93ZXJzaGVsbHN0b3JhZ2V0YXJnZXQ/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "84f738b5-2562-4336-8931-55305db12a8a"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11998"
+ ],
+ "x-ms-correlation-request-id": [
+ "068e1540-0832-4a38-b77e-85a3922892c8"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142942Z:068e1540-0832-4a38-b77e-85a3922892c8"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:29:42 GMT"
+ ],
+ "Content-Length": [
+ "115"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"error\": {\r\n \"code\": \"NotFound\",\r\n \"message\": \"The entity was not found in this Azure location.\"\r\n }\r\n}",
+ "StatusCode": 404
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/powershellstoragetarget?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTEvc3RvcmFnZVRhcmdldHMvcG93ZXJzaGVsbHN0b3JhZ2V0YXJnZXQ/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "40327c05-38d2-4da0-b533-407be802edd0"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11997"
+ ],
+ "x-ms-correlation-request-id": [
+ "2fa4d07c-5e7e-4a41-be1b-d86245d59b9b"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142948Z:2fa4d07c-5e7e-4a41-be1b-d86245d59b9b"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:29:48 GMT"
+ ],
+ "Content-Length": [
+ "775"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"powershellstoragetarget\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/powershellstoragetarget\",\r\n \"type\": \"Microsoft.StorageCache/caches/storageTargets\",\r\n \"location\": \"eastus\",\r\n \"properties\": {\r\n \"targetType\": \"clfs\",\r\n \"provisioningState\": \"Creating\",\r\n \"junctions\": [\r\n {\r\n \"namespacePath\": \"/msazure\",\r\n \"nfsExport\": \"/\",\r\n \"targetPath\": \"/\"\r\n }\r\n ],\r\n \"clfs\": {\r\n \"target\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr4\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/powershellstoragetarget?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTEvc3RvcmFnZVRhcmdldHMvcG93ZXJzaGVsbHN0b3JhZ2V0YXJnZXQ/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "cd51988d-ee62-4264-a086-a42e9ec8ad68"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11996"
+ ],
+ "x-ms-correlation-request-id": [
+ "7ae30597-9c9b-4b44-b76b-f8e270037598"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143018Z:7ae30597-9c9b-4b44-b76b-f8e270037598"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:30:18 GMT"
+ ],
+ "Content-Length": [
+ "775"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"powershellstoragetarget\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/powershellstoragetarget\",\r\n \"type\": \"Microsoft.StorageCache/caches/storageTargets\",\r\n \"location\": \"eastus\",\r\n \"properties\": {\r\n \"targetType\": \"clfs\",\r\n \"provisioningState\": \"Creating\",\r\n \"junctions\": [\r\n {\r\n \"namespacePath\": \"/msazure\",\r\n \"nfsExport\": \"/\",\r\n \"targetPath\": \"/\"\r\n }\r\n ],\r\n \"clfs\": {\r\n \"target\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr4\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/powershellstoragetarget?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTEvc3RvcmFnZVRhcmdldHMvcG93ZXJzaGVsbHN0b3JhZ2V0YXJnZXQ/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "0fe26528-e9d7-4a78-97c5-30673c0dc18a"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11995"
+ ],
+ "x-ms-correlation-request-id": [
+ "80c8831d-5915-427b-b71b-769e5a907207"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143048Z:80c8831d-5915-427b-b71b-769e5a907207"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:30:47 GMT"
+ ],
+ "Content-Length": [
+ "775"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"powershellstoragetarget\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/powershellstoragetarget\",\r\n \"type\": \"Microsoft.StorageCache/caches/storageTargets\",\r\n \"location\": \"eastus\",\r\n \"properties\": {\r\n \"targetType\": \"clfs\",\r\n \"provisioningState\": \"Creating\",\r\n \"junctions\": [\r\n {\r\n \"namespacePath\": \"/msazure\",\r\n \"nfsExport\": \"/\",\r\n \"targetPath\": \"/\"\r\n }\r\n ],\r\n \"clfs\": {\r\n \"target\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr4\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/powershellstoragetarget?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTEvc3RvcmFnZVRhcmdldHMvcG93ZXJzaGVsbHN0b3JhZ2V0YXJnZXQ/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "3f461f9a-75af-41c0-b05e-a06e165448e3"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11994"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-correlation-request-id": [
+ "cb88f789-a87f-4899-bd7d-c5f918738911"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143118Z:cb88f789-a87f-4899-bd7d-c5f918738911"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:31:18 GMT"
+ ],
+ "Content-Length": [
+ "775"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"powershellstoragetarget\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/powershellstoragetarget\",\r\n \"type\": \"Microsoft.StorageCache/caches/storageTargets\",\r\n \"location\": \"eastus\",\r\n \"properties\": {\r\n \"targetType\": \"clfs\",\r\n \"provisioningState\": \"Creating\",\r\n \"junctions\": [\r\n {\r\n \"namespacePath\": \"/msazure\",\r\n \"nfsExport\": \"/\",\r\n \"targetPath\": \"/\"\r\n }\r\n ],\r\n \"clfs\": {\r\n \"target\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr4\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/powershellstoragetarget?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTEvc3RvcmFnZVRhcmdldHMvcG93ZXJzaGVsbHN0b3JhZ2V0YXJnZXQ/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "91c0fe63-41f8-42dc-87c6-35a885f1f6a0"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11993"
+ ],
+ "x-ms-correlation-request-id": [
+ "c025fd95-93c9-433f-b083-973771728d6d"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143148Z:c025fd95-93c9-433f-b083-973771728d6d"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:31:47 GMT"
+ ],
+ "Content-Length": [
+ "775"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"powershellstoragetarget\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/powershellstoragetarget\",\r\n \"type\": \"Microsoft.StorageCache/caches/storageTargets\",\r\n \"location\": \"eastus\",\r\n \"properties\": {\r\n \"targetType\": \"clfs\",\r\n \"provisioningState\": \"Creating\",\r\n \"junctions\": [\r\n {\r\n \"namespacePath\": \"/msazure\",\r\n \"nfsExport\": \"/\",\r\n \"targetPath\": \"/\"\r\n }\r\n ],\r\n \"clfs\": {\r\n \"target\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr4\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/powershellstoragetarget?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTEvc3RvcmFnZVRhcmdldHMvcG93ZXJzaGVsbHN0b3JhZ2V0YXJnZXQ/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "10904a2f-4aea-424f-b2c7-7b61463ee877"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11992"
+ ],
+ "x-ms-correlation-request-id": [
+ "e8b18fdf-76b3-4750-bf6f-5d9b05297f0d"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143218Z:e8b18fdf-76b3-4750-bf6f-5d9b05297f0d"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:32:17 GMT"
+ ],
+ "Content-Length": [
+ "776"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"powershellstoragetarget\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/powershellstoragetarget\",\r\n \"type\": \"Microsoft.StorageCache/caches/storageTargets\",\r\n \"location\": \"eastus\",\r\n \"properties\": {\r\n \"targetType\": \"clfs\",\r\n \"provisioningState\": \"Succeeded\",\r\n \"junctions\": [\r\n {\r\n \"namespacePath\": \"/msazure\",\r\n \"nfsExport\": \"/\",\r\n \"targetPath\": \"/\"\r\n }\r\n ],\r\n \"clfs\": {\r\n \"target\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr4\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/powershellstoragetarget?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTEvc3RvcmFnZVRhcmdldHMvcG93ZXJzaGVsbHN0b3JhZ2V0YXJnZXQ/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "PUT",
+ "RequestBody": "{\r\n \"properties\": {\r\n \"junctions\": [\r\n {\r\n \"namespacePath\": \"/msazure\",\r\n \"targetPath\": \"/\",\r\n \"nfsExport\": \"/\"\r\n }\r\n ],\r\n \"targetType\": \"clfs\",\r\n \"clfs\": {\r\n \"target\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr4\"\r\n }\r\n }\r\n}",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Content-Length": [
+ "417"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Azure-AsyncOperation": [
+ "https://management.azure.com/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache/locations/eastus/ascOperations/d3a48082-8706-417c-862c-52a5a488d48d?api-version=2019-11-01"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "d3a48082-8706-417c-862c-52a5a488d48d"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1199"
+ ],
+ "x-ms-correlation-request-id": [
+ "e6908f41-15ab-44f9-867f-e9569204e043"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142943Z:e6908f41-15ab-44f9-867f-e9569204e043"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:29:43 GMT"
+ ],
+ "Content-Length": [
+ "775"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"powershellstoragetarget\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/powershellstoragetarget\",\r\n \"type\": \"Microsoft.StorageCache/caches/storageTargets\",\r\n \"location\": \"eastus\",\r\n \"properties\": {\r\n \"targetType\": \"clfs\",\r\n \"provisioningState\": \"Creating\",\r\n \"junctions\": [\r\n {\r\n \"namespacePath\": \"/msazure\",\r\n \"nfsExport\": \"/\",\r\n \"targetPath\": \"/\"\r\n }\r\n ],\r\n \"clfs\": {\r\n \"target\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr4\"\r\n }\r\n }\r\n}",
+ "StatusCode": 201
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/powershellstoragetarget?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTEvc3RvcmFnZVRhcmdldHMvcG93ZXJzaGVsbHN0b3JhZ2V0YXJnZXQ/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "DELETE",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Location": [
+ "https://management.azure.com/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache/locations/eastus/ascOperations/e3e0aa35-123c-4c9e-811b-15796e35f089?monitor=true&api-version=2019-11-01"
+ ],
+ "Azure-AsyncOperation": [
+ "https://management.azure.com/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache/locations/eastus/ascOperations/e3e0aa35-123c-4c9e-811b-15796e35f089?api-version=2019-11-01"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "e3e0aa35-123c-4c9e-811b-15796e35f089"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-deletes": [
+ "14999"
+ ],
+ "x-ms-correlation-request-id": [
+ "e2a84e17-a939-4925-8d8e-3fb44669f86a"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143218Z:e2a84e17-a939-4925-8d8e-3fb44669f86a"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:32:17 GMT"
+ ],
+ "Expires": [
+ "-1"
+ ],
+ "Content-Length": [
+ "0"
+ ]
+ },
+ "ResponseBody": "",
+ "StatusCode": 202
+ }
+ ],
+ "Names": {},
+ "Variables": {
+ "SubscriptionId": "46841c0e-69c8-4b17-af46-6626ecb15fc2"
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache.Test/SessionRecords/Microsoft.Azure.Commands.HPCCache.Test.ScenarioTests.HpcCacheStorageTargetTest/TestSetStorgeTarget.json b/src/HPCCache/HPCCache.Test/SessionRecords/Microsoft.Azure.Commands.HPCCache.Test.ScenarioTests.HpcCacheStorageTargetTest/TestSetStorgeTarget.json
new file mode 100644
index 000000000000..ce93267a15dc
--- /dev/null
+++ b/src/HPCCache/HPCCache.Test/SessionRecords/Microsoft.Azure.Commands.HPCCache.Test.ScenarioTests.HpcCacheStorageTargetTest/TestSetStorgeTarget.json
@@ -0,0 +1,445 @@
+{
+ "Entries": [
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache/register?api-version=2016-09-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZUNhY2hlL3JlZ2lzdGVyP2FwaS12ZXJzaW9uPTIwMTYtMDktMDE=",
+ "RequestMethod": "POST",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "65c4e462-f22e-4059-b04b-47199125cd5d"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.5"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1199"
+ ],
+ "x-ms-request-id": [
+ "7269f1e4-ec2e-42ce-97ab-33e853dd9422"
+ ],
+ "x-ms-correlation-request-id": [
+ "7269f1e4-ec2e-42ce-97ab-33e853dd9422"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142831Z:7269f1e4-ec2e-42ce-97ab-33e853dd9422"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:28:30 GMT"
+ ],
+ "Content-Length": [
+ "1613"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache\",\r\n \"namespace\": \"Microsoft.StorageCache\",\r\n \"authorizations\": [\r\n {\r\n \"applicationId\": \"4392ab71-2ce2-4b0d-8770-b352745c73f5\",\r\n \"roleDefinitionId\": \"e27430df-bd6b-4f3a-bd6d-d52ad1a7d075\"\r\n }\r\n ],\r\n \"resourceTypes\": [\r\n {\r\n \"resourceType\": \"operations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"South Central US\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ],\r\n \"capabilities\": \"SystemAssignedResourceIdentity\"\r\n },\r\n {\r\n \"resourceType\": \"caches/storageTargets\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"usageModels\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations\",\r\n \"locations\": [],\r\n \"apiVersions\": [\r\n \"2020-03-01\",\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations/ascoperations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n }\r\n ],\r\n \"registrationState\": \"Registered\"\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache?api-version=2016-09-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZUNhY2hlP2FwaS12ZXJzaW9uPTIwMTYtMDktMDE=",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "198e6202-39ec-4938-b698-1b7b409c7800"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.5"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11998"
+ ],
+ "x-ms-request-id": [
+ "4960e694-dc80-4afe-b9d5-c5f2844ccf11"
+ ],
+ "x-ms-correlation-request-id": [
+ "4960e694-dc80-4afe-b9d5-c5f2844ccf11"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142831Z:4960e694-dc80-4afe-b9d5-c5f2844ccf11"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:28:30 GMT"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ],
+ "Content-Length": [
+ "1613"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache\",\r\n \"namespace\": \"Microsoft.StorageCache\",\r\n \"authorizations\": [\r\n {\r\n \"applicationId\": \"4392ab71-2ce2-4b0d-8770-b352745c73f5\",\r\n \"roleDefinitionId\": \"e27430df-bd6b-4f3a-bd6d-d52ad1a7d075\"\r\n }\r\n ],\r\n \"resourceTypes\": [\r\n {\r\n \"resourceType\": \"operations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"South Central US\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ],\r\n \"capabilities\": \"SystemAssignedResourceIdentity\"\r\n },\r\n {\r\n \"resourceType\": \"caches/storageTargets\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"usageModels\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations\",\r\n \"locations\": [],\r\n \"apiVersions\": [\r\n \"2020-03-01\",\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations/ascoperations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n }\r\n ],\r\n \"registrationState\": \"Registered\"\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/msazure?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTEvc3RvcmFnZVRhcmdldHMvbXNhenVyZT9hcGktdmVyc2lvbj0yMDE5LTExLTAx",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "3109d3b0-3605-435a-881e-d6d763f90c92"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11994"
+ ],
+ "x-ms-correlation-request-id": [
+ "4c1fe54b-20be-49ff-99c4-0ff3f37ab355"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142832Z:4c1fe54b-20be-49ff-99c4-0ff3f37ab355"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:28:32 GMT"
+ ],
+ "Content-Length": [
+ "744"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"msazure\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/msazure\",\r\n \"type\": \"Microsoft.StorageCache/caches/storageTargets\",\r\n \"location\": \"eastus\",\r\n \"properties\": {\r\n \"targetType\": \"clfs\",\r\n \"provisioningState\": \"Succeeded\",\r\n \"junctions\": [\r\n {\r\n \"namespacePath\": \"/junction\",\r\n \"nfsExport\": \"/\",\r\n \"targetPath\": \"/\"\r\n }\r\n ],\r\n \"clfs\": {\r\n \"target\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/msazure?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTEvc3RvcmFnZVRhcmdldHMvbXNhenVyZT9hcGktdmVyc2lvbj0yMDE5LTExLTAx",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "22d4284f-e55e-4938-bde0-e9d895a8c2f9"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11993"
+ ],
+ "x-ms-correlation-request-id": [
+ "e64869dc-2113-4181-9f13-4cb099e79292"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142837Z:e64869dc-2113-4181-9f13-4cb099e79292"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:28:37 GMT"
+ ],
+ "Content-Length": [
+ "743"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"msazure\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/msazure\",\r\n \"type\": \"Microsoft.StorageCache/caches/storageTargets\",\r\n \"location\": \"eastus\",\r\n \"properties\": {\r\n \"targetType\": \"clfs\",\r\n \"provisioningState\": \"Updating\",\r\n \"junctions\": [\r\n {\r\n \"namespacePath\": \"/abcdefgh\",\r\n \"nfsExport\": \"/\",\r\n \"targetPath\": \"/\"\r\n }\r\n ],\r\n \"clfs\": {\r\n \"target\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/msazure?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTEvc3RvcmFnZVRhcmdldHMvbXNhenVyZT9hcGktdmVyc2lvbj0yMDE5LTExLTAx",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "8dbf6a07-27ca-4764-8608-5fe0b751fdfd"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11992"
+ ],
+ "x-ms-correlation-request-id": [
+ "e21f0dd0-d890-4da2-952f-001f54457aba"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142907Z:e21f0dd0-d890-4da2-952f-001f54457aba"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:29:07 GMT"
+ ],
+ "Content-Length": [
+ "743"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"msazure\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/msazure\",\r\n \"type\": \"Microsoft.StorageCache/caches/storageTargets\",\r\n \"location\": \"eastus\",\r\n \"properties\": {\r\n \"targetType\": \"clfs\",\r\n \"provisioningState\": \"Updating\",\r\n \"junctions\": [\r\n {\r\n \"namespacePath\": \"/abcdefgh\",\r\n \"nfsExport\": \"/\",\r\n \"targetPath\": \"/\"\r\n }\r\n ],\r\n \"clfs\": {\r\n \"target\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/msazure?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTEvc3RvcmFnZVRhcmdldHMvbXNhenVyZT9hcGktdmVyc2lvbj0yMDE5LTExLTAx",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "40bdef75-d043-494c-95a9-ec1bf19834af"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11991"
+ ],
+ "x-ms-correlation-request-id": [
+ "8a1d6c4e-c8ce-4656-9f6f-327e70569df3"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142938Z:8a1d6c4e-c8ce-4656-9f6f-327e70569df3"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:29:37 GMT"
+ ],
+ "Content-Length": [
+ "744"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"msazure\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/msazure\",\r\n \"type\": \"Microsoft.StorageCache/caches/storageTargets\",\r\n \"location\": \"eastus\",\r\n \"properties\": {\r\n \"targetType\": \"clfs\",\r\n \"provisioningState\": \"Succeeded\",\r\n \"junctions\": [\r\n {\r\n \"namespacePath\": \"/abcdefgh\",\r\n \"nfsExport\": \"/\",\r\n \"targetPath\": \"/\"\r\n }\r\n ],\r\n \"clfs\": {\r\n \"target\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/msazure?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTEvc3RvcmFnZVRhcmdldHMvbXNhenVyZT9hcGktdmVyc2lvbj0yMDE5LTExLTAx",
+ "RequestMethod": "PUT",
+ "RequestBody": "{\r\n \"properties\": {\r\n \"junctions\": [\r\n {\r\n \"namespacePath\": \"/abcdefgh\",\r\n \"targetPath\": \"/\",\r\n \"nfsExport\": \"/\"\r\n }\r\n ],\r\n \"targetType\": \"clfs\",\r\n \"clfs\": {\r\n \"target\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr\"\r\n }\r\n }\r\n}",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Content-Length": [
+ "417"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Location": [
+ "https://management.azure.com/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache/locations/eastus/ascOperations/86521c41-f845-4bbc-aa36-da7e660bbc33?monitor=true&api-version=2019-11-01"
+ ],
+ "Azure-AsyncOperation": [
+ "https://management.azure.com/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache/locations/eastus/ascOperations/86521c41-f845-4bbc-aa36-da7e660bbc33?api-version=2019-11-01"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "86521c41-f845-4bbc-aa36-da7e660bbc33"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1197"
+ ],
+ "x-ms-correlation-request-id": [
+ "3b8b465a-fe17-473e-b7e9-2ae9a16b1c94"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142832Z:3b8b465a-fe17-473e-b7e9-2ae9a16b1c94"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:28:32 GMT"
+ ],
+ "Content-Length": [
+ "743"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"msazure\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/msazure\",\r\n \"type\": \"Microsoft.StorageCache/caches/storageTargets\",\r\n \"location\": \"eastus\",\r\n \"properties\": {\r\n \"targetType\": \"clfs\",\r\n \"provisioningState\": \"Updating\",\r\n \"junctions\": [\r\n {\r\n \"namespacePath\": \"/abcdefgh\",\r\n \"nfsExport\": \"/\",\r\n \"targetPath\": \"/\"\r\n }\r\n ],\r\n \"clfs\": {\r\n \"target\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr\"\r\n }\r\n }\r\n}",
+ "StatusCode": 202
+ }
+ ],
+ "Names": {},
+ "Variables": {
+ "SubscriptionId": "46841c0e-69c8-4b17-af46-6626ecb15fc2"
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache.Test/SessionRecords/Microsoft.Azure.Commands.HPCCache.Test.ScenarioTests.HpcCacheTest/TestFlushCache.json b/src/HPCCache/HPCCache.Test/SessionRecords/Microsoft.Azure.Commands.HPCCache.Test.ScenarioTests.HpcCacheTest/TestFlushCache.json
new file mode 100644
index 000000000000..bb883e25c3e6
--- /dev/null
+++ b/src/HPCCache/HPCCache.Test/SessionRecords/Microsoft.Azure.Commands.HPCCache.Test.ScenarioTests.HpcCacheTest/TestFlushCache.json
@@ -0,0 +1,308 @@
+{
+ "Entries": [
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache/register?api-version=2016-09-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZUNhY2hlL3JlZ2lzdGVyP2FwaS12ZXJzaW9uPTIwMTYtMDktMDE=",
+ "RequestMethod": "POST",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "4e921d86-d751-4efb-b7ce-80c150b24972"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.5"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1199"
+ ],
+ "x-ms-request-id": [
+ "4d2a3ae9-0014-4abd-8e2f-41a56fe9972d"
+ ],
+ "x-ms-correlation-request-id": [
+ "4d2a3ae9-0014-4abd-8e2f-41a56fe9972d"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143431Z:4d2a3ae9-0014-4abd-8e2f-41a56fe9972d"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:34:30 GMT"
+ ],
+ "Content-Length": [
+ "1613"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache\",\r\n \"namespace\": \"Microsoft.StorageCache\",\r\n \"authorizations\": [\r\n {\r\n \"applicationId\": \"4392ab71-2ce2-4b0d-8770-b352745c73f5\",\r\n \"roleDefinitionId\": \"e27430df-bd6b-4f3a-bd6d-d52ad1a7d075\"\r\n }\r\n ],\r\n \"resourceTypes\": [\r\n {\r\n \"resourceType\": \"operations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"South Central US\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ],\r\n \"capabilities\": \"SystemAssignedResourceIdentity\"\r\n },\r\n {\r\n \"resourceType\": \"caches/storageTargets\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"usageModels\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations\",\r\n \"locations\": [],\r\n \"apiVersions\": [\r\n \"2020-03-01\",\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations/ascoperations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n }\r\n ],\r\n \"registrationState\": \"Registered\"\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache?api-version=2016-09-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZUNhY2hlP2FwaS12ZXJzaW9uPTIwMTYtMDktMDE=",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "064c22b2-86a0-48e0-94dd-f29d74f085ff"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.5"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11996"
+ ],
+ "x-ms-request-id": [
+ "0f600d2d-4f35-4ac7-810f-95c99e70d4d8"
+ ],
+ "x-ms-correlation-request-id": [
+ "0f600d2d-4f35-4ac7-810f-95c99e70d4d8"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143431Z:0f600d2d-4f35-4ac7-810f-95c99e70d4d8"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:34:30 GMT"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ],
+ "Content-Length": [
+ "1613"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache\",\r\n \"namespace\": \"Microsoft.StorageCache\",\r\n \"authorizations\": [\r\n {\r\n \"applicationId\": \"4392ab71-2ce2-4b0d-8770-b352745c73f5\",\r\n \"roleDefinitionId\": \"e27430df-bd6b-4f3a-bd6d-d52ad1a7d075\"\r\n }\r\n ],\r\n \"resourceTypes\": [\r\n {\r\n \"resourceType\": \"operations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"South Central US\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ],\r\n \"capabilities\": \"SystemAssignedResourceIdentity\"\r\n },\r\n {\r\n \"resourceType\": \"caches/storageTargets\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"usageModels\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations\",\r\n \"locations\": [],\r\n \"apiVersions\": [\r\n \"2020-03-01\",\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations/ascoperations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n }\r\n ],\r\n \"registrationState\": \"Registered\"\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/flush?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTEvZmx1c2g/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "POST",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Azure-AsyncOperation": [
+ "https://management.azure.com/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache/locations/eastus/ascOperations/089b1df9-08b2-4988-b58f-0913aa86213b?api-version=2019-11-01"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "089b1df9-08b2-4988-b58f-0913aa86213b"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1198"
+ ],
+ "x-ms-correlation-request-id": [
+ "dd95e20f-93a2-44de-95e8-a7252862fc5c"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143431Z:dd95e20f-93a2-44de-95e8-a7252862fc5c"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:34:30 GMT"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "",
+ "StatusCode": 204
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "83b00780-ae87-43e7-91ac-a4d3df74c054"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11995"
+ ],
+ "x-ms-correlation-request-id": [
+ "854fc176-48c8-4655-a3b3-8919a200bc4b"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143431Z:854fc176-48c8-4655-a3b3-8919a200bc4b"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:34:30 GMT"
+ ],
+ "Content-Length": [
+ "1063"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Cache-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Flushing\",\r\n \"statusDescription\": \"The cache is flushing data to the Storage Targets.\"\r\n },\r\n \"mountAddresses\": [\r\n \"10.1.0.7\",\r\n \"10.1.0.8\",\r\n \"10.1.0.9\"\r\n ],\r\n \"provisioningState\": \"Succeeded\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T13:59:52.9034317Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "7977b2db-0e64-4a9a-8a34-08bd7c8c6685"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11995"
+ ],
+ "x-ms-correlation-request-id": [
+ "3652a692-c8ea-4b0b-a058-076f7f8cff9b"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143531Z:3652a692-c8ea-4b0b-a058-076f7f8cff9b"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:35:31 GMT"
+ ],
+ "Content-Length": [
+ "1041"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Cache-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Healthy\",\r\n \"statusDescription\": \"The cache is in Running state\"\r\n },\r\n \"mountAddresses\": [\r\n \"10.1.0.7\",\r\n \"10.1.0.8\",\r\n \"10.1.0.9\"\r\n ],\r\n \"provisioningState\": \"Succeeded\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T13:59:52.9034317Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ }
+ ],
+ "Names": {},
+ "Variables": {
+ "SubscriptionId": "46841c0e-69c8-4b17-af46-6626ecb15fc2"
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache.Test/SessionRecords/Microsoft.Azure.Commands.HPCCache.Test.ScenarioTests.HpcCacheTest/TestGetCacheByResourceGroupAndName.json b/src/HPCCache/HPCCache.Test/SessionRecords/Microsoft.Azure.Commands.HPCCache.Test.ScenarioTests.HpcCacheTest/TestGetCacheByResourceGroupAndName.json
new file mode 100644
index 000000000000..189ece83d9f9
--- /dev/null
+++ b/src/HPCCache/HPCCache.Test/SessionRecords/Microsoft.Azure.Commands.HPCCache.Test.ScenarioTests.HpcCacheTest/TestGetCacheByResourceGroupAndName.json
@@ -0,0 +1,189 @@
+{
+ "Entries": [
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache/register?api-version=2016-09-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZUNhY2hlL3JlZ2lzdGVyP2FwaS12ZXJzaW9uPTIwMTYtMDktMDE=",
+ "RequestMethod": "POST",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "bca609ec-9066-4b8d-b637-5113b56832e3"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.5"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1199"
+ ],
+ "x-ms-request-id": [
+ "44257063-c566-4880-837a-4b9f0ffacefa"
+ ],
+ "x-ms-correlation-request-id": [
+ "44257063-c566-4880-837a-4b9f0ffacefa"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143533Z:44257063-c566-4880-837a-4b9f0ffacefa"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:35:33 GMT"
+ ],
+ "Content-Length": [
+ "1613"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache\",\r\n \"namespace\": \"Microsoft.StorageCache\",\r\n \"authorizations\": [\r\n {\r\n \"applicationId\": \"4392ab71-2ce2-4b0d-8770-b352745c73f5\",\r\n \"roleDefinitionId\": \"e27430df-bd6b-4f3a-bd6d-d52ad1a7d075\"\r\n }\r\n ],\r\n \"resourceTypes\": [\r\n {\r\n \"resourceType\": \"operations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"South Central US\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ],\r\n \"capabilities\": \"SystemAssignedResourceIdentity\"\r\n },\r\n {\r\n \"resourceType\": \"caches/storageTargets\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"usageModels\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations\",\r\n \"locations\": [],\r\n \"apiVersions\": [\r\n \"2020-03-01\",\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations/ascoperations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n }\r\n ],\r\n \"registrationState\": \"Registered\"\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache?api-version=2016-09-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZUNhY2hlP2FwaS12ZXJzaW9uPTIwMTYtMDktMDE=",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "bbe7c10c-997b-4a12-8ab6-1a49d6e3acb4"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.5"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11999"
+ ],
+ "x-ms-request-id": [
+ "1326963d-0a4e-416e-a40f-a9ce4d851ea8"
+ ],
+ "x-ms-correlation-request-id": [
+ "1326963d-0a4e-416e-a40f-a9ce4d851ea8"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143533Z:1326963d-0a4e-416e-a40f-a9ce4d851ea8"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:35:33 GMT"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ],
+ "Content-Length": [
+ "1613"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache\",\r\n \"namespace\": \"Microsoft.StorageCache\",\r\n \"authorizations\": [\r\n {\r\n \"applicationId\": \"4392ab71-2ce2-4b0d-8770-b352745c73f5\",\r\n \"roleDefinitionId\": \"e27430df-bd6b-4f3a-bd6d-d52ad1a7d075\"\r\n }\r\n ],\r\n \"resourceTypes\": [\r\n {\r\n \"resourceType\": \"operations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"South Central US\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ],\r\n \"capabilities\": \"SystemAssignedResourceIdentity\"\r\n },\r\n {\r\n \"resourceType\": \"caches/storageTargets\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"usageModels\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations\",\r\n \"locations\": [],\r\n \"apiVersions\": [\r\n \"2020-03-01\",\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations/ascoperations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n }\r\n ],\r\n \"registrationState\": \"Registered\"\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "eae663d6-f780-4546-9991-9e5cc01c7fd8"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11994"
+ ],
+ "x-ms-correlation-request-id": [
+ "3e6bde87-ce1a-455a-8087-c6f8681bb19e"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143533Z:3e6bde87-ce1a-455a-8087-c6f8681bb19e"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:35:33 GMT"
+ ],
+ "Content-Length": [
+ "1041"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Cache-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Healthy\",\r\n \"statusDescription\": \"The cache is in Running state\"\r\n },\r\n \"mountAddresses\": [\r\n \"10.1.0.7\",\r\n \"10.1.0.8\",\r\n \"10.1.0.9\"\r\n ],\r\n \"provisioningState\": \"Succeeded\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T13:59:52.9034317Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ }
+ ],
+ "Names": {},
+ "Variables": {
+ "SubscriptionId": "46841c0e-69c8-4b17-af46-6626ecb15fc2"
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache.Test/SessionRecords/Microsoft.Azure.Commands.HPCCache.Test.ScenarioTests.HpcCacheTest/TestGetSku.json b/src/HPCCache/HPCCache.Test/SessionRecords/Microsoft.Azure.Commands.HPCCache.Test.ScenarioTests.HpcCacheTest/TestGetSku.json
new file mode 100644
index 000000000000..bba75c5dae9a
--- /dev/null
+++ b/src/HPCCache/HPCCache.Test/SessionRecords/Microsoft.Azure.Commands.HPCCache.Test.ScenarioTests.HpcCacheTest/TestGetSku.json
@@ -0,0 +1,182 @@
+{
+ "Entries": [
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache/register?api-version=2016-09-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZUNhY2hlL3JlZ2lzdGVyP2FwaS12ZXJzaW9uPTIwMTYtMDktMDE=",
+ "RequestMethod": "POST",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "68f34636-96a2-42ea-93fb-f1d69e5b4f70"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.5"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1198"
+ ],
+ "x-ms-request-id": [
+ "fc9f3fcd-0772-45f9-803d-83bc221e7711"
+ ],
+ "x-ms-correlation-request-id": [
+ "fc9f3fcd-0772-45f9-803d-83bc221e7711"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143426Z:fc9f3fcd-0772-45f9-803d-83bc221e7711"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:34:26 GMT"
+ ],
+ "Content-Length": [
+ "1613"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache\",\r\n \"namespace\": \"Microsoft.StorageCache\",\r\n \"authorizations\": [\r\n {\r\n \"applicationId\": \"4392ab71-2ce2-4b0d-8770-b352745c73f5\",\r\n \"roleDefinitionId\": \"e27430df-bd6b-4f3a-bd6d-d52ad1a7d075\"\r\n }\r\n ],\r\n \"resourceTypes\": [\r\n {\r\n \"resourceType\": \"operations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"South Central US\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ],\r\n \"capabilities\": \"SystemAssignedResourceIdentity\"\r\n },\r\n {\r\n \"resourceType\": \"caches/storageTargets\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"usageModels\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations\",\r\n \"locations\": [],\r\n \"apiVersions\": [\r\n \"2020-03-01\",\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations/ascoperations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n }\r\n ],\r\n \"registrationState\": \"Registered\"\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache?api-version=2016-09-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZUNhY2hlP2FwaS12ZXJzaW9uPTIwMTYtMDktMDE=",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "8e56a776-f478-468e-9559-2cdd2fb8fc10"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.5"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11996"
+ ],
+ "x-ms-request-id": [
+ "89b3a4b2-bc46-4c81-a9de-e93e265a7333"
+ ],
+ "x-ms-correlation-request-id": [
+ "89b3a4b2-bc46-4c81-a9de-e93e265a7333"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143426Z:89b3a4b2-bc46-4c81-a9de-e93e265a7333"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:34:26 GMT"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ],
+ "Content-Length": [
+ "1613"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache\",\r\n \"namespace\": \"Microsoft.StorageCache\",\r\n \"authorizations\": [\r\n {\r\n \"applicationId\": \"4392ab71-2ce2-4b0d-8770-b352745c73f5\",\r\n \"roleDefinitionId\": \"e27430df-bd6b-4f3a-bd6d-d52ad1a7d075\"\r\n }\r\n ],\r\n \"resourceTypes\": [\r\n {\r\n \"resourceType\": \"operations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"South Central US\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ],\r\n \"capabilities\": \"SystemAssignedResourceIdentity\"\r\n },\r\n {\r\n \"resourceType\": \"caches/storageTargets\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"usageModels\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations\",\r\n \"locations\": [],\r\n \"apiVersions\": [\r\n \"2020-03-01\",\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations/ascoperations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n }\r\n ],\r\n \"registrationState\": \"Registered\"\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache/skus?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZUNhY2hlL3NrdXM/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11999"
+ ],
+ "x-ms-request-id": [
+ "2fb9123b-8ea8-405d-91e1-094dc15cfc87"
+ ],
+ "x-ms-correlation-request-id": [
+ "2fb9123b-8ea8-405d-91e1-094dc15cfc87"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143427Z:2fb9123b-8ea8-405d-91e1-094dc15cfc87"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:34:27 GMT"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ],
+ "Content-Length": [
+ "10775"
+ ]
+ },
+ "ResponseBody": "{\r\n \"value\": [\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_2G\",\r\n \"locations\": [\r\n \"westeurope\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"westeurope\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"2\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"3072,6144,12288\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_4G\",\r\n \"locations\": [\r\n \"westeurope\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"westeurope\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"4\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"6144,12288,24576\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_8G\",\r\n \"locations\": [\r\n \"westeurope\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"westeurope\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"8\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"12288,24576,49152\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_2G\",\r\n \"locations\": [\r\n \"northeurope\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"northeurope\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"2\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"3072,6144,12288\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_4G\",\r\n \"locations\": [\r\n \"northeurope\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"northeurope\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"4\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"6144,12288,24576\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_8G\",\r\n \"locations\": [\r\n \"northeurope\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"northeurope\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"8\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"12288,24576,49152\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_2G\",\r\n \"locations\": [\r\n \"EastUS2EUAP\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"EastUS2EUAP\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"2\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"3072,6144,12288\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_4G\",\r\n \"locations\": [\r\n \"EastUS2EUAP\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"EastUS2EUAP\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"4\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"6144,12288,24576\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_8G\",\r\n \"locations\": [\r\n \"EastUS2EUAP\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"EastUS2EUAP\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"8\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"12288,24576,49152\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_2G\",\r\n \"locations\": [\r\n \"eastus\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"eastus\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"2\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"3072,6144,12288\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_4G\",\r\n \"locations\": [\r\n \"eastus\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"eastus\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"4\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"6144,12288,24576\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_8G\",\r\n \"locations\": [\r\n \"eastus\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"eastus\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"8\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"12288,24576,49152\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_2G\",\r\n \"locations\": [\r\n \"eastus\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"eastus\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"2\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"3072,6144,12288\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_4G\",\r\n \"locations\": [\r\n \"eastus\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"eastus\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"4\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"6144,12288,24576\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_8G\",\r\n \"locations\": [\r\n \"eastus\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"eastus\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"8\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"12288,24576,49152\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_2G\",\r\n \"locations\": [\r\n \"KoreaCentral\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"KoreaCentral\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"2\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"3072,6144,12288\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_4G\",\r\n \"locations\": [\r\n \"KoreaCentral\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"KoreaCentral\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"4\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"6144,12288,24576\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_8G\",\r\n \"locations\": [\r\n \"KoreaCentral\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"KoreaCentral\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"8\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"12288,24576,49152\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_2G\",\r\n \"locations\": [\r\n \"southcentralus\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"southcentralus\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"2\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"3072,6144,12288\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_4G\",\r\n \"locations\": [\r\n \"southcentralus\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"southcentralus\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"4\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"6144,12288,24576\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_8G\",\r\n \"locations\": [\r\n \"southcentralus\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"southcentralus\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"8\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"12288,24576,49152\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_2G\",\r\n \"locations\": [\r\n \"westus2\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"westus2\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"2\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"3072,6144,12288\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_4G\",\r\n \"locations\": [\r\n \"westus2\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"westus2\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"4\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"6144,12288,24576\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_8G\",\r\n \"locations\": [\r\n \"westus2\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"westus2\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"8\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"12288,24576,49152\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_2G\",\r\n \"locations\": [\r\n \"westus2\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"westus2\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"2\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"3072,6144,12288\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_4G\",\r\n \"locations\": [\r\n \"westus2\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"westus2\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"4\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"6144,12288,24576\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_8G\",\r\n \"locations\": [\r\n \"westus2\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"westus2\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"8\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"12288,24576,49152\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_2G\",\r\n \"locations\": [\r\n \"eastus2\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"eastus2\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"2\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"3072,6144,12288\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_4G\",\r\n \"locations\": [\r\n \"eastus2\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"eastus2\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"4\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"6144,12288,24576\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_8G\",\r\n \"locations\": [\r\n \"eastus2\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"eastus2\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"8\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"12288,24576,49152\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_2G\",\r\n \"locations\": [\r\n \"southeastasia\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"southeastasia\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"2\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"3072,6144,12288\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_4G\",\r\n \"locations\": [\r\n \"southeastasia\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"southeastasia\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"4\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"6144,12288,24576\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_8G\",\r\n \"locations\": [\r\n \"southeastasia\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"southeastasia\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"8\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"12288,24576,49152\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_2G\",\r\n \"locations\": [\r\n \"australiaeast\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"australiaeast\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"2\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"3072,6144,12288\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_4G\",\r\n \"locations\": [\r\n \"australiaeast\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"australiaeast\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"4\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"6144,12288,24576\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_8G\",\r\n \"locations\": [\r\n \"australiaeast\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"australiaeast\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"8\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"12288,24576,49152\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_2G\",\r\n \"locations\": [\r\n \"centraluseuap\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"centraluseuap\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"2\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"3072,6144,12288\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_4G\",\r\n \"locations\": [\r\n \"centraluseuap\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"centraluseuap\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"4\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"6144,12288,24576\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"name\": \"Standard_8G\",\r\n \"locations\": [\r\n \"centraluseuap\"\r\n ],\r\n \"locationInfo\": [\r\n {\r\n \"location\": \"centraluseuap\",\r\n \"zones\": [],\r\n \"zoneDetails\": []\r\n }\r\n ],\r\n \"capabilities\": [\r\n {\r\n \"name\": \"throughput (GB/s)\",\r\n \"value\": \"8\"\r\n },\r\n {\r\n \"name\": \"cache sizes (GB)\",\r\n \"value\": \"12288,24576,49152\"\r\n }\r\n ],\r\n \"restrictions\": []\r\n }\r\n ]\r\n}",
+ "StatusCode": 200
+ }
+ ],
+ "Names": {},
+ "Variables": {
+ "SubscriptionId": "46841c0e-69c8-4b17-af46-6626ecb15fc2"
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache.Test/SessionRecords/Microsoft.Azure.Commands.HPCCache.Test.ScenarioTests.HpcCacheTest/TestGetUsageModel.json b/src/HPCCache/HPCCache.Test/SessionRecords/Microsoft.Azure.Commands.HPCCache.Test.ScenarioTests.HpcCacheTest/TestGetUsageModel.json
new file mode 100644
index 000000000000..6cced6addda3
--- /dev/null
+++ b/src/HPCCache/HPCCache.Test/SessionRecords/Microsoft.Azure.Commands.HPCCache.Test.ScenarioTests.HpcCacheTest/TestGetUsageModel.json
@@ -0,0 +1,189 @@
+{
+ "Entries": [
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache/register?api-version=2016-09-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZUNhY2hlL3JlZ2lzdGVyP2FwaS12ZXJzaW9uPTIwMTYtMDktMDE=",
+ "RequestMethod": "POST",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "2206660f-4a20-4662-8cc1-b64b67647000"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.5"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1199"
+ ],
+ "x-ms-request-id": [
+ "4e1f136f-d799-4d64-a0fa-e9ad1c26b029"
+ ],
+ "x-ms-correlation-request-id": [
+ "4e1f136f-d799-4d64-a0fa-e9ad1c26b029"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143428Z:4e1f136f-d799-4d64-a0fa-e9ad1c26b029"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:34:28 GMT"
+ ],
+ "Content-Length": [
+ "1613"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache\",\r\n \"namespace\": \"Microsoft.StorageCache\",\r\n \"authorizations\": [\r\n {\r\n \"applicationId\": \"4392ab71-2ce2-4b0d-8770-b352745c73f5\",\r\n \"roleDefinitionId\": \"e27430df-bd6b-4f3a-bd6d-d52ad1a7d075\"\r\n }\r\n ],\r\n \"resourceTypes\": [\r\n {\r\n \"resourceType\": \"operations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"South Central US\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ],\r\n \"capabilities\": \"SystemAssignedResourceIdentity\"\r\n },\r\n {\r\n \"resourceType\": \"caches/storageTargets\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"usageModels\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations\",\r\n \"locations\": [],\r\n \"apiVersions\": [\r\n \"2020-03-01\",\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations/ascoperations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n }\r\n ],\r\n \"registrationState\": \"Registered\"\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache?api-version=2016-09-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZUNhY2hlP2FwaS12ZXJzaW9uPTIwMTYtMDktMDE=",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "8aa8adf6-f341-41f1-bc56-cf895b01f94d"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.5"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11998"
+ ],
+ "x-ms-request-id": [
+ "fb5f24ca-1c3b-4816-a237-3ab1665f1dfb"
+ ],
+ "x-ms-correlation-request-id": [
+ "fb5f24ca-1c3b-4816-a237-3ab1665f1dfb"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143428Z:fb5f24ca-1c3b-4816-a237-3ab1665f1dfb"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:34:28 GMT"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ],
+ "Content-Length": [
+ "1613"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache\",\r\n \"namespace\": \"Microsoft.StorageCache\",\r\n \"authorizations\": [\r\n {\r\n \"applicationId\": \"4392ab71-2ce2-4b0d-8770-b352745c73f5\",\r\n \"roleDefinitionId\": \"e27430df-bd6b-4f3a-bd6d-d52ad1a7d075\"\r\n }\r\n ],\r\n \"resourceTypes\": [\r\n {\r\n \"resourceType\": \"operations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"South Central US\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ],\r\n \"capabilities\": \"SystemAssignedResourceIdentity\"\r\n },\r\n {\r\n \"resourceType\": \"caches/storageTargets\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"usageModels\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations\",\r\n \"locations\": [],\r\n \"apiVersions\": [\r\n \"2020-03-01\",\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations/ascoperations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n }\r\n ],\r\n \"registrationState\": \"Registered\"\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache/usageModels?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZUNhY2hlL3VzYWdlTW9kZWxzP2FwaS12ZXJzaW9uPTIwMTktMTEtMDE=",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "8dd1d015-e3e2-4e6b-b56a-3dd661b98a06"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11999"
+ ],
+ "x-ms-correlation-request-id": [
+ "bfba114f-2d93-4357-b678-4ed4a9385e57"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143429Z:bfba114f-2d93-4357-b678-4ed4a9385e57"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:34:28 GMT"
+ ],
+ "Content-Length": [
+ "540"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"value\": [\r\n {\r\n \"display\": {\r\n \"description\": \"Read heavy, infrequent writes\"\r\n },\r\n \"modelName\": \"READ_HEAVY_INFREQ\",\r\n \"targetType\": \"Nfs\"\r\n },\r\n {\r\n \"display\": {\r\n \"description\": \"Greater than 15% writes\"\r\n },\r\n \"modelName\": \"WRITE_WORKLOAD_15\",\r\n \"targetType\": \"Nfs\"\r\n },\r\n {\r\n \"display\": {\r\n \"description\": \"Clients write to the NFS target bypassing the cache\"\r\n },\r\n \"modelName\": \"WRITE_AROUND\",\r\n \"targetType\": \"Nfs\"\r\n }\r\n ]\r\n}",
+ "StatusCode": 200
+ }
+ ],
+ "Names": {},
+ "Variables": {
+ "SubscriptionId": "46841c0e-69c8-4b17-af46-6626ecb15fc2"
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache.Test/SessionRecords/Microsoft.Azure.Commands.HPCCache.Test.ScenarioTests.HpcCacheTest/TestNewCacheRemoveCache.json b/src/HPCCache/HPCCache.Test/SessionRecords/Microsoft.Azure.Commands.HPCCache.Test.ScenarioTests.HpcCacheTest/TestNewCacheRemoveCache.json
new file mode 100644
index 000000000000..3ad47376627b
--- /dev/null
+++ b/src/HPCCache/HPCCache.Test/SessionRecords/Microsoft.Azure.Commands.HPCCache.Test.ScenarioTests.HpcCacheTest/TestNewCacheRemoveCache.json
@@ -0,0 +1,438 @@
+{
+ "Entries": [
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache/register?api-version=2016-09-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZUNhY2hlL3JlZ2lzdGVyP2FwaS12ZXJzaW9uPTIwMTYtMDktMDE=",
+ "RequestMethod": "POST",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "d0a21879-8c5a-4926-a8ca-bd8e1617d5ad"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.5"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1199"
+ ],
+ "x-ms-request-id": [
+ "05df0aba-e58f-44d3-9261-415cc006fe30"
+ ],
+ "x-ms-correlation-request-id": [
+ "05df0aba-e58f-44d3-9261-415cc006fe30"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143420Z:05df0aba-e58f-44d3-9261-415cc006fe30"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:34:20 GMT"
+ ],
+ "Content-Length": [
+ "1613"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache\",\r\n \"namespace\": \"Microsoft.StorageCache\",\r\n \"authorizations\": [\r\n {\r\n \"applicationId\": \"4392ab71-2ce2-4b0d-8770-b352745c73f5\",\r\n \"roleDefinitionId\": \"e27430df-bd6b-4f3a-bd6d-d52ad1a7d075\"\r\n }\r\n ],\r\n \"resourceTypes\": [\r\n {\r\n \"resourceType\": \"operations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"South Central US\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ],\r\n \"capabilities\": \"SystemAssignedResourceIdentity\"\r\n },\r\n {\r\n \"resourceType\": \"caches/storageTargets\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"usageModels\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations\",\r\n \"locations\": [],\r\n \"apiVersions\": [\r\n \"2020-03-01\",\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations/ascoperations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n }\r\n ],\r\n \"registrationState\": \"Registered\"\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache?api-version=2016-09-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZUNhY2hlP2FwaS12ZXJzaW9uPTIwMTYtMDktMDE=",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "88a49f42-3793-425f-b9dc-598453ac81c9"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.5"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11999"
+ ],
+ "x-ms-request-id": [
+ "0017280e-d630-4201-a3c1-cbec9af6d95e"
+ ],
+ "x-ms-correlation-request-id": [
+ "0017280e-d630-4201-a3c1-cbec9af6d95e"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143421Z:0017280e-d630-4201-a3c1-cbec9af6d95e"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:34:20 GMT"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ],
+ "Content-Length": [
+ "1613"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache\",\r\n \"namespace\": \"Microsoft.StorageCache\",\r\n \"authorizations\": [\r\n {\r\n \"applicationId\": \"4392ab71-2ce2-4b0d-8770-b352745c73f5\",\r\n \"roleDefinitionId\": \"e27430df-bd6b-4f3a-bd6d-d52ad1a7d075\"\r\n }\r\n ],\r\n \"resourceTypes\": [\r\n {\r\n \"resourceType\": \"operations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"South Central US\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ],\r\n \"capabilities\": \"SystemAssignedResourceIdentity\"\r\n },\r\n {\r\n \"resourceType\": \"caches/storageTargets\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"usageModels\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations\",\r\n \"locations\": [],\r\n \"apiVersions\": [\r\n \"2020-03-01\",\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations/ascoperations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n }\r\n ],\r\n \"registrationState\": \"Registered\"\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/powershell2?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL3Bvd2Vyc2hlbGwyP2FwaS12ZXJzaW9uPTIwMTktMTEtMDE=",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-failure-cause": [
+ "gateway"
+ ],
+ "x-ms-request-id": [
+ "731d6ed7-a5aa-4ce2-b33c-b2c7aa476ab5"
+ ],
+ "x-ms-correlation-request-id": [
+ "731d6ed7-a5aa-4ce2-b33c-b2c7aa476ab5"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143421Z:731d6ed7-a5aa-4ce2-b33c-b2c7aa476ab5"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:34:20 GMT"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ],
+ "Content-Length": [
+ "161"
+ ]
+ },
+ "ResponseBody": "{\r\n \"error\": {\r\n \"code\": \"ResourceNotFound\",\r\n \"message\": \"The Resource 'Microsoft.StorageCache/caches/powershell2' under resource group 'hpc0313x636d2111' was not found.\"\r\n }\r\n}",
+ "StatusCode": 404
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/powershell2?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL3Bvd2Vyc2hlbGwyP2FwaS12ZXJzaW9uPTIwMTktMTEtMDE=",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "bd6d3d45-ce39-4632-9d3b-c0f2b6033947"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11992"
+ ],
+ "x-ms-correlation-request-id": [
+ "afa20ea1-6604-4e7f-a112-f3e71fd96ced"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143424Z:afa20ea1-6604-4e7f-a112-f3e71fd96ced"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:34:23 GMT"
+ ],
+ "Content-Length": [
+ "931"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"powershell2\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/powershell2\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Transitioning\",\r\n \"statusDescription\": \"Deploying Cache resources\"\r\n },\r\n \"provisioningState\": \"Creating\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T14:34:22.2220782Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/powershell2?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL3Bvd2Vyc2hlbGwyP2FwaS12ZXJzaW9uPTIwMTktMTEtMDE=",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "20febf3b-8879-48dc-b9ea-5f439c926244"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11991"
+ ],
+ "x-ms-correlation-request-id": [
+ "ba0a2fb9-7984-467a-bc0d-ba0b6a728091"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143424Z:ba0a2fb9-7984-467a-bc0d-ba0b6a728091"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:34:23 GMT"
+ ],
+ "Content-Length": [
+ "915"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"powershell2\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/powershell2\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Stopping\",\r\n \"statusDescription\": \"Deleting Cache\"\r\n },\r\n \"provisioningState\": \"Deleting\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T14:34:22.2220782Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/powershell2?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL3Bvd2Vyc2hlbGwyP2FwaS12ZXJzaW9uPTIwMTktMTEtMDE=",
+ "RequestMethod": "PUT",
+ "RequestBody": "{\r\n \"location\": \"eastus\",\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\"\r\n },\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n }\r\n}",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Content-Length": [
+ "323"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Azure-AsyncOperation": [
+ "https://management.azure.com/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache/locations/eastus/ascOperations/35583fd6-7bc7-4473-8006-121add89c406?api-version=2019-11-01"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "35583fd6-7bc7-4473-8006-121add89c406"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1198"
+ ],
+ "x-ms-correlation-request-id": [
+ "568271b7-1694-44a9-8d4e-4361f1ff9a73"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143422Z:568271b7-1694-44a9-8d4e-4361f1ff9a73"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:34:21 GMT"
+ ],
+ "Content-Length": [
+ "874"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"powershell2\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/powershell2\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Transitioning\"\r\n },\r\n \"provisioningState\": \"Creating\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T14:34:22.2220782Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 201
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/powershell2?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL3Bvd2Vyc2hlbGwyP2FwaS12ZXJzaW9uPTIwMTktMTEtMDE=",
+ "RequestMethod": "DELETE",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Location": [
+ "https://management.azure.com/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache/locations/eastus/ascOperations/589b727d-4a5b-4771-97aa-73582c295f45?monitor=true&api-version=2019-11-01"
+ ],
+ "Azure-AsyncOperation": [
+ "https://management.azure.com/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache/locations/eastus/ascOperations/589b727d-4a5b-4771-97aa-73582c295f45?api-version=2019-11-01"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "589b727d-4a5b-4771-97aa-73582c295f45"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-deletes": [
+ "14999"
+ ],
+ "x-ms-correlation-request-id": [
+ "0c4be5a7-072a-456b-a446-d4dfb0686492"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143424Z:0c4be5a7-072a-456b-a446-d4dfb0686492"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:34:23 GMT"
+ ],
+ "Expires": [
+ "-1"
+ ],
+ "Content-Length": [
+ "0"
+ ]
+ },
+ "ResponseBody": "",
+ "StatusCode": 202
+ }
+ ],
+ "Names": {},
+ "Variables": {
+ "SubscriptionId": "46841c0e-69c8-4b17-af46-6626ecb15fc2"
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache.Test/SessionRecords/Microsoft.Azure.Commands.HPCCache.Test.ScenarioTests.HpcCacheTest/TestStartStopCache.json b/src/HPCCache/HPCCache.Test/SessionRecords/Microsoft.Azure.Commands.HPCCache.Test.ScenarioTests.HpcCacheTest/TestStartStopCache.json
new file mode 100644
index 000000000000..de05e8e6c5b0
--- /dev/null
+++ b/src/HPCCache/HPCCache.Test/SessionRecords/Microsoft.Azure.Commands.HPCCache.Test.ScenarioTests.HpcCacheTest/TestStartStopCache.json
@@ -0,0 +1,1293 @@
+{
+ "Entries": [
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache/register?api-version=2016-09-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZUNhY2hlL3JlZ2lzdGVyP2FwaS12ZXJzaW9uPTIwMTYtMDktMDE=",
+ "RequestMethod": "POST",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "bf567df3-28e3-4eb3-821f-757517b63e8e"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.5"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1199"
+ ],
+ "x-ms-request-id": [
+ "524a76ac-fd76-47ec-8014-8bd100b3f19f"
+ ],
+ "x-ms-correlation-request-id": [
+ "524a76ac-fd76-47ec-8014-8bd100b3f19f"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143535Z:524a76ac-fd76-47ec-8014-8bd100b3f19f"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:35:34 GMT"
+ ],
+ "Content-Length": [
+ "1613"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache\",\r\n \"namespace\": \"Microsoft.StorageCache\",\r\n \"authorizations\": [\r\n {\r\n \"applicationId\": \"4392ab71-2ce2-4b0d-8770-b352745c73f5\",\r\n \"roleDefinitionId\": \"e27430df-bd6b-4f3a-bd6d-d52ad1a7d075\"\r\n }\r\n ],\r\n \"resourceTypes\": [\r\n {\r\n \"resourceType\": \"operations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"South Central US\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ],\r\n \"capabilities\": \"SystemAssignedResourceIdentity\"\r\n },\r\n {\r\n \"resourceType\": \"caches/storageTargets\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"usageModels\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations\",\r\n \"locations\": [],\r\n \"apiVersions\": [\r\n \"2020-03-01\",\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations/ascoperations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n }\r\n ],\r\n \"registrationState\": \"Registered\"\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache?api-version=2016-09-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZUNhY2hlP2FwaS12ZXJzaW9uPTIwMTYtMDktMDE=",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "63534082-bbcc-438b-8acb-289ab836f44c"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.5"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11999"
+ ],
+ "x-ms-request-id": [
+ "0af5e95b-c9e7-4dac-867d-b8b133885bd7"
+ ],
+ "x-ms-correlation-request-id": [
+ "0af5e95b-c9e7-4dac-867d-b8b133885bd7"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143535Z:0af5e95b-c9e7-4dac-867d-b8b133885bd7"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:35:34 GMT"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ],
+ "Content-Length": [
+ "1613"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache\",\r\n \"namespace\": \"Microsoft.StorageCache\",\r\n \"authorizations\": [\r\n {\r\n \"applicationId\": \"4392ab71-2ce2-4b0d-8770-b352745c73f5\",\r\n \"roleDefinitionId\": \"e27430df-bd6b-4f3a-bd6d-d52ad1a7d075\"\r\n }\r\n ],\r\n \"resourceTypes\": [\r\n {\r\n \"resourceType\": \"operations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"South Central US\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ],\r\n \"capabilities\": \"SystemAssignedResourceIdentity\"\r\n },\r\n {\r\n \"resourceType\": \"caches/storageTargets\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"usageModels\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations\",\r\n \"locations\": [],\r\n \"apiVersions\": [\r\n \"2020-03-01\",\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations/ascoperations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n }\r\n ],\r\n \"registrationState\": \"Registered\"\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/stop?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTEvc3RvcD9hcGktdmVyc2lvbj0yMDE5LTExLTAx",
+ "RequestMethod": "POST",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Location": [
+ "https://management.azure.com/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache/locations/eastus/ascOperations/94dc7ea6-b44d-4497-9462-a3093509b629?monitor=true&api-version=2019-11-01"
+ ],
+ "Azure-AsyncOperation": [
+ "https://management.azure.com/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache/locations/eastus/ascOperations/94dc7ea6-b44d-4497-9462-a3093509b629?api-version=2019-11-01"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "94dc7ea6-b44d-4497-9462-a3093509b629"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1199"
+ ],
+ "x-ms-correlation-request-id": [
+ "40004d2e-eaa3-4926-8868-7352317949a1"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143535Z:40004d2e-eaa3-4926-8868-7352317949a1"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:35:35 GMT"
+ ],
+ "Expires": [
+ "-1"
+ ],
+ "Content-Length": [
+ "0"
+ ]
+ },
+ "ResponseBody": "",
+ "StatusCode": 202
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "5815c139-c7e3-45ec-970a-dc73572c6364"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11999"
+ ],
+ "x-ms-correlation-request-id": [
+ "9d899a76-a0db-4967-ad1b-5929913e26d1"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143636Z:9d899a76-a0db-4967-ad1b-5929913e26d1"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:36:35 GMT"
+ ],
+ "Content-Length": [
+ "1039"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Cache-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Stopping\",\r\n \"statusDescription\": \"The cache is being stopped\"\r\n },\r\n \"mountAddresses\": [\r\n \"10.1.0.7\",\r\n \"10.1.0.8\",\r\n \"10.1.0.9\"\r\n ],\r\n \"provisioningState\": \"Succeeded\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T13:59:52.9034317Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "304c6485-cb57-461b-a64f-1c2735c49af0"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11998"
+ ],
+ "x-ms-correlation-request-id": [
+ "9476e19c-e417-423c-a914-2621190c06f1"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143736Z:9476e19c-e417-423c-a914-2621190c06f1"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:37:35 GMT"
+ ],
+ "Content-Length": [
+ "1039"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Cache-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Stopping\",\r\n \"statusDescription\": \"The cache is being stopped\"\r\n },\r\n \"mountAddresses\": [\r\n \"10.1.0.7\",\r\n \"10.1.0.8\",\r\n \"10.1.0.9\"\r\n ],\r\n \"provisioningState\": \"Succeeded\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T13:59:52.9034317Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "0a1ed63a-aa1f-4d9a-8417-dfebc54cc1a9"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11997"
+ ],
+ "x-ms-correlation-request-id": [
+ "1db5e284-c965-4f78-81e7-4e695ae4d056"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143836Z:1db5e284-c965-4f78-81e7-4e695ae4d056"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:38:35 GMT"
+ ],
+ "Content-Length": [
+ "1039"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Cache-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Stopping\",\r\n \"statusDescription\": \"The cache is being stopped\"\r\n },\r\n \"mountAddresses\": [\r\n \"10.1.0.7\",\r\n \"10.1.0.8\",\r\n \"10.1.0.9\"\r\n ],\r\n \"provisioningState\": \"Succeeded\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T13:59:52.9034317Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "7ea289e5-0bf1-402c-b7ec-d5e0b5bc79ad"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11996"
+ ],
+ "x-ms-correlation-request-id": [
+ "6378805a-e966-4fd5-9431-eadbaad711ed"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T143936Z:6378805a-e966-4fd5-9431-eadbaad711ed"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:39:35 GMT"
+ ],
+ "Content-Length": [
+ "1039"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Cache-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Stopping\",\r\n \"statusDescription\": \"The cache is being stopped\"\r\n },\r\n \"mountAddresses\": [\r\n \"10.1.0.7\",\r\n \"10.1.0.8\",\r\n \"10.1.0.9\"\r\n ],\r\n \"provisioningState\": \"Succeeded\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T13:59:52.9034317Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "7cc0d826-e088-4120-b043-771d1a27afa4"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11995"
+ ],
+ "x-ms-correlation-request-id": [
+ "42bbee3c-89ed-4aaf-bb9f-796363911466"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T144036Z:42bbee3c-89ed-4aaf-bb9f-796363911466"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:40:36 GMT"
+ ],
+ "Content-Length": [
+ "1039"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Cache-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Stopping\",\r\n \"statusDescription\": \"The cache is being stopped\"\r\n },\r\n \"mountAddresses\": [\r\n \"10.1.0.7\",\r\n \"10.1.0.8\",\r\n \"10.1.0.9\"\r\n ],\r\n \"provisioningState\": \"Succeeded\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T13:59:52.9034317Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "409ddbed-6db6-4c7f-888f-dc1008d270be"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11994"
+ ],
+ "x-ms-correlation-request-id": [
+ "120f73ea-c99c-429e-afe2-9eae7fdbcdfa"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T144136Z:120f73ea-c99c-429e-afe2-9eae7fdbcdfa"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:41:35 GMT"
+ ],
+ "Content-Length": [
+ "1039"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Cache-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Stopping\",\r\n \"statusDescription\": \"The cache is being stopped\"\r\n },\r\n \"mountAddresses\": [\r\n \"10.1.0.7\",\r\n \"10.1.0.8\",\r\n \"10.1.0.9\"\r\n ],\r\n \"provisioningState\": \"Succeeded\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T13:59:52.9034317Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "f57ba509-4b86-47bd-8437-a4b236215d77"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11993"
+ ],
+ "x-ms-correlation-request-id": [
+ "c17c2ba1-e431-431a-9124-92ab6168dee5"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T144236Z:c17c2ba1-e431-431a-9124-92ab6168dee5"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:42:36 GMT"
+ ],
+ "Content-Length": [
+ "1039"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Cache-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Stopping\",\r\n \"statusDescription\": \"The cache is being stopped\"\r\n },\r\n \"mountAddresses\": [\r\n \"10.1.0.7\",\r\n \"10.1.0.8\",\r\n \"10.1.0.9\"\r\n ],\r\n \"provisioningState\": \"Succeeded\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T13:59:52.9034317Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "f9f2de74-510b-4cdc-af30-ae082c085842"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11992"
+ ],
+ "x-ms-correlation-request-id": [
+ "9c3cd9ee-4eb2-4cc4-a581-8529b7ebc3b0"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T144336Z:9c3cd9ee-4eb2-4cc4-a581-8529b7ebc3b0"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:43:36 GMT"
+ ],
+ "Content-Length": [
+ "1039"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Cache-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Stopping\",\r\n \"statusDescription\": \"The cache is being stopped\"\r\n },\r\n \"mountAddresses\": [\r\n \"10.1.0.7\",\r\n \"10.1.0.8\",\r\n \"10.1.0.9\"\r\n ],\r\n \"provisioningState\": \"Succeeded\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T13:59:52.9034317Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "9cb03494-7b9a-4b50-b764-13880fabec65"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11991"
+ ],
+ "x-ms-correlation-request-id": [
+ "2f472f79-ff72-476d-b25a-09f37cfe4539"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T144436Z:2f472f79-ff72-476d-b25a-09f37cfe4539"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:44:36 GMT"
+ ],
+ "Content-Length": [
+ "1039"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Cache-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Stopping\",\r\n \"statusDescription\": \"The cache is being stopped\"\r\n },\r\n \"mountAddresses\": [\r\n \"10.1.0.7\",\r\n \"10.1.0.8\",\r\n \"10.1.0.9\"\r\n ],\r\n \"provisioningState\": \"Succeeded\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T13:59:52.9034317Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "fcf623f0-5161-4f63-ac33-40dae89560d9"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11990"
+ ],
+ "x-ms-correlation-request-id": [
+ "0a34f86f-7b09-487a-874c-fc437141e38d"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T144536Z:0a34f86f-7b09-487a-874c-fc437141e38d"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:45:36 GMT"
+ ],
+ "Content-Length": [
+ "1053"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Cache-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Stopped\",\r\n \"statusDescription\": \"The Cache resources have been deallocated\"\r\n },\r\n \"mountAddresses\": [\r\n \"10.1.0.7\",\r\n \"10.1.0.8\",\r\n \"10.1.0.9\"\r\n ],\r\n \"provisioningState\": \"Succeeded\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T13:59:52.9034317Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "bd20d01b-7835-4015-bbdd-cf279ca92ffb"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11989"
+ ],
+ "x-ms-correlation-request-id": [
+ "b9f73611-a83b-47fc-a415-7fccf0eebb1d"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T144637Z:b9f73611-a83b-47fc-a415-7fccf0eebb1d"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:46:36 GMT"
+ ],
+ "Content-Length": [
+ "1047"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Cache-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Transitioning\",\r\n \"statusDescription\": \"The cache is being allocated.\"\r\n },\r\n \"mountAddresses\": [\r\n \"10.1.0.7\",\r\n \"10.1.0.8\",\r\n \"10.1.0.9\"\r\n ],\r\n \"provisioningState\": \"Succeeded\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T13:59:52.9034317Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "5a921944-4e0c-40c0-ac9e-9967746f8cff"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11988"
+ ],
+ "x-ms-correlation-request-id": [
+ "9cead597-09ac-4776-b1a0-36b106be5360"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T144737Z:9cead597-09ac-4776-b1a0-36b106be5360"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:47:36 GMT"
+ ],
+ "Content-Length": [
+ "1047"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Cache-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Transitioning\",\r\n \"statusDescription\": \"The cache is being allocated.\"\r\n },\r\n \"mountAddresses\": [\r\n \"10.1.0.7\",\r\n \"10.1.0.8\",\r\n \"10.1.0.9\"\r\n ],\r\n \"provisioningState\": \"Succeeded\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T13:59:52.9034317Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "406ed688-32ba-414b-88d5-783c5e7880f4"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11987"
+ ],
+ "x-ms-correlation-request-id": [
+ "541d3083-1c2e-42b0-89d0-02ddd8f5f40f"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T144837Z:541d3083-1c2e-42b0-89d0-02ddd8f5f40f"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:48:36 GMT"
+ ],
+ "Content-Length": [
+ "1047"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Cache-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Transitioning\",\r\n \"statusDescription\": \"The cache is being allocated.\"\r\n },\r\n \"mountAddresses\": [\r\n \"10.1.0.7\",\r\n \"10.1.0.8\",\r\n \"10.1.0.9\"\r\n ],\r\n \"provisioningState\": \"Succeeded\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T13:59:52.9034317Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "b9ca2983-2f33-4557-b093-80d1b74368ca"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11986"
+ ],
+ "x-ms-correlation-request-id": [
+ "cca56d91-c86f-49d3-844f-b1ae583c825e"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T144937Z:cca56d91-c86f-49d3-844f-b1ae583c825e"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:49:37 GMT"
+ ],
+ "Content-Length": [
+ "1047"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Cache-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Transitioning\",\r\n \"statusDescription\": \"The cache is being allocated.\"\r\n },\r\n \"mountAddresses\": [\r\n \"10.1.0.7\",\r\n \"10.1.0.8\",\r\n \"10.1.0.9\"\r\n ],\r\n \"provisioningState\": \"Succeeded\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T13:59:52.9034317Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "9f47e78e-f2d0-41f1-a2a7-9d166b39b536"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11985"
+ ],
+ "x-ms-correlation-request-id": [
+ "36647d13-3466-4c47-ad8c-3c0895316460"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T145037Z:36647d13-3466-4c47-ad8c-3c0895316460"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:50:37 GMT"
+ ],
+ "Content-Length": [
+ "1047"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Cache-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Transitioning\",\r\n \"statusDescription\": \"The cache is being allocated.\"\r\n },\r\n \"mountAddresses\": [\r\n \"10.1.0.7\",\r\n \"10.1.0.8\",\r\n \"10.1.0.9\"\r\n ],\r\n \"provisioningState\": \"Succeeded\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T13:59:52.9034317Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "8d017dcd-6aaa-47b2-af17-7a5d9feab12a"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11984"
+ ],
+ "x-ms-correlation-request-id": [
+ "51f2c6d6-2b6a-4399-9947-390b7e5a122f"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T145137Z:51f2c6d6-2b6a-4399-9947-390b7e5a122f"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:51:36 GMT"
+ ],
+ "Content-Length": [
+ "1047"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Cache-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Transitioning\",\r\n \"statusDescription\": \"The cache is being allocated.\"\r\n },\r\n \"mountAddresses\": [\r\n \"10.1.0.7\",\r\n \"10.1.0.8\",\r\n \"10.1.0.9\"\r\n ],\r\n \"provisioningState\": \"Succeeded\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T13:59:52.9034317Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTE/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "03797923-106f-4203-b529-c16e93f948ca"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11983"
+ ],
+ "x-ms-correlation-request-id": [
+ "ccac7c52-3ec3-481b-961c-cf7379b14ae0"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T145237Z:ccac7c52-3ec3-481b-961c-cf7379b14ae0"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:52:37 GMT"
+ ],
+ "Content-Length": [
+ "1041"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"Cache-hpc0313x636d2111\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111\",\r\n \"type\": \"Microsoft.StorageCache/caches\",\r\n \"location\": \"eastus\",\r\n \"sku\": {\r\n \"name\": \"Standard_2G\"\r\n },\r\n \"properties\": {\r\n \"cacheSizeGB\": 3072,\r\n \"health\": {\r\n \"state\": \"Healthy\",\r\n \"statusDescription\": \"The cache is in Running state\"\r\n },\r\n \"mountAddresses\": [\r\n \"10.1.0.7\",\r\n \"10.1.0.8\",\r\n \"10.1.0.9\"\r\n ],\r\n \"provisioningState\": \"Succeeded\",\r\n \"subnet\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.Network/virtualNetworks/VNet-hpc0313x636d2111/subnets/Subnet-hpc0313x636d2111\",\r\n \"upgradeStatus\": {\r\n \"currentFirmwareVersion\": \"5.3.42\",\r\n \"firmwareUpdateStatus\": \"unavailable\",\r\n \"firmwareUpdateDeadline\": \"0001-01-01T00:00:00Z\",\r\n \"lastFirmwareUpdate\": \"2020-03-13T13:59:52.9034317Z\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/start?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTEvc3RhcnQ/YXBpLXZlcnNpb249MjAxOS0xMS0wMQ==",
+ "RequestMethod": "POST",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Location": [
+ "https://management.azure.com/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache/locations/eastus/ascOperations/9682a3cd-1f93-4065-9339-a13e33720317?monitor=true&api-version=2019-11-01"
+ ],
+ "Azure-AsyncOperation": [
+ "https://management.azure.com/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache/locations/eastus/ascOperations/9682a3cd-1f93-4065-9339-a13e33720317?api-version=2019-11-01"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "9682a3cd-1f93-4065-9339-a13e33720317"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1198"
+ ],
+ "x-ms-correlation-request-id": [
+ "b2956db8-c87f-4b29-ae13-096f996074e5"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T144537Z:b2956db8-c87f-4b29-ae13-096f996074e5"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:45:36 GMT"
+ ],
+ "Expires": [
+ "-1"
+ ],
+ "Content-Length": [
+ "0"
+ ]
+ },
+ "ResponseBody": "",
+ "StatusCode": 202
+ }
+ ],
+ "Names": {},
+ "Variables": {
+ "SubscriptionId": "46841c0e-69c8-4b17-af46-6626ecb15fc2"
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache.Test/SessionRecords/StorageAccountFixture/.ctor.json b/src/HPCCache/HPCCache.Test/SessionRecords/StorageAccountFixture/.ctor.json
new file mode 100644
index 000000000000..0e32894caefa
--- /dev/null
+++ b/src/HPCCache/HPCCache.Test/SessionRecords/StorageAccountFixture/.ctor.json
@@ -0,0 +1,1813 @@
+{
+ "Entries": [
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache/register?api-version=2016-09-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZUNhY2hlL3JlZ2lzdGVyP2FwaS12ZXJzaW9uPTIwMTYtMDktMDE=",
+ "RequestMethod": "POST",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "8eb8a100-080c-4ad1-beec-d2f322fef858"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.5"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1199"
+ ],
+ "x-ms-request-id": [
+ "06f40f05-b193-4739-895f-66576c071822"
+ ],
+ "x-ms-correlation-request-id": [
+ "06f40f05-b193-4739-895f-66576c071822"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T141758Z:06f40f05-b193-4739-895f-66576c071822"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:17:57 GMT"
+ ],
+ "Content-Length": [
+ "1613"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache\",\r\n \"namespace\": \"Microsoft.StorageCache\",\r\n \"authorizations\": [\r\n {\r\n \"applicationId\": \"4392ab71-2ce2-4b0d-8770-b352745c73f5\",\r\n \"roleDefinitionId\": \"e27430df-bd6b-4f3a-bd6d-d52ad1a7d075\"\r\n }\r\n ],\r\n \"resourceTypes\": [\r\n {\r\n \"resourceType\": \"operations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"South Central US\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ],\r\n \"capabilities\": \"SystemAssignedResourceIdentity\"\r\n },\r\n {\r\n \"resourceType\": \"caches/storageTargets\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"usageModels\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations\",\r\n \"locations\": [],\r\n \"apiVersions\": [\r\n \"2020-03-01\",\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations/ascoperations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n }\r\n ],\r\n \"registrationState\": \"Registered\"\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache?api-version=2016-09-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZUNhY2hlP2FwaS12ZXJzaW9uPTIwMTYtMDktMDE=",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "0ccffc62-f3e1-4562-93a9-0d67c6d9dbe1"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.5"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11999"
+ ],
+ "x-ms-request-id": [
+ "eca8eec8-e6f0-45fe-a3b3-c668066d1ef9"
+ ],
+ "x-ms-correlation-request-id": [
+ "eca8eec8-e6f0-45fe-a3b3-c668066d1ef9"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T141758Z:eca8eec8-e6f0-45fe-a3b3-c668066d1ef9"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:17:57 GMT"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ],
+ "Content-Length": [
+ "1613"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache\",\r\n \"namespace\": \"Microsoft.StorageCache\",\r\n \"authorizations\": [\r\n {\r\n \"applicationId\": \"4392ab71-2ce2-4b0d-8770-b352745c73f5\",\r\n \"roleDefinitionId\": \"e27430df-bd6b-4f3a-bd6d-d52ad1a7d075\"\r\n }\r\n ],\r\n \"resourceTypes\": [\r\n {\r\n \"resourceType\": \"operations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"South Central US\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"caches\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ],\r\n \"capabilities\": \"SystemAssignedResourceIdentity\"\r\n },\r\n {\r\n \"resourceType\": \"caches/storageTargets\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"usageModels\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations\",\r\n \"locations\": [],\r\n \"apiVersions\": [\r\n \"2020-03-01\",\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n },\r\n {\r\n \"resourceType\": \"locations/ascoperations\",\r\n \"locations\": [\r\n \"West Europe\",\r\n \"North Europe\",\r\n \"East US 2 EUAP\",\r\n \"East US\",\r\n \"Korea Central\",\r\n \"West US 2\",\r\n \"East US 2\",\r\n \"Southeast Asia\",\r\n \"Australia East\"\r\n ],\r\n \"apiVersions\": [\r\n \"2019-11-01\",\r\n \"2019-08-01-preview\"\r\n ]\r\n }\r\n ],\r\n \"registrationState\": \"Registered\"\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/msazure?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTEvc3RvcmFnZVRhcmdldHMvbXNhenVyZT9hcGktdmVyc2lvbj0yMDE5LTExLTAx",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "c8417faa-1a29-42b8-ac00-a48c12c2fd5e"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11999"
+ ],
+ "x-ms-correlation-request-id": [
+ "df85ee63-fdb7-4ad8-901e-a0d4f29dfad3"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T141758Z:df85ee63-fdb7-4ad8-901e-a0d4f29dfad3"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:17:58 GMT"
+ ],
+ "Content-Length": [
+ "115"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"error\": {\r\n \"code\": \"NotFound\",\r\n \"message\": \"The entity was not found in this Azure location.\"\r\n }\r\n}",
+ "StatusCode": 404
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/msazure?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTEvc3RvcmFnZVRhcmdldHMvbXNhenVyZT9hcGktdmVyc2lvbj0yMDE5LTExLTAx",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "65db1121-71c2-4e1e-bd05-fc635ccf3752"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11999"
+ ],
+ "x-ms-correlation-request-id": [
+ "e94dc5d1-191e-4cef-943b-54c4bc78888c"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142325Z:e94dc5d1-191e-4cef-943b-54c4bc78888c"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:23:24 GMT"
+ ],
+ "Content-Length": [
+ "743"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"msazure\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/msazure\",\r\n \"type\": \"Microsoft.StorageCache/caches/storageTargets\",\r\n \"location\": \"eastus\",\r\n \"properties\": {\r\n \"targetType\": \"clfs\",\r\n \"provisioningState\": \"Creating\",\r\n \"junctions\": [\r\n {\r\n \"namespacePath\": \"/junction\",\r\n \"nfsExport\": \"/\",\r\n \"targetPath\": \"/\"\r\n }\r\n ],\r\n \"clfs\": {\r\n \"target\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/msazure?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTEvc3RvcmFnZVRhcmdldHMvbXNhenVyZT9hcGktdmVyc2lvbj0yMDE5LTExLTAx",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "0a8e0705-d06d-4a3e-a5f8-d6253f034044"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11998"
+ ],
+ "x-ms-correlation-request-id": [
+ "f3f983c5-52f5-49f7-8676-f744fce77553"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142425Z:f3f983c5-52f5-49f7-8676-f744fce77553"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:24:25 GMT"
+ ],
+ "Content-Length": [
+ "743"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"msazure\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/msazure\",\r\n \"type\": \"Microsoft.StorageCache/caches/storageTargets\",\r\n \"location\": \"eastus\",\r\n \"properties\": {\r\n \"targetType\": \"clfs\",\r\n \"provisioningState\": \"Creating\",\r\n \"junctions\": [\r\n {\r\n \"namespacePath\": \"/junction\",\r\n \"nfsExport\": \"/\",\r\n \"targetPath\": \"/\"\r\n }\r\n ],\r\n \"clfs\": {\r\n \"target\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/msazure?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTEvc3RvcmFnZVRhcmdldHMvbXNhenVyZT9hcGktdmVyc2lvbj0yMDE5LTExLTAx",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "9a8a08a5-b461-427e-997b-a3ae3deb3bc1"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11997"
+ ],
+ "x-ms-correlation-request-id": [
+ "a08262b6-8c59-4831-8fbd-a12dadc11aa6"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142525Z:a08262b6-8c59-4831-8fbd-a12dadc11aa6"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:25:25 GMT"
+ ],
+ "Content-Length": [
+ "743"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"msazure\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/msazure\",\r\n \"type\": \"Microsoft.StorageCache/caches/storageTargets\",\r\n \"location\": \"eastus\",\r\n \"properties\": {\r\n \"targetType\": \"clfs\",\r\n \"provisioningState\": \"Creating\",\r\n \"junctions\": [\r\n {\r\n \"namespacePath\": \"/junction\",\r\n \"nfsExport\": \"/\",\r\n \"targetPath\": \"/\"\r\n }\r\n ],\r\n \"clfs\": {\r\n \"target\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/msazure?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTEvc3RvcmFnZVRhcmdldHMvbXNhenVyZT9hcGktdmVyc2lvbj0yMDE5LTExLTAx",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "338d5101-a025-44c8-84ad-179851383271"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11996"
+ ],
+ "x-ms-correlation-request-id": [
+ "c8dc9ae9-97b3-4c2e-b55e-fe3515444434"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142625Z:c8dc9ae9-97b3-4c2e-b55e-fe3515444434"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:26:24 GMT"
+ ],
+ "Content-Length": [
+ "743"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"msazure\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/msazure\",\r\n \"type\": \"Microsoft.StorageCache/caches/storageTargets\",\r\n \"location\": \"eastus\",\r\n \"properties\": {\r\n \"targetType\": \"clfs\",\r\n \"provisioningState\": \"Creating\",\r\n \"junctions\": [\r\n {\r\n \"namespacePath\": \"/junction\",\r\n \"nfsExport\": \"/\",\r\n \"targetPath\": \"/\"\r\n }\r\n ],\r\n \"clfs\": {\r\n \"target\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/msazure?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTEvc3RvcmFnZVRhcmdldHMvbXNhenVyZT9hcGktdmVyc2lvbj0yMDE5LTExLTAx",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "941c522b-e19f-4753-b7aa-336001dbb0e1"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11995"
+ ],
+ "x-ms-correlation-request-id": [
+ "b4057f25-64b9-44f2-9b23-e41a748c786d"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142725Z:b4057f25-64b9-44f2-9b23-e41a748c786d"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:27:25 GMT"
+ ],
+ "Content-Length": [
+ "744"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"msazure\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/msazure\",\r\n \"type\": \"Microsoft.StorageCache/caches/storageTargets\",\r\n \"location\": \"eastus\",\r\n \"properties\": {\r\n \"targetType\": \"clfs\",\r\n \"provisioningState\": \"Succeeded\",\r\n \"junctions\": [\r\n {\r\n \"namespacePath\": \"/junction\",\r\n \"nfsExport\": \"/\",\r\n \"targetPath\": \"/\"\r\n }\r\n ],\r\n \"clfs\": {\r\n \"target\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr\"\r\n }\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa?api-version=2019-06-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlR3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlL3N0b3JhZ2VBY2NvdW50cy9jbWRsZXRzYT9hcGktdmVyc2lvbj0yMDE5LTA2LTAx",
+ "RequestMethod": "PUT",
+ "RequestBody": "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\"\r\n },\r\n \"kind\": \"StorageV2\",\r\n \"location\": \"eastus\"\r\n}",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "fa9ac4f1-bd82-4a0d-8621-8a301e026da3"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Storage.StorageManagementClient/13.2.0.0"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Content-Length": [
+ "98"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Location": [
+ "https://management.azure.com/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Storage/locations/eastus/asyncoperations/6624fea5-451d-4db6-84a1-530632618230?monitor=true&api-version=2019-04-01"
+ ],
+ "Retry-After": [
+ "17"
+ ],
+ "x-ms-request-id": [
+ "6624fea5-451d-4db6-84a1-530632618230"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "Server": [
+ "Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1199"
+ ],
+ "x-ms-correlation-request-id": [
+ "a9b3a7ba-e467-46e7-8171-b7e54daeab0f"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T141759Z:a9b3a7ba-e467-46e7-8171-b7e54daeab0f"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:17:59 GMT"
+ ],
+ "Content-Type": [
+ "text/plain; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ],
+ "Content-Length": [
+ "0"
+ ]
+ },
+ "ResponseBody": "",
+ "StatusCode": 202
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Storage/locations/eastus/asyncoperations/6624fea5-451d-4db6-84a1-530632618230?monitor=true&api-version=2019-04-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZS9sb2NhdGlvbnMvZWFzdHVzL2FzeW5jb3BlcmF0aW9ucy82NjI0ZmVhNS00NTFkLTRkYjYtODRhMS01MzA2MzI2MTgyMzA/bW9uaXRvcj10cnVlJmFwaS12ZXJzaW9uPTIwMTktMDQtMDE=",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Storage.StorageManagementClient/13.2.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Location": [
+ "https://management.azure.com/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Storage/locations/eastus/asyncoperations/6624fea5-451d-4db6-84a1-530632618230?monitor=true&api-version=2019-04-01"
+ ],
+ "Retry-After": [
+ "3"
+ ],
+ "x-ms-request-id": [
+ "265ce362-dbe7-4859-afb5-4904ff7b8ce8"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "Server": [
+ "Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11998"
+ ],
+ "x-ms-correlation-request-id": [
+ "fe4da48e-38c4-43e0-971f-e71ae825955d"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T141816Z:fe4da48e-38c4-43e0-971f-e71ae825955d"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:18:16 GMT"
+ ],
+ "Content-Type": [
+ "text/plain; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ],
+ "Content-Length": [
+ "0"
+ ]
+ },
+ "ResponseBody": "",
+ "StatusCode": 202
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Storage/locations/eastus/asyncoperations/6624fea5-451d-4db6-84a1-530632618230?monitor=true&api-version=2019-04-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZS9sb2NhdGlvbnMvZWFzdHVzL2FzeW5jb3BlcmF0aW9ucy82NjI0ZmVhNS00NTFkLTRkYjYtODRhMS01MzA2MzI2MTgyMzA/bW9uaXRvcj10cnVlJmFwaS12ZXJzaW9uPTIwMTktMDQtMDE=",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Storage.StorageManagementClient/13.2.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Location": [
+ "https://management.azure.com/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Storage/locations/eastus/asyncoperations/6624fea5-451d-4db6-84a1-530632618230?monitor=true&api-version=2019-04-01"
+ ],
+ "Retry-After": [
+ "3"
+ ],
+ "x-ms-request-id": [
+ "300660e3-7254-4763-abf1-e285bee2e9d1"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "Server": [
+ "Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11997"
+ ],
+ "x-ms-correlation-request-id": [
+ "c6f8615e-4718-4854-9ea6-8ff83bddcb73"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T141819Z:c6f8615e-4718-4854-9ea6-8ff83bddcb73"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:18:19 GMT"
+ ],
+ "Content-Type": [
+ "text/plain; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ],
+ "Content-Length": [
+ "0"
+ ]
+ },
+ "ResponseBody": "",
+ "StatusCode": 202
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Storage/locations/eastus/asyncoperations/6624fea5-451d-4db6-84a1-530632618230?monitor=true&api-version=2019-04-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZS9sb2NhdGlvbnMvZWFzdHVzL2FzeW5jb3BlcmF0aW9ucy82NjI0ZmVhNS00NTFkLTRkYjYtODRhMS01MzA2MzI2MTgyMzA/bW9uaXRvcj10cnVlJmFwaS12ZXJzaW9uPTIwMTktMDQtMDE=",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Storage.StorageManagementClient/13.2.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-request-id": [
+ "511d564c-d52e-475a-b4a3-3d948fd07f00"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "Server": [
+ "Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11996"
+ ],
+ "x-ms-correlation-request-id": [
+ "99b1c35a-dd93-45ec-b26a-307325a5049f"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T141822Z:99b1c35a-dd93-45ec-b26a-307325a5049f"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:18:22 GMT"
+ ],
+ "Content-Length": [
+ "1132"
+ ],
+ "Content-Type": [
+ "application/json"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"tier\": \"Standard\"\r\n },\r\n \"kind\": \"StorageV2\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa\",\r\n \"name\": \"cmdletsa\",\r\n \"type\": \"Microsoft.Storage/storageAccounts\",\r\n \"location\": \"eastus\",\r\n \"tags\": {},\r\n \"properties\": {\r\n \"networkAcls\": {\r\n \"bypass\": \"AzureServices\",\r\n \"virtualNetworkRules\": [],\r\n \"ipRules\": [],\r\n \"defaultAction\": \"Allow\"\r\n },\r\n \"supportsHttpsTrafficOnly\": true,\r\n \"encryption\": {\r\n \"services\": {\r\n \"file\": {\r\n \"enabled\": true,\r\n \"lastEnabledTime\": \"2020-03-13T14:17:59.0324555Z\"\r\n },\r\n \"blob\": {\r\n \"enabled\": true,\r\n \"lastEnabledTime\": \"2020-03-13T14:17:59.0324555Z\"\r\n }\r\n },\r\n \"keySource\": \"Microsoft.Storage\"\r\n },\r\n \"accessTier\": \"Hot\",\r\n \"provisioningState\": \"Succeeded\",\r\n \"creationTime\": \"2020-03-13T14:17:58.9542784Z\",\r\n \"primaryEndpoints\": {\r\n \"dfs\": \"https://cmdletsa.dfs.core.windows.net/\",\r\n \"web\": \"https://cmdletsa.z13.web.core.windows.net/\",\r\n \"blob\": \"https://cmdletsa.blob.core.windows.net/\",\r\n \"queue\": \"https://cmdletsa.queue.core.windows.net/\",\r\n \"table\": \"https://cmdletsa.table.core.windows.net/\",\r\n \"file\": \"https://cmdletsa.file.core.windows.net/\"\r\n },\r\n \"primaryLocation\": \"eastus\",\r\n \"statusOfPrimary\": \"available\"\r\n }\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "//subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/providers/Microsoft.Authorization/roleDefinitions?api-version=2018-01-01-preview",
+ "EncodedRequestUri": "Ly9zdWJzY3JpcHRpb25zLzQ2ODQxYzBlLTY5YzgtNGIxNy1hZjQ2LTY2MjZlY2IxNWZjMi9yZXNvdXJjZUdyb3Vwcy9ocGMwMzEzeDYzNmQyMTExL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZS9zdG9yYWdlQWNjb3VudHMvY21kbGV0c2EvcHJvdmlkZXJzL01pY3Jvc29mdC5BdXRob3JpemF0aW9uL3JvbGVEZWZpbml0aW9ucz9hcGktdmVyc2lvbj0yMDE4LTAxLTAxLXByZXZpZXc=",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "70b960fd-9991-4dfa-a0de-f613e583ad92"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Authorization.AuthorizationManagementClient/2.11.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-request-id": [
+ "4fe56164-f0a0-41d2-b5d8-95c06d639731"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "Set-Cookie": [
+ "x-ms-gateway-slice=Production; path=/; SameSite=None; secure; HttpOnly"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11999"
+ ],
+ "x-ms-correlation-request-id": [
+ "2d7300a6-1e5d-474f-8a08-8f523b5a3bfa"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T141823Z:2d7300a6-1e5d-474f-8a08-8f523b5a3bfa"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:18:22 GMT"
+ ],
+ "Content-Length": [
+ "188350"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"value\": [\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Avere Cluster Create\",\r\n \"type\": \"CustomRole\",\r\n \"description\": \"Avere cluster create role used by the Avere controller to create a vFXT cluster.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Authorization/roleAssignments/*\",\r\n \"Microsoft.Authorization/roleDefinitions/*\",\r\n \"Microsoft.Compute/*/read\",\r\n \"Microsoft.Compute/availabilitySets/*\",\r\n \"Microsoft.Compute/virtualMachines/*\",\r\n \"Microsoft.Network/*/read\",\r\n \"Microsoft.Network/networkInterfaces/*\",\r\n \"Microsoft.Network/virtualNetworks/subnets/join/action\",\r\n \"Microsoft.Network/virtualNetworks/subnets/read\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/resources/read\",\r\n \"Microsoft.Storage/*/read\",\r\n \"Microsoft.Storage/storageAccounts/listKeys/action\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-11-29T18:46:55.0492387Z\",\r\n \"updatedOn\": \"2018-11-29T18:46:55.0492387Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/a7b1b19a-0e83-4fe5-935c-faaefbfd18c3\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"a7b1b19a-0e83-4fe5-935c-faaefbfd18c3\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Avere Cluster Runtime Operator\",\r\n \"type\": \"CustomRole\",\r\n \"description\": \"Avere cluster runtime role used by Avere clusters running in subscriptions, for the purpose of failing over IP addresses, accessing BLOB storage, etc\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Compute/virtualMachines/read\",\r\n \"Microsoft.Network/networkInterfaces/read\",\r\n \"Microsoft.Network/networkInterfaces/write\",\r\n \"Microsoft.Network/virtualNetworks/subnets/read\",\r\n \"Microsoft.Network/virtualNetworks/subnets/join/action\",\r\n \"Microsoft.Network/networkSecurityGroups/join/action\",\r\n \"Microsoft.Network/routeTables/read\",\r\n \"Microsoft.Network/routeTables/routes/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/delete\",\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/read\",\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/write\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/blobs/delete\",\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read\",\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-08-26T00:41:26.2170858Z\",\r\n \"updatedOn\": \"2018-08-26T00:41:26.2170858Z\",\r\n \"createdBy\": \"dda50086-5e3d-4a4b-b8bc-f54771104d89\",\r\n \"updatedBy\": \"dda50086-5e3d-4a4b-b8bc-f54771104d89\"\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/e078ab98-ef3a-4c9a-aba7-12f5172b45d0\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"e078ab98-ef3a-4c9a-aba7-12f5172b45d0\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Azure Service Deploy Release Management Contributor\",\r\n \"type\": \"CustomRole\",\r\n \"description\": \"Contributor role for services deploying through Azure Service Deploy.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"*\"\r\n ],\r\n \"notActions\": [\r\n \"Microsoft.Authorization/*/Delete\",\r\n \"Microsoft.Authorization/*/Write\"\r\n ],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2016-02-04T02:26:31.5413362Z\",\r\n \"updatedOn\": \"2018-01-08T20:20:16.3660174Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/21d96096-b162-414a-8302-d8354f9d91b2\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"21d96096-b162-414a-8302-d8354f9d91b2\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"CAL-Custom-Role\",\r\n \"type\": \"CustomRole\",\r\n \"description\": \"Lets SAP Cloud Appliance Library application manage Network and Compute services, manage Resource Groups and Management locks.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/locks/*\",\r\n \"Microsoft.Authorization/roleDefinitions/*\",\r\n \"Microsoft.Authorization/roleAssignments/*\",\r\n \"Microsoft.Compute/*\",\r\n \"Microsoft.Network/*\",\r\n \"Microsoft.Resources/*\",\r\n \"Microsoft.Storage/*\",\r\n \"Microsoft.ContainerService/*\",\r\n \"Microsoft.ContainerRegistry/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-05-14T19:30:51.0664585Z\",\r\n \"updatedOn\": \"2019-02-19T19:11:57.5963229Z\",\r\n \"createdBy\": \"dda50086-5e3d-4a4b-b8bc-f54771104d89\",\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/7b266cd7-0bba-4ae2-8423-90ede5e1e898\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"7b266cd7-0bba-4ae2-8423-90ede5e1e898\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Dsms Role (deprecated)\",\r\n \"type\": \"CustomRole\",\r\n \"description\": \"Custom role used by Dsms to perform operations. Can list and regnerate storage account keys.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.ClassicStorage/storageAccounts/listKeys/action\",\r\n \"Microsoft.ClassicStorage/storageAccounts/regenerateKey/action\",\r\n \"Microsoft.Storage/storageAccounts/listkeys/action\",\r\n \"Microsoft.Storage/storageAccounts/regeneratekey/action\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2017-05-17T18:02:11.1225951Z\",\r\n \"updatedOn\": \"2018-01-13T00:21:52.7211696Z\",\r\n \"createdBy\": \"ca5f3715-e7dd-427b-b2db-45b6a4a2df87\",\r\n \"updatedBy\": \"ca5f3715-e7dd-427b-b2db-45b6a4a2df87\"\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/b91f4c0b-46e3-47bb-a242-eecfe23b3b5b\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"b91f4c0b-46e3-47bb-a242-eecfe23b3b5b\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Dsms Role (do not use)\",\r\n \"type\": \"CustomRole\",\r\n \"description\": \"Custom role used by Dsms to perform operations. Can list and regnerate storage account keys.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.ClassicStorage/storageAccounts/listKeys/action\",\r\n \"Microsoft.ClassicStorage/storageAccounts/regenerateKey/action\",\r\n \"Microsoft.Storage/storageAccounts/listkeys/action\",\r\n \"Microsoft.Storage/storageAccounts/regeneratekey/action\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-02-01T07:56:12.5880222Z\",\r\n \"updatedOn\": \"2018-08-09T17:53:48.5432297Z\",\r\n \"createdBy\": \"becb4b6b-fe16-413b-a5c3-90355e0b2982\",\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/7aff565e-6c55-448d-83db-ccf482c6da2f\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"7aff565e-6c55-448d-83db-ccf482c6da2f\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"ExpressRoute Administrator\",\r\n \"type\": \"CustomRole\",\r\n \"description\": \"Can create, delete and manage ExpressRoutes\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/locks/*\",\r\n \"Microsoft.Authorization/policyAssignments/*\",\r\n \"Microsoft.Authorization/policyDefinitions/*\",\r\n \"Microsoft.Authorization/roleAssignments/*\",\r\n \"Microsoft.ClassicNetwork/*\",\r\n \"Microsoft.EventGrid/*\",\r\n \"Microsoft.Insights/*\",\r\n \"Microsoft.Network/*\",\r\n \"Microsoft.Resources/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-08-31T03:51:32.2843055Z\",\r\n \"updatedOn\": \"2019-03-20T22:55:18.8222085Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/a48d7896-14b4-4889-afef-fbb65a96e5a2\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"a48d7896-14b4-4889-afef-fbb65a96e5a2\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"GenevaWarmPathResourceContributor\",\r\n \"type\": \"CustomRole\",\r\n \"description\": \"Can manage service bus and storage accounts.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.EventHub/namespaces/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/*\",\r\n \"Microsoft.ServiceBus/namespaces/*\",\r\n \"Microsoft.Storage/storageAccounts/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2017-03-14T22:30:10.1999436Z\",\r\n \"updatedOn\": \"2017-03-14T22:30:10.1999436Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/9f15f5f5-77bd-413a-aa88-4b9c68b1e7bc\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"9f15f5f5-77bd-413a-aa88-4b9c68b1e7bc\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"masterreader\",\r\n \"type\": \"CustomRole\",\r\n \"description\": \"Lets you view everything, but not make any changes.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"*/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2017-11-14T23:38:05.3353858Z\",\r\n \"updatedOn\": \"2017-11-14T23:38:05.3353858Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/a48d7796-14b4-4889-afef-fbb65a93e5a2\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"a48d7796-14b4-4889-afef-fbb65a93e5a2\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Microsoft OneAsset Reader\",\r\n \"type\": \"CustomRole\",\r\n \"description\": \"This role is for Microsoft OneAsset team (CSEO) to track internal security compliance and resource utilization.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Compute/virtualMachines/*/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-03-27T23:51:08.6333052Z\",\r\n \"updatedOn\": \"2019-04-02T20:35:43.3396263Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/fd1bb084-1503-4bd2-99c0-630220046786\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"fd1bb084-1503-4bd2-99c0-630220046786\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Office DevOps\",\r\n \"type\": \"CustomRole\",\r\n \"description\": \"Custom access for developers to operations but not secrets.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Compute/virtualMachineScaleSets/restart/action\",\r\n \"Microsoft.Compute/virtualMachineScaleSets/virtualMachines/restart/action\",\r\n \"Microsoft.Sql/servers/databases/replicationLinks/delete\",\r\n \"Microsoft.Sql/servers/databases/replicationLinks/failover/action\",\r\n \"Microsoft.Sql/servers/databases/replicationLinks/forceFailoverAllowDataLoss/action\",\r\n \"Microsoft.Sql/servers/databases/replicationLinks/operationResults/read\",\r\n \"Microsoft.Sql/servers/databases/replicationLinks/read\",\r\n \"Microsoft.Sql/servers/databases/replicationLinks/unlink/action\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2016-10-07T08:11:46.1639398Z\",\r\n \"updatedOn\": \"2017-03-16T18:43:08.3234306Z\",\r\n \"createdBy\": \"25aea6be-b605-4347-a92d-33e178e412ec\",\r\n \"updatedBy\": \"25aea6be-b605-4347-a92d-33e178e412ec\"\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/7fd64851-3279-459b-b614-e2b2ba760f5b\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"7fd64851-3279-459b-b614-e2b2ba760f5b\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"AZSC 1st Party Testmirror\",\r\n \"type\": \"CustomRole\",\r\n \"description\": \"Describes first-party access for AZSC in test.\",\r\n \"assignableScopes\": [\r\n \"/subscriptions/e85a6c81-7b89-42c5-8d87-aca71e5113cc\",\r\n \"/subscriptions/8c39d797-d54a-4a41-9ade-2eea7c88f549\",\r\n \"/subscriptions/863c722a-2299-40dc-a2b0-f4717918a6f4\",\r\n \"/subscriptions/6d777ac4-9ba5-42c4-9306-d12ea818d8ff\",\r\n \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Network/loadBalancers/read\",\r\n \"Microsoft.Network/locations/operationresults/read\",\r\n \"Microsoft.Network/networkInterfaces/write\",\r\n \"Microsoft.Network/networkInterfaces/read\",\r\n \"Microsoft.Network/networkInterfaces/delete\",\r\n \"Microsoft.Network/networkInterfaces/join/action\",\r\n \"Microsoft.Network/virtualNetworks/checkIpAddressAvailability/read\",\r\n \"Microsoft.Network/virtualNetworks/read\",\r\n \"Microsoft.Network/virtualNetworks/subnets/read\",\r\n \"Microsoft.Network/virtualNetworks/subnets/join/action\",\r\n \"Microsoft.Network/applicationSecurityGroups/joinIpConfiguration/action\",\r\n \"Microsoft.Network/loadBalancers/inboundNatRules/read\",\r\n \"Microsoft.Network/loadBalancers/loadBalancingRules/read\",\r\n \"Microsoft.Network/loadBalancers/probes/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-06-21T14:30:02.8871253Z\",\r\n \"updatedOn\": \"2019-12-09T17:05:28.2812863Z\",\r\n \"createdBy\": \"7dcef84f-48d0-499f-906d-fd2d4aaccc93\",\r\n \"updatedBy\": \"7dcef84f-48d0-499f-906d-fd2d4aaccc93\"\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/cd9f9694-5029-4901-9a51-4034e7b028ad\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"cd9f9694-5029-4901-9a51-4034e7b028ad\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"HPC Cache Custom Role\",\r\n \"type\": \"CustomRole\",\r\n \"description\": \"Can do anything related for HPC Cache.\",\r\n \"assignableScopes\": [\r\n \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Network/virtualNetworks/subnets/join/action\",\r\n \"Microsoft.Network/virtualNetworks/subnets/joinViaServiceEndpoint/action\",\r\n \"Microsoft.StorageCache/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-08-08T14:57:37.8556312Z\",\r\n \"updatedOn\": \"2019-10-24T13:16:30.0803339Z\",\r\n \"createdBy\": \"229a89cf-9159-4acc-97fd-825e2aeb4da9\",\r\n \"updatedBy\": \"229a89cf-9159-4acc-97fd-825e2aeb4da9\"\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/058f1de6-f9d3-402b-9f02-81a67a53b7e6\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"058f1de6-f9d3-402b-9f02-81a67a53b7e6\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"058f1de6-f9d3-402b-9f02-81a67a53b7e6\",\r\n \"type\": \"CustomRole\",\r\n \"description\": \"Can do anything related for HPC Cache.\",\r\n \"assignableScopes\": [\r\n \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Network/virtualNetworks/subnets/join/action\",\r\n \"Microsoft.Network/virtualNetworks/subnets/joinViaServiceEndpoint/action\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-08-08T15:05:23.4396127Z\",\r\n \"updatedOn\": \"2019-08-08T15:05:23.4396127Z\",\r\n \"createdBy\": \"229a89cf-9159-4acc-97fd-825e2aeb4da9\",\r\n \"updatedBy\": \"229a89cf-9159-4acc-97fd-825e2aeb4da9\"\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/a4956a2d-82a6-4352-b901-bb53e14f1490\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"a4956a2d-82a6-4352-b901-bb53e14f1490\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"GenevaWarmPathStorageBlobContributor\",\r\n \"type\": \"CustomRole\",\r\n \"description\": \"Geneva Warm Path Storage Blob Contributor\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/delete\",\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/lease/action\",\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/read\",\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/write\",\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/immutabilityPolicies/lock/action\",\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/immutabilityPolicies/read\",\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/immutabilityPolicies/write\",\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/immutabilityPolicies/extend/action\",\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/immutabilityPolicies/delete\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-12-06T22:46:27.136563Z\",\r\n \"updatedOn\": \"2019-12-06T22:46:27.136563Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/a16c43ca-2d67-4dcd-9ded-6412f5edc51a\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"a16c43ca-2d67-4dcd-9ded-6412f5edc51a\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"AcrPush\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"acr push\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.ContainerRegistry/registries/pull/read\",\r\n \"Microsoft.ContainerRegistry/registries/push/write\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-10-29T17:52:32.5201177Z\",\r\n \"updatedOn\": \"2018-11-13T23:26:19.9749249Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/8311e382-0749-4cb8-b61a-304f252e45ec\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"8311e382-0749-4cb8-b61a-304f252e45ec\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"API Management Service Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Can manage service and the APIs\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.ApiManagement/service/*\",\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-02-02T21:55:09.8650193Z\",\r\n \"updatedOn\": \"2019-02-05T21:24:17.7502607Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/312a565d-c81f-4fd8-895a-4e21e48d571c\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"312a565d-c81f-4fd8-895a-4e21e48d571c\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"AcrPull\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"acr pull\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.ContainerRegistry/registries/pull/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-10-22T19:01:56.8227182Z\",\r\n \"updatedOn\": \"2018-11-13T23:22:03.2302457Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/7f951dda-4ed3-4680-a7ca-43fe172d538d\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"7f951dda-4ed3-4680-a7ca-43fe172d538d\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"AcrImageSigner\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"acr image signer\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.ContainerRegistry/registries/sign/write\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-03-15T23:23:08.4038322Z\",\r\n \"updatedOn\": \"2018-10-29T19:06:24.9004422Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/6cef56e8-d556-48e5-a04f-b8e64114680f\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"6cef56e8-d556-48e5-a04f-b8e64114680f\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"AcrDelete\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"acr delete\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.ContainerRegistry/registries/artifacts/delete\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-03-11T20:19:31.6682804Z\",\r\n \"updatedOn\": \"2019-03-11T20:24:38.9845104Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"c2f4ef07-c644-48eb-af81-4b1b4947fb11\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"AcrQuarantineReader\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"acr quarantine data reader\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.ContainerRegistry/registries/quarantine/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-03-16T00:27:39.9596835Z\",\r\n \"updatedOn\": \"2019-10-22T00:12:39.702093Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/cdda3590-29a3-44f6-95f2-9f980659eb04\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"cdda3590-29a3-44f6-95f2-9f980659eb04\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"AcrQuarantineWriter\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"acr quarantine data writer\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.ContainerRegistry/registries/quarantine/read\",\r\n \"Microsoft.ContainerRegistry/registries/quarantine/write\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-03-16T00:26:37.587182Z\",\r\n \"updatedOn\": \"2019-10-22T00:10:29.8202164Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/c8d4ff99-41c3-41a8-9f60-21dfdad59608\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"c8d4ff99-41c3-41a8-9f60-21dfdad59608\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"API Management Service Operator Role\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Can manage service but not the APIs\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.ApiManagement/service/*/read\",\r\n \"Microsoft.ApiManagement/service/backup/action\",\r\n \"Microsoft.ApiManagement/service/delete\",\r\n \"Microsoft.ApiManagement/service/managedeployments/action\",\r\n \"Microsoft.ApiManagement/service/read\",\r\n \"Microsoft.ApiManagement/service/restore/action\",\r\n \"Microsoft.ApiManagement/service/updatecertificate/action\",\r\n \"Microsoft.ApiManagement/service/updatehostname/action\",\r\n \"Microsoft.ApiManagement/service/write\",\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [\r\n \"Microsoft.ApiManagement/service/users/keys/read\"\r\n ],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2016-11-09T00:03:42.1194019Z\",\r\n \"updatedOn\": \"2016-11-18T23:56:25.4682649Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/e022efe7-f5ba-4159-bbe4-b44f577e9b61\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"e022efe7-f5ba-4159-bbe4-b44f577e9b61\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"API Management Service Reader Role\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Read-only access to service and APIs\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.ApiManagement/service/*/read\",\r\n \"Microsoft.ApiManagement/service/read\",\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [\r\n \"Microsoft.ApiManagement/service/users/keys/read\"\r\n ],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2016-11-09T00:26:45.1540473Z\",\r\n \"updatedOn\": \"2017-01-23T23:10:34.8876776Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/71522526-b88f-4d52-b57f-d31fc3546d0d\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"71522526-b88f-4d52-b57f-d31fc3546d0d\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Application Insights Component Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Can manage Application Insights components\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Insights/metricAlerts/*\",\r\n \"Microsoft.Insights/components/*\",\r\n \"Microsoft.Insights/webtests/*\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-02-02T21:55:09.8806423Z\",\r\n \"updatedOn\": \"2020-02-12T12:45:46.9200472Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/ae349356-3a1b-4a5e-921d-050484c6347e\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"ae349356-3a1b-4a5e-921d-050484c6347e\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Application Insights Snapshot Debugger\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Gives user permission to use Application Insights Snapshot Debugger features\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Insights/components/*/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2017-04-19T21:25:12.3728747Z\",\r\n \"updatedOn\": \"2017-04-19T23:34:59.9511581Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/08954f03-6346-4c2e-81c0-ec3a5cfae23b\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"08954f03-6346-4c2e-81c0-ec3a5cfae23b\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Attestation Reader\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Can read the attestation provider properties\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Attestation/attestationProviders/attestation/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-03-25T19:42:59.157671Z\",\r\n \"updatedOn\": \"2019-05-10T17:52:38.9036953Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": \"SYSTEM\"\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/fd1bd22b-8476-40bc-a0bc-69b95687b9f3\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"fd1bd22b-8476-40bc-a0bc-69b95687b9f3\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Automation Job Operator\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Create and Manage Jobs using Automation Runbooks.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Automation/automationAccounts/hybridRunbookWorkerGroups/read\",\r\n \"Microsoft.Automation/automationAccounts/jobs/read\",\r\n \"Microsoft.Automation/automationAccounts/jobs/resume/action\",\r\n \"Microsoft.Automation/automationAccounts/jobs/stop/action\",\r\n \"Microsoft.Automation/automationAccounts/jobs/streams/read\",\r\n \"Microsoft.Automation/automationAccounts/jobs/suspend/action\",\r\n \"Microsoft.Automation/automationAccounts/jobs/write\",\r\n \"Microsoft.Automation/automationAccounts/jobs/output/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2017-04-19T20:52:41.0020018Z\",\r\n \"updatedOn\": \"2018-08-14T22:08:48.1147327Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/4fe576fe-1146-4730-92eb-48519fa6bf9f\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"4fe576fe-1146-4730-92eb-48519fa6bf9f\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Automation Runbook Operator\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Read Runbook properties - to be able to create Jobs of the runbook.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Automation/automationAccounts/runbooks/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2017-04-19T20:47:49.5640674Z\",\r\n \"updatedOn\": \"2017-04-25T01:00:45.6444999Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/5fb5aef8-1081-4b8e-bb16-9d5d0385bab5\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"5fb5aef8-1081-4b8e-bb16-9d5d0385bab5\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Automation Operator\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Automation Operators are able to start, stop, suspend, and resume jobs\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Automation/automationAccounts/hybridRunbookWorkerGroups/read\",\r\n \"Microsoft.Automation/automationAccounts/jobs/read\",\r\n \"Microsoft.Automation/automationAccounts/jobs/resume/action\",\r\n \"Microsoft.Automation/automationAccounts/jobs/stop/action\",\r\n \"Microsoft.Automation/automationAccounts/jobs/streams/read\",\r\n \"Microsoft.Automation/automationAccounts/jobs/suspend/action\",\r\n \"Microsoft.Automation/automationAccounts/jobs/write\",\r\n \"Microsoft.Automation/automationAccounts/jobSchedules/read\",\r\n \"Microsoft.Automation/automationAccounts/jobSchedules/write\",\r\n \"Microsoft.Automation/automationAccounts/linkedWorkspace/read\",\r\n \"Microsoft.Automation/automationAccounts/read\",\r\n \"Microsoft.Automation/automationAccounts/runbooks/read\",\r\n \"Microsoft.Automation/automationAccounts/schedules/read\",\r\n \"Microsoft.Automation/automationAccounts/schedules/write\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Automation/automationAccounts/jobs/output/read\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-08-18T01:05:03.391613Z\",\r\n \"updatedOn\": \"2018-05-10T20:12:39.69782Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/d3881f73-407a-4167-8283-e981cbba0404\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"d3881f73-407a-4167-8283-e981cbba0404\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Avere Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Can create and manage an Avere vFXT cluster.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Compute/*/read\",\r\n \"Microsoft.Compute/availabilitySets/*\",\r\n \"Microsoft.Compute/virtualMachines/*\",\r\n \"Microsoft.Compute/disks/*\",\r\n \"Microsoft.Network/*/read\",\r\n \"Microsoft.Network/networkInterfaces/*\",\r\n \"Microsoft.Network/virtualNetworks/read\",\r\n \"Microsoft.Network/virtualNetworks/subnets/read\",\r\n \"Microsoft.Network/virtualNetworks/subnets/join/action\",\r\n \"Microsoft.Network/virtualNetworks/subnets/joinViaServiceEndpoint/action\",\r\n \"Microsoft.Network/networkSecurityGroups/join/action\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Storage/*/read\",\r\n \"Microsoft.Storage/storageAccounts/*\",\r\n \"Microsoft.Support/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/resources/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/blobs/delete\",\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read\",\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-03-18T20:00:58.9207889Z\",\r\n \"updatedOn\": \"2019-03-29T00:35:59.8924565Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/4f8fab4f-1852-4a58-a46a-8eaf358af14a\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"4f8fab4f-1852-4a58-a46a-8eaf358af14a\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Avere Operator\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Used by the Avere vFXT cluster to manage the cluster\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Compute/virtualMachines/read\",\r\n \"Microsoft.Network/networkInterfaces/read\",\r\n \"Microsoft.Network/networkInterfaces/write\",\r\n \"Microsoft.Network/virtualNetworks/read\",\r\n \"Microsoft.Network/virtualNetworks/subnets/read\",\r\n \"Microsoft.Network/virtualNetworks/subnets/join/action\",\r\n \"Microsoft.Network/networkSecurityGroups/join/action\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/delete\",\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/read\",\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/write\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/blobs/delete\",\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read\",\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-03-18T20:02:38.3399857Z\",\r\n \"updatedOn\": \"2019-03-29T00:26:37.9205875Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/c025889f-8102-4ebf-b32c-fc0c6f0c6bd9\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"c025889f-8102-4ebf-b32c-fc0c6f0c6bd9\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Azure Kubernetes Service Cluster Admin Role\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"List cluster admin credential action.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.ContainerService/managedClusters/listClusterAdminCredential/action\",\r\n \"Microsoft.ContainerService/managedClusters/accessProfiles/listCredential/action\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-08-15T21:38:18.5953853Z\",\r\n \"updatedOn\": \"2020-02-07T02:49:24.9715273Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/0ab0b1a8-8aac-4efd-b8c2-3ee1fb270be8\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"0ab0b1a8-8aac-4efd-b8c2-3ee1fb270be8\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Azure Kubernetes Service Cluster User Role\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"List cluster user credential action.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.ContainerService/managedClusters/listClusterUserCredential/action\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-08-15T22:04:53.4037241Z\",\r\n \"updatedOn\": \"2020-02-11T23:37:03.589924Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/4abbcc35-e782-43d8-92c5-2d3f1bd2253f\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"4abbcc35-e782-43d8-92c5-2d3f1bd2253f\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Azure Maps Data Reader (Preview)\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Grants access to read map related data from an Azure maps account.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.Maps/accounts/data/read\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-10-05T19:47:03.472307Z\",\r\n \"updatedOn\": \"2018-10-05T19:48:52.8066321Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/423170ca-a8f6-4b0f-8487-9e4eb8f49bfa\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"423170ca-a8f6-4b0f-8487-9e4eb8f49bfa\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Azure Stack Registration Owner\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage Azure Stack registrations.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.AzureStack/registrations/products/*/action\",\r\n \"Microsoft.AzureStack/registrations/products/read\",\r\n \"Microsoft.AzureStack/registrations/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2017-11-13T23:42:06.2161827Z\",\r\n \"updatedOn\": \"2019-08-01T18:44:52.5331479Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/6f12a6df-dd06-4f3e-bcb1-ce8be600526a\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"6f12a6df-dd06-4f3e-bcb1-ce8be600526a\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Backup Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage backup service,but can't create vaults and give access to others\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Network/virtualNetworks/read\",\r\n \"Microsoft.RecoveryServices/locations/*\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/operationResults/*\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/*\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/refreshContainers/action\",\r\n \"Microsoft.RecoveryServices/Vaults/backupJobs/*\",\r\n \"Microsoft.RecoveryServices/Vaults/backupJobsExport/action\",\r\n \"Microsoft.RecoveryServices/Vaults/backupOperationResults/*\",\r\n \"Microsoft.RecoveryServices/Vaults/backupPolicies/*\",\r\n \"Microsoft.RecoveryServices/Vaults/backupProtectableItems/*\",\r\n \"Microsoft.RecoveryServices/Vaults/backupProtectedItems/*\",\r\n \"Microsoft.RecoveryServices/Vaults/backupProtectionContainers/*\",\r\n \"Microsoft.RecoveryServices/Vaults/backupSecurityPIN/*\",\r\n \"Microsoft.RecoveryServices/Vaults/backupUsageSummaries/read\",\r\n \"Microsoft.RecoveryServices/Vaults/certificates/*\",\r\n \"Microsoft.RecoveryServices/Vaults/extendedInformation/*\",\r\n \"Microsoft.RecoveryServices/Vaults/monitoringAlerts/read\",\r\n \"Microsoft.RecoveryServices/Vaults/monitoringConfigurations/*\",\r\n \"Microsoft.RecoveryServices/Vaults/read\",\r\n \"Microsoft.RecoveryServices/Vaults/registeredIdentities/*\",\r\n \"Microsoft.RecoveryServices/Vaults/usages/*\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Storage/storageAccounts/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupstorageconfig/*\",\r\n \"Microsoft.RecoveryServices/Vaults/backupconfig/*\",\r\n \"Microsoft.RecoveryServices/Vaults/backupValidateOperation/action\",\r\n \"Microsoft.RecoveryServices/Vaults/write\",\r\n \"Microsoft.RecoveryServices/Vaults/backupOperations/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupEngines/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/backupProtectionIntent/*\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/protectableContainers/read\",\r\n \"Microsoft.RecoveryServices/locations/backupStatus/action\",\r\n \"Microsoft.RecoveryServices/locations/backupPreValidateProtection/action\",\r\n \"Microsoft.RecoveryServices/locations/backupValidateFeatures/action\",\r\n \"Microsoft.RecoveryServices/Vaults/monitoringAlerts/write\",\r\n \"Microsoft.RecoveryServices/operations/read\",\r\n \"Microsoft.RecoveryServices/locations/operationStatus/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupProtectionIntents/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2017-01-03T13:12:15.7321344Z\",\r\n \"updatedOn\": \"2019-12-17T10:44:35.8361149Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/5e467623-bb1f-42f4-a55d-6e525e11384b\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"5e467623-bb1f-42f4-a55d-6e525e11384b\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Billing Reader\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Allows read access to billing data\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Billing/*/read\",\r\n \"Microsoft.Commerce/*/read\",\r\n \"Microsoft.Consumption/*/read\",\r\n \"Microsoft.Management/managementGroups/read\",\r\n \"Microsoft.CostManagement/*/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2017-04-25T02:13:38.9054151Z\",\r\n \"updatedOn\": \"2018-09-26T17:45:09.2227236Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/fa23ad8b-c56e-40d8-ac0c-ce449e1d2c64\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"fa23ad8b-c56e-40d8-ac0c-ce449e1d2c64\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Backup Operator\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage backup services, except removal of backup, vault creation and giving access to others\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Network/virtualNetworks/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/operationResults/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/operationResults/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/backup/action\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/operationResults/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/operationsStatus/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/provisionInstantItemRecovery/action\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/restore/action\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/revokeInstantItemRecovery/action\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/write\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/refreshContainers/action\",\r\n \"Microsoft.RecoveryServices/Vaults/backupJobs/*\",\r\n \"Microsoft.RecoveryServices/Vaults/backupJobsExport/action\",\r\n \"Microsoft.RecoveryServices/Vaults/backupOperationResults/*\",\r\n \"Microsoft.RecoveryServices/Vaults/backupPolicies/operationResults/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupPolicies/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupProtectableItems/*\",\r\n \"Microsoft.RecoveryServices/Vaults/backupProtectedItems/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupProtectionContainers/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupUsageSummaries/read\",\r\n \"Microsoft.RecoveryServices/Vaults/certificates/write\",\r\n \"Microsoft.RecoveryServices/Vaults/extendedInformation/read\",\r\n \"Microsoft.RecoveryServices/Vaults/extendedInformation/write\",\r\n \"Microsoft.RecoveryServices/Vaults/monitoringAlerts/read\",\r\n \"Microsoft.RecoveryServices/Vaults/monitoringConfigurations/*\",\r\n \"Microsoft.RecoveryServices/Vaults/read\",\r\n \"Microsoft.RecoveryServices/Vaults/registeredIdentities/operationResults/read\",\r\n \"Microsoft.RecoveryServices/Vaults/registeredIdentities/read\",\r\n \"Microsoft.RecoveryServices/Vaults/registeredIdentities/write\",\r\n \"Microsoft.RecoveryServices/Vaults/usages/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Storage/storageAccounts/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupstorageconfig/*\",\r\n \"Microsoft.RecoveryServices/Vaults/backupValidateOperation/action\",\r\n \"Microsoft.RecoveryServices/Vaults/backupOperations/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupPolicies/operations/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/write\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/inquire/action\",\r\n \"Microsoft.RecoveryServices/Vaults/backupEngines/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/backupProtectionIntent/write\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/backupProtectionIntent/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/protectableContainers/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/items/read\",\r\n \"Microsoft.RecoveryServices/locations/backupStatus/action\",\r\n \"Microsoft.RecoveryServices/locations/backupPreValidateProtection/action\",\r\n \"Microsoft.RecoveryServices/locations/backupValidateFeatures/action\",\r\n \"Microsoft.RecoveryServices/Vaults/monitoringAlerts/write\",\r\n \"Microsoft.RecoveryServices/operations/read\",\r\n \"Microsoft.RecoveryServices/locations/operationStatus/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupProtectionIntents/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2017-01-03T13:21:11.894764Z\",\r\n \"updatedOn\": \"2019-12-17T11:02:43.9998686Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/00c29273-979b-4161-815c-10b084fb9324\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"00c29273-979b-4161-815c-10b084fb9324\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Backup Reader\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Can view backup services, but can't make changes\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.RecoveryServices/locations/allocatedStamp/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/operationResults/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/operationResults/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/operationResults/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/operationsStatus/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupJobs/operationResults/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupJobs/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupJobsExport/action\",\r\n \"Microsoft.RecoveryServices/Vaults/backupOperationResults/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupPolicies/operationResults/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupPolicies/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupProtectedItems/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupProtectionContainers/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupUsageSummaries/read\",\r\n \"Microsoft.RecoveryServices/Vaults/extendedInformation/read\",\r\n \"Microsoft.RecoveryServices/Vaults/monitoringAlerts/read\",\r\n \"Microsoft.RecoveryServices/Vaults/read\",\r\n \"Microsoft.RecoveryServices/Vaults/registeredIdentities/operationResults/read\",\r\n \"Microsoft.RecoveryServices/Vaults/registeredIdentities/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupstorageconfig/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupconfig/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupOperations/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupPolicies/operations/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupEngines/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/backupProtectionIntent/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/items/read\",\r\n \"Microsoft.RecoveryServices/locations/backupStatus/action\",\r\n \"Microsoft.RecoveryServices/Vaults/monitoringConfigurations/*\",\r\n \"Microsoft.RecoveryServices/Vaults/monitoringAlerts/write\",\r\n \"Microsoft.RecoveryServices/operations/read\",\r\n \"Microsoft.RecoveryServices/locations/operationStatus/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupProtectionIntents/read\",\r\n \"Microsoft.RecoveryServices/Vaults/usages/read\",\r\n \"Microsoft.RecoveryServices/locations/backupValidateFeatures/action\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2017-01-03T13:18:41.3893065Z\",\r\n \"updatedOn\": \"2020-03-04T12:12:04.321311Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/a795c7a0-d4a2-40c1-ae25-d81f01202912\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"a795c7a0-d4a2-40c1-ae25-d81f01202912\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Blockchain Member Node Access (Preview)\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Allows for access to Blockchain Member nodes\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Blockchain/blockchainMembers/transactionNodes/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.Blockchain/blockchainMembers/transactionNodes/connect/action\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-12-21T10:33:01.9604839Z\",\r\n \"updatedOn\": \"2018-12-21T10:33:58.0042162Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/31a002a1-acaf-453e-8a5b-297c9ca1ea24\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"31a002a1-acaf-453e-8a5b-297c9ca1ea24\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"BizTalk Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage BizTalk services, but not access to them.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.BizTalkServices/BizTalk/*\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-02-02T21:55:09.8806423Z\",\r\n \"updatedOn\": \"2019-02-05T20:42:18.897821Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/5e3c6656-6cfa-4708-81fe-0de47ac73342\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"5e3c6656-6cfa-4708-81fe-0de47ac73342\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"CDN Endpoint Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Can manage CDN endpoints, but can’t grant access to other users.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Cdn/edgenodes/read\",\r\n \"Microsoft.Cdn/operationresults/*\",\r\n \"Microsoft.Cdn/profiles/endpoints/*\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2016-01-23T02:48:46.4996252Z\",\r\n \"updatedOn\": \"2016-05-31T23:13:52.6231539Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/426e0c7f-0c7e-4658-b36f-ff54d6c29b45\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"426e0c7f-0c7e-4658-b36f-ff54d6c29b45\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"CDN Endpoint Reader\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Can view CDN endpoints, but can’t make changes.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Cdn/edgenodes/read\",\r\n \"Microsoft.Cdn/operationresults/*\",\r\n \"Microsoft.Cdn/profiles/endpoints/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2016-01-23T02:48:46.4996252Z\",\r\n \"updatedOn\": \"2016-05-31T23:13:53.1585846Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/871e35f6-b5c1-49cc-a043-bde969a0f2cd\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"871e35f6-b5c1-49cc-a043-bde969a0f2cd\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"CDN Profile Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Can manage CDN profiles and their endpoints, but can’t grant access to other users.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Cdn/edgenodes/read\",\r\n \"Microsoft.Cdn/operationresults/*\",\r\n \"Microsoft.Cdn/profiles/*\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2016-01-23T02:48:46.4996252Z\",\r\n \"updatedOn\": \"2016-05-31T23:13:53.7051278Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/ec156ff8-a8d1-4d15-830c-5b80698ca432\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"ec156ff8-a8d1-4d15-830c-5b80698ca432\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"CDN Profile Reader\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Can view CDN profiles and their endpoints, but can’t make changes.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Cdn/edgenodes/read\",\r\n \"Microsoft.Cdn/operationresults/*\",\r\n \"Microsoft.Cdn/profiles/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2016-01-23T02:48:46.4996252Z\",\r\n \"updatedOn\": \"2016-05-31T23:13:54.2283001Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/8f96442b-4075-438f-813d-ad51ab4019af\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"8f96442b-4075-438f-813d-ad51ab4019af\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Classic Network Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage classic networks, but not access to them.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.ClassicNetwork/*\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-02-02T21:55:09.8806423Z\",\r\n \"updatedOn\": \"2019-02-05T21:24:39.7576926Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/b34d265f-36f7-4a0d-a4d4-e158ca92e90f\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"b34d265f-36f7-4a0d-a4d4-e158ca92e90f\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Classic Storage Account Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage classic storage accounts, but not access to them.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.ClassicStorage/storageAccounts/*\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-02-02T21:55:09.8806423Z\",\r\n \"updatedOn\": \"2019-02-05T21:24:30.8964641Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/86e8f5dc-a6e9-4c67-9d15-de283e8eac25\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"86e8f5dc-a6e9-4c67-9d15-de283e8eac25\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Classic Storage Account Key Operator Service Role\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Classic Storage Account Key Operators are allowed to list and regenerate keys on Classic Storage Accounts\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.ClassicStorage/storageAccounts/listkeys/action\",\r\n \"Microsoft.ClassicStorage/storageAccounts/regeneratekey/action\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2017-04-13T18:22:52.14611Z\",\r\n \"updatedOn\": \"2017-04-13T20:54:03.0505986Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/985d6b00-f706-48f5-a6fe-d0ca12fb668d\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"985d6b00-f706-48f5-a6fe-d0ca12fb668d\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"ClearDB MySQL DB Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage ClearDB MySQL databases, but not access to them.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\",\r\n \"successbricks.cleardb/databases/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-02-02T21:55:09.8806423Z\",\r\n \"updatedOn\": \"2019-02-05T20:42:23.2893077Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/9106cda0-8a86-4e81-b686-29a22c54effe\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"9106cda0-8a86-4e81-b686-29a22c54effe\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Classic Virtual Machine Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage classic virtual machines, but not access to them, and not the virtual network or storage account they’re connected to.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.ClassicCompute/domainNames/*\",\r\n \"Microsoft.ClassicCompute/virtualMachines/*\",\r\n \"Microsoft.ClassicNetwork/networkSecurityGroups/join/action\",\r\n \"Microsoft.ClassicNetwork/reservedIps/link/action\",\r\n \"Microsoft.ClassicNetwork/reservedIps/read\",\r\n \"Microsoft.ClassicNetwork/virtualNetworks/join/action\",\r\n \"Microsoft.ClassicNetwork/virtualNetworks/read\",\r\n \"Microsoft.ClassicStorage/storageAccounts/disks/read\",\r\n \"Microsoft.ClassicStorage/storageAccounts/images/read\",\r\n \"Microsoft.ClassicStorage/storageAccounts/listKeys/action\",\r\n \"Microsoft.ClassicStorage/storageAccounts/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-04-25T00:37:56.5416086Z\",\r\n \"updatedOn\": \"2019-02-05T21:24:43.0770473Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/d73bb868-a0df-4d4d-bd69-98a00b01fccb\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"d73bb868-a0df-4d4d-bd69-98a00b01fccb\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Cognitive Services User\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you read and list keys of Cognitive Services.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.CognitiveServices/*/read\",\r\n \"Microsoft.CognitiveServices/accounts/listkeys/action\",\r\n \"Microsoft.Insights/alertRules/read\",\r\n \"Microsoft.Insights/diagnosticSettings/read\",\r\n \"Microsoft.Insights/logDefinitions/read\",\r\n \"Microsoft.Insights/metricdefinitions/read\",\r\n \"Microsoft.Insights/metrics/read\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/operations/read\",\r\n \"Microsoft.Resources/subscriptions/operationresults/read\",\r\n \"Microsoft.Resources/subscriptions/read\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.CognitiveServices/*\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-08-08T23:23:43.7701274Z\",\r\n \"updatedOn\": \"2019-02-13T19:53:56.7209248Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/a97b65f3-24c7-4388-baec-2e87135dc908\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"a97b65f3-24c7-4388-baec-2e87135dc908\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Cognitive Services Data Reader (Preview)\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you read Cognitive Services data.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.CognitiveServices/*/read\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-02-13T20:02:12.6849986Z\",\r\n \"updatedOn\": \"2019-02-13T22:53:55.167529Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/b59867f0-fa02-499b-be73-45a86b5b3e1c\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"b59867f0-fa02-499b-be73-45a86b5b3e1c\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Cognitive Services Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you create, read, update, delete and manage keys of Cognitive Services.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.CognitiveServices/*\",\r\n \"Microsoft.Features/features/read\",\r\n \"Microsoft.Features/providers/features/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Insights/diagnosticSettings/*\",\r\n \"Microsoft.Insights/logDefinitions/read\",\r\n \"Microsoft.Insights/metricdefinitions/read\",\r\n \"Microsoft.Insights/metrics/read\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/deployments/operations/read\",\r\n \"Microsoft.Resources/subscriptions/operationresults/read\",\r\n \"Microsoft.Resources/subscriptions/read\",\r\n \"Microsoft.Resources/subscriptions/resourcegroups/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-08-08T23:18:39.2257848Z\",\r\n \"updatedOn\": \"2018-09-14T00:53:37.7546808Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/25fbc0a9-bd7c-42a3-aa1a-3b75d497ee68\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"25fbc0a9-bd7c-42a3-aa1a-3b75d497ee68\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"CosmosBackupOperator\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Can submit restore request for a Cosmos DB database or a container for an account\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.DocumentDB/databaseAccounts/backup/action\",\r\n \"Microsoft.DocumentDB/databaseAccounts/restore/action\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-12-07T19:47:14.965156Z\",\r\n \"updatedOn\": \"2018-12-07T19:52:21.9969834Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/db7b14f2-5adf-42da-9f96-f2ee17bab5cb\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"db7b14f2-5adf-42da-9f96-f2ee17bab5cb\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage everything except access to resources.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"*\"\r\n ],\r\n \"notActions\": [\r\n \"Microsoft.Authorization/*/Delete\",\r\n \"Microsoft.Authorization/*/Write\",\r\n \"Microsoft.Authorization/elevateAccess/Action\",\r\n \"Microsoft.Blueprint/blueprintAssignments/write\",\r\n \"Microsoft.Blueprint/blueprintAssignments/delete\"\r\n ],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-02-02T21:55:09.8806423Z\",\r\n \"updatedOn\": \"2019-02-05T21:24:38.458061Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/b24988ac-6180-42a0-ab88-20f7382dd24c\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"b24988ac-6180-42a0-ab88-20f7382dd24c\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Cosmos DB Account Reader Role\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Can read Azure Cosmos DB Accounts data\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.DocumentDB/*/read\",\r\n \"Microsoft.DocumentDB/databaseAccounts/readonlykeys/action\",\r\n \"Microsoft.Insights/MetricDefinitions/read\",\r\n \"Microsoft.Insights/Metrics/read\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2017-10-30T17:53:54.6005577Z\",\r\n \"updatedOn\": \"2018-02-21T01:36:59.6186231Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/fbdf93bf-df7d-467e-a4d2-9458aa1360c8\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"fbdf93bf-df7d-467e-a4d2-9458aa1360c8\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Cost Management Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Can view costs and manage cost configuration (e.g. budgets, exports)\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Consumption/*\",\r\n \"Microsoft.CostManagement/*\",\r\n \"Microsoft.Billing/billingPeriods/read\",\r\n \"Microsoft.Resources/subscriptions/read\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\",\r\n \"Microsoft.Advisor/configurations/read\",\r\n \"Microsoft.Advisor/recommendations/read\",\r\n \"Microsoft.Management/managementGroups/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-03-14T16:09:22.8834827Z\",\r\n \"updatedOn\": \"2019-06-25T21:25:06.8686379Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/434105ed-43f6-45c7-a02f-909b2ba83430\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"434105ed-43f6-45c7-a02f-909b2ba83430\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Cost Management Reader\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Can view cost data and configuration (e.g. budgets, exports)\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Consumption/*/read\",\r\n \"Microsoft.CostManagement/*/read\",\r\n \"Microsoft.Billing/billingPeriods/read\",\r\n \"Microsoft.Resources/subscriptions/read\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\",\r\n \"Microsoft.Advisor/configurations/read\",\r\n \"Microsoft.Advisor/recommendations/read\",\r\n \"Microsoft.Management/managementGroups/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-03-14T16:09:22.8834827Z\",\r\n \"updatedOn\": \"2019-06-25T20:59:11.5762937Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/72fafb9e-0641-4937-9268-a91bfd8191a3\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"72fafb9e-0641-4937-9268-a91bfd8191a3\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Data Box Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage everything under Data Box Service except giving access to others.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\",\r\n \"Microsoft.Databox/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-07-27T08:28:42.714021Z\",\r\n \"updatedOn\": \"2018-07-27T08:36:56.3827309Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/add466c9-e687-43fc-8d98-dfcf8d720be5\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"add466c9-e687-43fc-8d98-dfcf8d720be5\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Data Box Reader\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage Data Box Service except creating order or editing order details and giving access to others.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Databox/*/read\",\r\n \"Microsoft.Databox/jobs/listsecrets/action\",\r\n \"Microsoft.Databox/jobs/listcredentials/action\",\r\n \"Microsoft.Databox/locations/availableSkus/action\",\r\n \"Microsoft.Databox/locations/validateInputs/action\",\r\n \"Microsoft.Databox/locations/regionConfiguration/action\",\r\n \"Microsoft.Databox/locations/validateAddress/action\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-07-27T08:26:21.9284772Z\",\r\n \"updatedOn\": \"2020-01-24T05:39:52.6143537Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/028f4ed7-e2a9-465e-a8f4-9c0ffdfdc027\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"028f4ed7-e2a9-465e-a8f4-9c0ffdfdc027\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Data Factory Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Create and manage data factories, as well as child resources within them.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.DataFactory/dataFactories/*\",\r\n \"Microsoft.DataFactory/factories/*\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\",\r\n \"Microsoft.EventGrid/eventSubscriptions/write\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-02-02T21:55:09.8806423Z\",\r\n \"updatedOn\": \"2020-02-14T19:49:21.5789216Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/673868aa-7521-48a0-acc6-0f60742d39f5\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"673868aa-7521-48a0-acc6-0f60742d39f5\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Data Purger\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Can purge analytics data\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Insights/components/*/read\",\r\n \"Microsoft.Insights/components/purge/action\",\r\n \"Microsoft.OperationalInsights/workspaces/*/read\",\r\n \"Microsoft.OperationalInsights/workspaces/purge/action\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-04-30T22:39:49.61677Z\",\r\n \"updatedOn\": \"2018-04-30T22:44:15.1171162Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/150f5e0c-0603-4f03-8c7f-cf70034c4e90\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"150f5e0c-0603-4f03-8c7f-cf70034c4e90\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Data Lake Analytics Developer\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you submit, monitor, and manage your own jobs but not create or delete Data Lake Analytics accounts.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.BigAnalytics/accounts/*\",\r\n \"Microsoft.DataLakeAnalytics/accounts/*\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [\r\n \"Microsoft.BigAnalytics/accounts/Delete\",\r\n \"Microsoft.BigAnalytics/accounts/TakeOwnership/action\",\r\n \"Microsoft.BigAnalytics/accounts/Write\",\r\n \"Microsoft.DataLakeAnalytics/accounts/Delete\",\r\n \"Microsoft.DataLakeAnalytics/accounts/TakeOwnership/action\",\r\n \"Microsoft.DataLakeAnalytics/accounts/Write\",\r\n \"Microsoft.DataLakeAnalytics/accounts/dataLakeStoreAccounts/Write\",\r\n \"Microsoft.DataLakeAnalytics/accounts/dataLakeStoreAccounts/Delete\",\r\n \"Microsoft.DataLakeAnalytics/accounts/storageAccounts/Write\",\r\n \"Microsoft.DataLakeAnalytics/accounts/storageAccounts/Delete\",\r\n \"Microsoft.DataLakeAnalytics/accounts/firewallRules/Write\",\r\n \"Microsoft.DataLakeAnalytics/accounts/firewallRules/Delete\",\r\n \"Microsoft.DataLakeAnalytics/accounts/computePolicies/Write\",\r\n \"Microsoft.DataLakeAnalytics/accounts/computePolicies/Delete\"\r\n ],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-10-20T00:33:29.3115234Z\",\r\n \"updatedOn\": \"2017-08-18T00:00:17.0411642Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/47b7735b-770e-4598-a7da-8b91488b4c88\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"47b7735b-770e-4598-a7da-8b91488b4c88\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"DevTest Labs User\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you connect, start, restart, and shutdown your virtual machines in your Azure DevTest Labs.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Compute/availabilitySets/read\",\r\n \"Microsoft.Compute/virtualMachines/*/read\",\r\n \"Microsoft.Compute/virtualMachines/deallocate/action\",\r\n \"Microsoft.Compute/virtualMachines/read\",\r\n \"Microsoft.Compute/virtualMachines/restart/action\",\r\n \"Microsoft.Compute/virtualMachines/start/action\",\r\n \"Microsoft.DevTestLab/*/read\",\r\n \"Microsoft.DevTestLab/labs/claimAnyVm/action\",\r\n \"Microsoft.DevTestLab/labs/createEnvironment/action\",\r\n \"Microsoft.DevTestLab/labs/ensureCurrentUserProfile/action\",\r\n \"Microsoft.DevTestLab/labs/formulas/delete\",\r\n \"Microsoft.DevTestLab/labs/formulas/read\",\r\n \"Microsoft.DevTestLab/labs/formulas/write\",\r\n \"Microsoft.DevTestLab/labs/policySets/evaluatePolicies/action\",\r\n \"Microsoft.DevTestLab/labs/virtualMachines/claim/action\",\r\n \"Microsoft.DevTestLab/labs/virtualmachines/listApplicableSchedules/action\",\r\n \"Microsoft.DevTestLab/labs/virtualMachines/getRdpFileContents/action\",\r\n \"Microsoft.Network/loadBalancers/backendAddressPools/join/action\",\r\n \"Microsoft.Network/loadBalancers/inboundNatRules/join/action\",\r\n \"Microsoft.Network/networkInterfaces/*/read\",\r\n \"Microsoft.Network/networkInterfaces/join/action\",\r\n \"Microsoft.Network/networkInterfaces/read\",\r\n \"Microsoft.Network/networkInterfaces/write\",\r\n \"Microsoft.Network/publicIPAddresses/*/read\",\r\n \"Microsoft.Network/publicIPAddresses/join/action\",\r\n \"Microsoft.Network/publicIPAddresses/read\",\r\n \"Microsoft.Network/virtualNetworks/subnets/join/action\",\r\n \"Microsoft.Resources/deployments/operations/read\",\r\n \"Microsoft.Resources/deployments/read\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Storage/storageAccounts/listKeys/action\"\r\n ],\r\n \"notActions\": [\r\n \"Microsoft.Compute/virtualMachines/vmSizes/read\"\r\n ],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-06-08T21:52:45.0657582Z\",\r\n \"updatedOn\": \"2019-05-08T11:27:34.8855476Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/76283e04-6283-4c54-8f91-bcf1374a3c64\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"76283e04-6283-4c54-8f91-bcf1374a3c64\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"DocumentDB Account Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage DocumentDB accounts, but not access to them.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.DocumentDb/databaseAccounts/*\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\",\r\n \"Microsoft.Network/virtualNetworks/subnets/joinViaServiceEndpoint/action\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-02-02T21:55:09.8806423Z\",\r\n \"updatedOn\": \"2019-11-21T01:38:32.0948484Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/5bd9cd88-fe45-4216-938b-f97437e15450\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"5bd9cd88-fe45-4216-938b-f97437e15450\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"DNS Zone Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage DNS zones and record sets in Azure DNS, but does not let you control who has access to them.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Network/dnsZones/*\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-10-15T23:33:25.9730842Z\",\r\n \"updatedOn\": \"2016-05-31T23:13:40.3710365Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/befefa01-2a29-4197-83a8-272ff33ce314\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"befefa01-2a29-4197-83a8-272ff33ce314\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"EventGrid EventSubscription Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage EventGrid event subscription operations.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.EventGrid/eventSubscriptions/*\",\r\n \"Microsoft.EventGrid/topicTypes/eventSubscriptions/read\",\r\n \"Microsoft.EventGrid/locations/eventSubscriptions/read\",\r\n \"Microsoft.EventGrid/locations/topicTypes/eventSubscriptions/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-10-08T23:27:28.3130743Z\",\r\n \"updatedOn\": \"2019-01-08T00:06:34.3543171Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/428e0ff0-5e57-4d9c-a221-2c70d0e0a443\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"428e0ff0-5e57-4d9c-a221-2c70d0e0a443\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"EventGrid EventSubscription Reader\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you read EventGrid event subscriptions.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.EventGrid/eventSubscriptions/read\",\r\n \"Microsoft.EventGrid/topicTypes/eventSubscriptions/read\",\r\n \"Microsoft.EventGrid/locations/eventSubscriptions/read\",\r\n \"Microsoft.EventGrid/locations/topicTypes/eventSubscriptions/read\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-10-09T17:29:28.1417894Z\",\r\n \"updatedOn\": \"2019-01-08T00:05:40.2884365Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/2414bbcf-6497-4faf-8c65-045460748405\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"2414bbcf-6497-4faf-8c65-045460748405\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Graph Owner\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Create and manage all aspects of the Enterprise Graph - Ontology, Schema mapping, Conflation and Conversational AI and Ingestions\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.EnterpriseKnowledgeGraph/services/conflation/read\",\r\n \"Microsoft.EnterpriseKnowledgeGraph/services/conflation/write\",\r\n \"Microsoft.EnterpriseKnowledgeGraph/services/sourceschema/read\",\r\n \"Microsoft.EnterpriseKnowledgeGraph/services/sourceschema/write\",\r\n \"Microsoft.EnterpriseKnowledgeGraph/services/knowledge/read\",\r\n \"Microsoft.EnterpriseKnowledgeGraph/services/knowledge/write\",\r\n \"Microsoft.EnterpriseKnowledgeGraph/services/intentclassification/read\",\r\n \"Microsoft.EnterpriseKnowledgeGraph/services/intentclassification/write\",\r\n \"Microsoft.EnterpriseKnowledgeGraph/services/ingestion/read\",\r\n \"Microsoft.EnterpriseKnowledgeGraph/services/ingestion/write\",\r\n \"Microsoft.EnterpriseKnowledgeGraph/services/ontology/read\",\r\n \"Microsoft.EnterpriseKnowledgeGraph/services/ontology/write\",\r\n \"Microsoft.EnterpriseKnowledgeGraph/services/delete\",\r\n \"Microsoft.EnterpriseKnowledgeGraph/operations/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-02-23T21:07:22.5844236Z\",\r\n \"updatedOn\": \"2019-02-28T20:21:18.9318073Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/b60367af-1334-4454-b71e-769d9a4f83d9\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"b60367af-1334-4454-b71e-769d9a4f83d9\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"HDInsight Domain Services Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Can Read, Create, Modify and Delete Domain Services related operations needed for HDInsight Enterprise Security Package\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.AAD/*/read\",\r\n \"Microsoft.AAD/domainServices/*/read\",\r\n \"Microsoft.AAD/domainServices/oucontainer/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-09-12T22:42:51.7451109Z\",\r\n \"updatedOn\": \"2018-09-12T23:06:45.7641599Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/8d8d5a11-05d3-4bda-a417-a08778121c7c\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"8d8d5a11-05d3-4bda-a417-a08778121c7c\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Intelligent Systems Account Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage Intelligent Systems accounts, but not access to them.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.IntelligentSystems/accounts/*\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-02-02T21:55:09.8806423Z\",\r\n \"updatedOn\": \"2019-02-05T20:32:00.9996357Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/03a6d094-3444-4b3d-88af-7477090a9e5e\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"03a6d094-3444-4b3d-88af-7477090a9e5e\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Key Vault Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage key vaults, but not access to them.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.KeyVault/*\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [\r\n \"Microsoft.KeyVault/locations/deletedVaults/purge/action\",\r\n \"Microsoft.KeyVault/hsmPools/*\"\r\n ],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2016-02-25T17:08:28.5184971Z\",\r\n \"updatedOn\": \"2019-02-05T21:24:49.5373075Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/f25e0fa2-a7c8-4377-a976-54943a77a395\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"f25e0fa2-a7c8-4377-a976-54943a77a395\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Knowledge Consumer\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Knowledge Read permission to consume Enterprise Graph Knowledge using entity search and graph query\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.EnterpriseKnowledgeGraph/services/knowledge/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-02-23T21:23:31.4037552Z\",\r\n \"updatedOn\": \"2019-02-28T20:25:00.7369384Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/ee361c5d-f7b5-4119-b4b6-892157c8f64c\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"ee361c5d-f7b5-4119-b4b6-892157c8f64c\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Lab Creator\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you create, manage, delete your managed labs under your Azure Lab Accounts.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.LabServices/labAccounts/*/read\",\r\n \"Microsoft.LabServices/labAccounts/createLab/action\",\r\n \"Microsoft.LabServices/labAccounts/sizes/getRegionalAvailability/action\",\r\n \"Microsoft.LabServices/labAccounts/getRegionalAvailability/action\",\r\n \"Microsoft.LabServices/labAccounts/getPricingAndAvailability/action\",\r\n \"Microsoft.LabServices/labAccounts/getRestrictionsAndUsage/action\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-01-18T23:38:58.1036141Z\",\r\n \"updatedOn\": \"2020-02-12T23:54:21.0840302Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/b97fb8bc-a8b2-4522-a38b-dd33c7e65ead\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"b97fb8bc-a8b2-4522-a38b-dd33c7e65ead\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Log Analytics Reader\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Log Analytics Reader can view and search all monitoring data as well as and view monitoring settings, including viewing the configuration of Azure diagnostics on all Azure resources.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"*/read\",\r\n \"Microsoft.OperationalInsights/workspaces/analytics/query/action\",\r\n \"Microsoft.OperationalInsights/workspaces/search/action\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [\r\n \"Microsoft.OperationalInsights/workspaces/sharedKeys/read\"\r\n ],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2017-05-02T00:20:28.1449012Z\",\r\n \"updatedOn\": \"2018-01-30T18:08:26.0438523Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/73c42c96-874c-492b-b04d-ab87d138a893\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"73c42c96-874c-492b-b04d-ab87d138a893\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Log Analytics Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Log Analytics Contributor can read all monitoring data and edit monitoring settings. Editing monitoring settings includes adding the VM extension to VMs; reading storage account keys to be able to configure collection of logs from Azure Storage; creating and configuring Automation accounts; adding solutions; and configuring Azure diagnostics on all Azure resources.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"*/read\",\r\n \"Microsoft.Automation/automationAccounts/*\",\r\n \"Microsoft.ClassicCompute/virtualMachines/extensions/*\",\r\n \"Microsoft.ClassicStorage/storageAccounts/listKeys/action\",\r\n \"Microsoft.Compute/virtualMachines/extensions/*\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Insights/diagnosticSettings/*\",\r\n \"Microsoft.OperationalInsights/*\",\r\n \"Microsoft.OperationsManagement/*\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourcegroups/deployments/*\",\r\n \"Microsoft.Storage/storageAccounts/listKeys/action\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2017-04-25T21:51:45.3174711Z\",\r\n \"updatedOn\": \"2018-01-30T18:08:26.6376126Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/92aaf0da-9dab-42b6-94a3-d43ce8d16293\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"92aaf0da-9dab-42b6-94a3-d43ce8d16293\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Logic App Operator\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you read, enable and disable logic app.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*/read\",\r\n \"Microsoft.Insights/metricAlerts/*/read\",\r\n \"Microsoft.Insights/diagnosticSettings/*/read\",\r\n \"Microsoft.Insights/metricDefinitions/*/read\",\r\n \"Microsoft.Logic/*/read\",\r\n \"Microsoft.Logic/workflows/disable/action\",\r\n \"Microsoft.Logic/workflows/enable/action\",\r\n \"Microsoft.Logic/workflows/validate/action\",\r\n \"Microsoft.Resources/deployments/operations/read\",\r\n \"Microsoft.Resources/subscriptions/operationresults/read\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\",\r\n \"Microsoft.Web/connectionGateways/*/read\",\r\n \"Microsoft.Web/connections/*/read\",\r\n \"Microsoft.Web/customApis/*/read\",\r\n \"Microsoft.Web/serverFarms/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2016-04-28T21:33:30.4656007Z\",\r\n \"updatedOn\": \"2019-10-15T04:28:56.3265986Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/515c2055-d9d4-4321-b1b9-bd0c9a0f79fe\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"515c2055-d9d4-4321-b1b9-bd0c9a0f79fe\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Logic App Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage logic app, but not access to them.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.ClassicStorage/storageAccounts/listKeys/action\",\r\n \"Microsoft.ClassicStorage/storageAccounts/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Insights/metricAlerts/*\",\r\n \"Microsoft.Insights/diagnosticSettings/*\",\r\n \"Microsoft.Insights/logdefinitions/*\",\r\n \"Microsoft.Insights/metricDefinitions/*\",\r\n \"Microsoft.Logic/*\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/operationresults/read\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Storage/storageAccounts/listkeys/action\",\r\n \"Microsoft.Storage/storageAccounts/read\",\r\n \"Microsoft.Support/*\",\r\n \"Microsoft.Web/connectionGateways/*\",\r\n \"Microsoft.Web/connections/*\",\r\n \"Microsoft.Web/customApis/*\",\r\n \"Microsoft.Web/serverFarms/join/action\",\r\n \"Microsoft.Web/serverFarms/read\",\r\n \"Microsoft.Web/sites/functions/listSecrets/action\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2016-04-28T21:33:30.4656007Z\",\r\n \"updatedOn\": \"2019-10-15T04:31:27.7685427Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/87a39d53-fc1b-424a-814c-f7e04687dc9e\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"87a39d53-fc1b-424a-814c-f7e04687dc9e\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Managed Application Operator Role\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you read and perform actions on Managed Application resources\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"*/read\",\r\n \"Microsoft.Solutions/applications/read\",\r\n \"Microsoft.Solutions/*/action\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-07-27T00:59:33.7988813Z\",\r\n \"updatedOn\": \"2019-02-20T01:09:55.1593079Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/c7393b34-138c-406f-901b-d8cf2b17e6ae\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"c7393b34-138c-406f-901b-d8cf2b17e6ae\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Managed Applications Reader\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you read resources in a managed app and request JIT access.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"*/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Solutions/jitRequests/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-09-06T00:33:58.3651522Z\",\r\n \"updatedOn\": \"2018-09-06T00:33:58.3651522Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/b9331d33-8a36-4f8c-b097-4f54124fdb44\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"b9331d33-8a36-4f8c-b097-4f54124fdb44\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Managed Identity Operator\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Read and Assign User Assigned Identity\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.ManagedIdentity/userAssignedIdentities/*/read\",\r\n \"Microsoft.ManagedIdentity/userAssignedIdentities/*/assign/action\",\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2017-12-14T19:52:04.3924594Z\",\r\n \"updatedOn\": \"2017-12-14T22:16:00.1483256Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/f1a07417-d97a-45cb-824c-7a7467783830\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"f1a07417-d97a-45cb-824c-7a7467783830\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Managed Identity Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Create, Read, Update, and Delete User Assigned Identity\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.ManagedIdentity/userAssignedIdentities/read\",\r\n \"Microsoft.ManagedIdentity/userAssignedIdentities/write\",\r\n \"Microsoft.ManagedIdentity/userAssignedIdentities/delete\",\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2017-12-14T19:53:42.8804692Z\",\r\n \"updatedOn\": \"2019-06-20T21:51:27.0850433Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/e40ec5ca-96e0-45a2-b4ff-59039f2c2b59\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"e40ec5ca-96e0-45a2-b4ff-59039f2c2b59\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Management Group Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Management Group Contributor Role\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Management/managementGroups/delete\",\r\n \"Microsoft.Management/managementGroups/read\",\r\n \"Microsoft.Management/managementGroups/subscriptions/delete\",\r\n \"Microsoft.Management/managementGroups/subscriptions/write\",\r\n \"Microsoft.Management/managementGroups/write\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-06-22T00:28:29.0523964Z\",\r\n \"updatedOn\": \"2018-07-10T20:51:26.6132189Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/5d58bcaf-24a5-4b20-bdb6-eed9f69fbe4c\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"5d58bcaf-24a5-4b20-bdb6-eed9f69fbe4c\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Management Group Reader\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Management Group Reader Role\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Management/managementGroups/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-06-22T00:31:03.4295347Z\",\r\n \"updatedOn\": \"2018-07-10T20:49:42.563034Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/ac63b705-f282-497d-ac71-919bf39d939d\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"ac63b705-f282-497d-ac71-919bf39d939d\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Monitoring Metrics Publisher\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Enables publishing metrics against Azure resources\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Insights/Register/Action\",\r\n \"Microsoft.Support/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.Insights/Metrics/Write\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-08-14T00:36:16.5610279Z\",\r\n \"updatedOn\": \"2018-08-14T00:37:18.1465065Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/3913510d-42f4-4e42-8a64-420c390055eb\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"3913510d-42f4-4e42-8a64-420c390055eb\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Monitoring Reader\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Can read all monitoring data.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"*/read\",\r\n \"Microsoft.OperationalInsights/workspaces/search/action\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2016-09-21T19:19:52.4939376Z\",\r\n \"updatedOn\": \"2018-01-30T18:08:27.262625Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/43d0d8ad-25c7-4714-9337-8ba259a9fe05\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"43d0d8ad-25c7-4714-9337-8ba259a9fe05\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Network Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage networks, but not access to them.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Network/*\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-06-02T00:18:27.3542698Z\",\r\n \"updatedOn\": \"2016-05-31T23:14:00.3326359Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/4d97b98b-1d4f-4787-a291-c67834d212e7\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"4d97b98b-1d4f-4787-a291-c67834d212e7\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Monitoring Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Can read all monitoring data and update monitoring settings.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"*/read\",\r\n \"Microsoft.AlertsManagement/alerts/*\",\r\n \"Microsoft.AlertsManagement/alertsSummary/*\",\r\n \"Microsoft.Insights/actiongroups/*\",\r\n \"Microsoft.Insights/activityLogAlerts/*\",\r\n \"Microsoft.Insights/AlertRules/*\",\r\n \"Microsoft.Insights/components/*\",\r\n \"Microsoft.Insights/DiagnosticSettings/*\",\r\n \"Microsoft.Insights/eventtypes/*\",\r\n \"Microsoft.Insights/LogDefinitions/*\",\r\n \"Microsoft.Insights/metricalerts/*\",\r\n \"Microsoft.Insights/MetricDefinitions/*\",\r\n \"Microsoft.Insights/Metrics/*\",\r\n \"Microsoft.Insights/Register/Action\",\r\n \"Microsoft.Insights/scheduledqueryrules/*\",\r\n \"Microsoft.Insights/webtests/*\",\r\n \"Microsoft.Insights/workbooks/*\",\r\n \"Microsoft.OperationalInsights/workspaces/intelligencepacks/*\",\r\n \"Microsoft.OperationalInsights/workspaces/savedSearches/*\",\r\n \"Microsoft.OperationalInsights/workspaces/search/action\",\r\n \"Microsoft.OperationalInsights/workspaces/sharedKeys/action\",\r\n \"Microsoft.OperationalInsights/workspaces/storageinsightconfigs/*\",\r\n \"Microsoft.Support/*\",\r\n \"Microsoft.WorkloadMonitor/monitors/*\",\r\n \"Microsoft.WorkloadMonitor/notificationSettings/*\",\r\n \"Microsoft.AlertsManagement/smartDetectorAlertRules/*\",\r\n \"Microsoft.AlertsManagement/actionRules/*\",\r\n \"Microsoft.AlertsManagement/smartGroups/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2016-09-21T19:21:08.4345976Z\",\r\n \"updatedOn\": \"2020-02-27T14:51:55.2392109Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/749f88d5-cbae-40b8-bcfc-e573ddc772fa\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"749f88d5-cbae-40b8-bcfc-e573ddc772fa\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"New Relic APM Account Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage New Relic Application Performance Management accounts and applications, but not access to them.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\",\r\n \"NewRelic.APM/accounts/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-02-02T21:55:09.8806423Z\",\r\n \"updatedOn\": \"2019-02-05T20:42:16.2033878Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/5d28c62d-5b37-4476-8438-e587778df237\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"5d28c62d-5b37-4476-8438-e587778df237\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Owner\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage everything, including access to resources.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-02-02T21:55:09.8806423Z\",\r\n \"updatedOn\": \"2019-02-05T21:24:32.2101122Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/8e3af657-a8ff-443c-a75c-2fe8c4bcb635\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"8e3af657-a8ff-443c-a75c-2fe8c4bcb635\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Reader\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you view everything, but not make any changes.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"*/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-02-02T21:55:09.8806423Z\",\r\n \"updatedOn\": \"2019-02-05T21:24:35.7424745Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/acdd72a7-3385-48ef-bd42-f606fba81ae7\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"acdd72a7-3385-48ef-bd42-f606fba81ae7\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Redis Cache Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage Redis caches, but not access to them.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Cache/redis/*\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-02-02T21:55:09.8806423Z\",\r\n \"updatedOn\": \"2019-02-05T21:24:48.2353169Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/e0f68234-74aa-48ed-b826-c38b57376e17\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"e0f68234-74aa-48ed-b826-c38b57376e17\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Reader and Data Access\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you view everything but will not let you delete or create a storage account or contained resource. It will also allow read/write access to all data contained in a storage account via access to storage account keys.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Storage/storageAccounts/listKeys/action\",\r\n \"Microsoft.Storage/storageAccounts/ListAccountSas/action\",\r\n \"Microsoft.Storage/storageAccounts/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-03-27T23:20:46.1498906Z\",\r\n \"updatedOn\": \"2019-04-04T23:41:26.1056261Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/c12c1c16-33a1-487b-954d-41c89c60f349\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"c12c1c16-33a1-487b-954d-41c89c60f349\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Resource Policy Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Users with rights to create/modify resource policy, create support ticket and read resources/hierarchy.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"*/read\",\r\n \"Microsoft.Authorization/policyassignments/*\",\r\n \"Microsoft.Authorization/policydefinitions/*\",\r\n \"Microsoft.Authorization/policysetdefinitions/*\",\r\n \"Microsoft.PolicyInsights/*\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2017-08-25T19:08:01.3861639Z\",\r\n \"updatedOn\": \"2019-11-20T20:26:12.8811365Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/36243c78-bf99-498c-9df9-86d9f8d28608\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"36243c78-bf99-498c-9df9-86d9f8d28608\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Scheduler Job Collections Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage Scheduler job collections, but not access to them.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Scheduler/jobcollections/*\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-02-02T21:55:09.8806423Z\",\r\n \"updatedOn\": \"2019-02-05T20:42:24.8360756Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/188a0f2f-5c9e-469b-ae67-2aa5ce574b94\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"188a0f2f-5c9e-469b-ae67-2aa5ce574b94\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Search Service Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage Search services, but not access to them.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Search/searchServices/*\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-02-02T21:55:09.8806423Z\",\r\n \"updatedOn\": \"2019-02-05T20:42:21.8687229Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/7ca78c08-252a-4471-8644-bb5ff32d4ba0\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"7ca78c08-252a-4471-8644-bb5ff32d4ba0\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Security Admin\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Security Admin Role\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Authorization/policyAssignments/*\",\r\n \"Microsoft.Authorization/policyDefinitions/*\",\r\n \"Microsoft.Authorization/policySetDefinitions/*\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Management/managementGroups/read\",\r\n \"Microsoft.operationalInsights/workspaces/*/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Security/*\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2017-05-03T07:51:23.0917487Z\",\r\n \"updatedOn\": \"2019-03-12T21:12:48.635016Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/fb1c8493-542b-48eb-b624-b4c8fea62acd\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"fb1c8493-542b-48eb-b624-b4c8fea62acd\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Security Manager (Legacy)\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"This is a legacy role. Please use Security Administrator instead\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.ClassicCompute/*/read\",\r\n \"Microsoft.ClassicCompute/virtualMachines/*/write\",\r\n \"Microsoft.ClassicNetwork/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Security/*\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-06-22T17:45:15.8986455Z\",\r\n \"updatedOn\": \"2018-03-08T18:18:48.618362Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/e3d13bf0-dd5a-482e-ba6b-9b8433878d10\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"e3d13bf0-dd5a-482e-ba6b-9b8433878d10\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Security Reader\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Security Reader Role\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.operationalInsights/workspaces/*/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Security/*/read\",\r\n \"Microsoft.Support/*\",\r\n \"Microsoft.Management/managementGroups/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2017-05-03T07:48:49.0516559Z\",\r\n \"updatedOn\": \"2018-06-28T17:27:23.106561Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/39bc4728-0917-49c7-9d2c-d95423bc2eb4\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"39bc4728-0917-49c7-9d2c-d95423bc2eb4\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Spatial Anchors Account Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage spatial anchors in your account, but not delete them\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.MixedReality/SpatialAnchorsAccounts/create/action\",\r\n \"Microsoft.MixedReality/SpatialAnchorsAccounts/discovery/read\",\r\n \"Microsoft.MixedReality/SpatialAnchorsAccounts/properties/read\",\r\n \"Microsoft.MixedReality/SpatialAnchorsAccounts/query/read\",\r\n \"Microsoft.MixedReality/SpatialAnchorsAccounts/submitdiag/read\",\r\n \"Microsoft.MixedReality/SpatialAnchorsAccounts/write\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-12-21T17:57:41.1420864Z\",\r\n \"updatedOn\": \"2019-02-13T06:13:39.8686435Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/8bbe83f1-e2a6-4df7-8cb4-4e04d4e5c827\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"8bbe83f1-e2a6-4df7-8cb4-4e04d4e5c827\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Site Recovery Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage Site Recovery service except vault creation and role assignment\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Network/virtualNetworks/read\",\r\n \"Microsoft.RecoveryServices/locations/allocatedStamp/read\",\r\n \"Microsoft.RecoveryServices/locations/allocateStamp/action\",\r\n \"Microsoft.RecoveryServices/Vaults/certificates/write\",\r\n \"Microsoft.RecoveryServices/Vaults/extendedInformation/*\",\r\n \"Microsoft.RecoveryServices/Vaults/read\",\r\n \"Microsoft.RecoveryServices/Vaults/refreshContainers/read\",\r\n \"Microsoft.RecoveryServices/Vaults/registeredIdentities/*\",\r\n \"Microsoft.RecoveryServices/vaults/replicationAlertSettings/*\",\r\n \"Microsoft.RecoveryServices/vaults/replicationEvents/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/*\",\r\n \"Microsoft.RecoveryServices/vaults/replicationJobs/*\",\r\n \"Microsoft.RecoveryServices/vaults/replicationPolicies/*\",\r\n \"Microsoft.RecoveryServices/vaults/replicationRecoveryPlans/*\",\r\n \"Microsoft.RecoveryServices/Vaults/storageConfig/*\",\r\n \"Microsoft.RecoveryServices/Vaults/tokenInfo/read\",\r\n \"Microsoft.RecoveryServices/Vaults/usages/read\",\r\n \"Microsoft.RecoveryServices/Vaults/vaultTokens/read\",\r\n \"Microsoft.RecoveryServices/Vaults/monitoringAlerts/*\",\r\n \"Microsoft.RecoveryServices/Vaults/monitoringConfigurations/notificationConfiguration/read\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Storage/storageAccounts/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationOperationStatus/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2017-05-19T13:46:17.4592776Z\",\r\n \"updatedOn\": \"2019-11-07T06:13:49.0760858Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/6670b86e-a3f7-4917-ac9b-5d6ab1be4567\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"6670b86e-a3f7-4917-ac9b-5d6ab1be4567\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Site Recovery Operator\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you failover and failback but not perform other Site Recovery management operations\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Network/virtualNetworks/read\",\r\n \"Microsoft.RecoveryServices/locations/allocatedStamp/read\",\r\n \"Microsoft.RecoveryServices/locations/allocateStamp/action\",\r\n \"Microsoft.RecoveryServices/Vaults/extendedInformation/read\",\r\n \"Microsoft.RecoveryServices/Vaults/read\",\r\n \"Microsoft.RecoveryServices/Vaults/refreshContainers/read\",\r\n \"Microsoft.RecoveryServices/Vaults/registeredIdentities/operationResults/read\",\r\n \"Microsoft.RecoveryServices/Vaults/registeredIdentities/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationAlertSettings/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationEvents/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/checkConsistency/action\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/reassociateGateway/action\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/renewcertificate/action\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks/replicationNetworkMappings/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectableItems/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/applyRecoveryPoint/action\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/failoverCommit/action\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/plannedFailover/action\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/recoveryPoints/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/repairReplication/action\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/reProtect/action\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/switchprotection/action\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/testFailover/action\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/testFailoverCleanup/action\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/unplannedFailover/action\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/updateMobilityService/action\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionContainerMappings/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationRecoveryServicesProviders/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationRecoveryServicesProviders/refreshProvider/action\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationStorageClassifications/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationStorageClassifications/replicationStorageClassificationMappings/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationvCenters/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationJobs/*\",\r\n \"Microsoft.RecoveryServices/vaults/replicationPolicies/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationRecoveryPlans/failoverCommit/action\",\r\n \"Microsoft.RecoveryServices/vaults/replicationRecoveryPlans/plannedFailover/action\",\r\n \"Microsoft.RecoveryServices/vaults/replicationRecoveryPlans/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationRecoveryPlans/reProtect/action\",\r\n \"Microsoft.RecoveryServices/vaults/replicationRecoveryPlans/testFailover/action\",\r\n \"Microsoft.RecoveryServices/vaults/replicationRecoveryPlans/testFailoverCleanup/action\",\r\n \"Microsoft.RecoveryServices/vaults/replicationRecoveryPlans/unplannedFailover/action\",\r\n \"Microsoft.RecoveryServices/Vaults/monitoringAlerts/*\",\r\n \"Microsoft.RecoveryServices/Vaults/monitoringConfigurations/notificationConfiguration/read\",\r\n \"Microsoft.RecoveryServices/Vaults/storageConfig/read\",\r\n \"Microsoft.RecoveryServices/Vaults/tokenInfo/read\",\r\n \"Microsoft.RecoveryServices/Vaults/usages/read\",\r\n \"Microsoft.RecoveryServices/Vaults/vaultTokens/read\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Storage/storageAccounts/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2017-05-19T13:47:50.1341148Z\",\r\n \"updatedOn\": \"2019-08-28T12:00:57.4472826Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": \"\"\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/494ae006-db33-4328-bf46-533a6560a3ca\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"494ae006-db33-4328-bf46-533a6560a3ca\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Spatial Anchors Account Reader\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you locate and read properties of spatial anchors in your account\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.MixedReality/SpatialAnchorsAccounts/discovery/read\",\r\n \"Microsoft.MixedReality/SpatialAnchorsAccounts/properties/read\",\r\n \"Microsoft.MixedReality/SpatialAnchorsAccounts/query/read\",\r\n \"Microsoft.MixedReality/SpatialAnchorsAccounts/submitdiag/read\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-12-21T17:57:42.9271004Z\",\r\n \"updatedOn\": \"2019-02-13T06:16:15.3170663Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/5d51204f-eb77-4b1c-b86a-2ec626c49413\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"5d51204f-eb77-4b1c-b86a-2ec626c49413\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Site Recovery Reader\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you view Site Recovery status but not perform other management operations\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.RecoveryServices/locations/allocatedStamp/read\",\r\n \"Microsoft.RecoveryServices/Vaults/extendedInformation/read\",\r\n \"Microsoft.RecoveryServices/Vaults/monitoringAlerts/read\",\r\n \"Microsoft.RecoveryServices/Vaults/monitoringConfigurations/notificationConfiguration/read\",\r\n \"Microsoft.RecoveryServices/Vaults/read\",\r\n \"Microsoft.RecoveryServices/Vaults/refreshContainers/read\",\r\n \"Microsoft.RecoveryServices/Vaults/registeredIdentities/operationResults/read\",\r\n \"Microsoft.RecoveryServices/Vaults/registeredIdentities/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationAlertSettings/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationEvents/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks/replicationNetworkMappings/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectableItems/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems/recoveryPoints/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionContainerMappings/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationRecoveryServicesProviders/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationStorageClassifications/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationStorageClassifications/replicationStorageClassificationMappings/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationvCenters/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationJobs/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationPolicies/read\",\r\n \"Microsoft.RecoveryServices/vaults/replicationRecoveryPlans/read\",\r\n \"Microsoft.RecoveryServices/Vaults/storageConfig/read\",\r\n \"Microsoft.RecoveryServices/Vaults/tokenInfo/read\",\r\n \"Microsoft.RecoveryServices/Vaults/usages/read\",\r\n \"Microsoft.RecoveryServices/Vaults/vaultTokens/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2017-05-19T13:35:40.0093634Z\",\r\n \"updatedOn\": \"2017-05-26T19:54:51.393325Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/dbaa88c4-0c30-4179-9fb3-46319faa6149\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"dbaa88c4-0c30-4179-9fb3-46319faa6149\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Spatial Anchors Account Owner\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage spatial anchors in your account, including deleting them\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.MixedReality/SpatialAnchorsAccounts/create/action\",\r\n \"Microsoft.MixedReality/SpatialAnchorsAccounts/delete\",\r\n \"Microsoft.MixedReality/SpatialAnchorsAccounts/discovery/read\",\r\n \"Microsoft.MixedReality/SpatialAnchorsAccounts/properties/read\",\r\n \"Microsoft.MixedReality/SpatialAnchorsAccounts/query/read\",\r\n \"Microsoft.MixedReality/SpatialAnchorsAccounts/submitdiag/read\",\r\n \"Microsoft.MixedReality/SpatialAnchorsAccounts/write\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-12-21T17:57:43.5489832Z\",\r\n \"updatedOn\": \"2019-02-13T06:15:31.8572222Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/70bbe301-9835-447d-afdd-19eb3167307c\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"70bbe301-9835-447d-afdd-19eb3167307c\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"SQL Managed Instance Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage SQL Managed Instances and required network configuration, but can’t give access to others.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Network/networkSecurityGroups/*\",\r\n \"Microsoft.Network/routeTables/*\",\r\n \"Microsoft.Sql/locations/*/read\",\r\n \"Microsoft.Sql/managedInstances/*\",\r\n \"Microsoft.Support/*\",\r\n \"Microsoft.Network/virtualNetworks/subnets/*\",\r\n \"Microsoft.Network/virtualNetworks/*\",\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Insights/metrics/read\",\r\n \"Microsoft.Insights/metricDefinitions/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-12-10T22:57:14.2937983Z\",\r\n \"updatedOn\": \"2019-04-25T17:59:01.7432149Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/4939a1f6-9ae0-4e48-a1e0-f2cbe897382d\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"4939a1f6-9ae0-4e48-a1e0-f2cbe897382d\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"SQL DB Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage SQL databases, but not access to them. Also, you can't manage their security-related policies or their parent SQL servers.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Sql/locations/*/read\",\r\n \"Microsoft.Sql/servers/databases/*\",\r\n \"Microsoft.Sql/servers/read\",\r\n \"Microsoft.Support/*\",\r\n \"Microsoft.Insights/metrics/read\",\r\n \"Microsoft.Insights/metricDefinitions/read\"\r\n ],\r\n \"notActions\": [\r\n \"Microsoft.Sql/managedInstances/databases/currentSensitivityLabels/*\",\r\n \"Microsoft.Sql/managedInstances/databases/recommendedSensitivityLabels/*\",\r\n \"Microsoft.Sql/managedInstances/databases/schemas/tables/columns/sensitivityLabels/*\",\r\n \"Microsoft.Sql/managedInstances/databases/securityAlertPolicies/*\",\r\n \"Microsoft.Sql/managedInstances/databases/sensitivityLabels/*\",\r\n \"Microsoft.Sql/managedInstances/databases/vulnerabilityAssessments/*\",\r\n \"Microsoft.Sql/managedInstances/securityAlertPolicies/*\",\r\n \"Microsoft.Sql/managedInstances/vulnerabilityAssessments/*\",\r\n \"Microsoft.Sql/servers/databases/auditingPolicies/*\",\r\n \"Microsoft.Sql/servers/databases/auditingSettings/*\",\r\n \"Microsoft.Sql/servers/databases/auditRecords/read\",\r\n \"Microsoft.Sql/servers/databases/connectionPolicies/*\",\r\n \"Microsoft.Sql/servers/databases/currentSensitivityLabels/*\",\r\n \"Microsoft.Sql/servers/databases/dataMaskingPolicies/*\",\r\n \"Microsoft.Sql/servers/databases/extendedAuditingSettings/*\",\r\n \"Microsoft.Sql/servers/databases/recommendedSensitivityLabels/*\",\r\n \"Microsoft.Sql/servers/databases/schemas/tables/columns/sensitivityLabels/*\",\r\n \"Microsoft.Sql/servers/databases/securityAlertPolicies/*\",\r\n \"Microsoft.Sql/servers/databases/securityMetrics/*\",\r\n \"Microsoft.Sql/servers/databases/sensitivityLabels/*\",\r\n \"Microsoft.Sql/servers/databases/vulnerabilityAssessments/*\",\r\n \"Microsoft.Sql/servers/databases/vulnerabilityAssessmentScans/*\",\r\n \"Microsoft.Sql/servers/databases/vulnerabilityAssessmentSettings/*\",\r\n \"Microsoft.Sql/servers/vulnerabilityAssessments/*\"\r\n ],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-02-02T21:55:09.8806423Z\",\r\n \"updatedOn\": \"2019-02-28T22:44:35.864967Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/9b7fa17d-e63e-47b0-bb0a-15c516ac86ec\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"9b7fa17d-e63e-47b0-bb0a-15c516ac86ec\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"SQL Security Manager\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage the security-related policies of SQL servers and databases, but not access to them.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Network/virtualNetworks/subnets/joinViaServiceEndpoint/action\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Sql/managedInstances/databases/currentSensitivityLabels/*\",\r\n \"Microsoft.Sql/managedInstances/databases/recommendedSensitivityLabels/*\",\r\n \"Microsoft.Sql/managedInstances/databases/schemas/tables/columns/sensitivityLabels/*\",\r\n \"Microsoft.Sql/managedInstances/databases/securityAlertPolicies/*\",\r\n \"Microsoft.Sql/managedInstances/databases/sensitivityLabels/*\",\r\n \"Microsoft.Sql/managedInstances/databases/vulnerabilityAssessments/*\",\r\n \"Microsoft.Sql/managedInstances/securityAlertPolicies/*\",\r\n \"Microsoft.Sql/managedInstances/databases/transparentDataEncryption/*\",\r\n \"Microsoft.Sql/managedInstances/vulnerabilityAssessments/*\",\r\n \"Microsoft.Sql/servers/auditingPolicies/*\",\r\n \"Microsoft.Sql/servers/auditingSettings/*\",\r\n \"Microsoft.Sql/servers/extendedAuditingSettings/read\",\r\n \"Microsoft.Sql/servers/databases/auditingPolicies/*\",\r\n \"Microsoft.Sql/servers/databases/auditingSettings/*\",\r\n \"Microsoft.Sql/servers/databases/auditRecords/read\",\r\n \"Microsoft.Sql/servers/databases/connectionPolicies/*\",\r\n \"Microsoft.Sql/servers/databases/currentSensitivityLabels/*\",\r\n \"Microsoft.Sql/servers/databases/dataMaskingPolicies/*\",\r\n \"Microsoft.Sql/servers/databases/extendedAuditingSettings/read\",\r\n \"Microsoft.Sql/servers/databases/read\",\r\n \"Microsoft.Sql/servers/databases/recommendedSensitivityLabels/*\",\r\n \"Microsoft.Sql/servers/databases/schemas/read\",\r\n \"Microsoft.Sql/servers/databases/schemas/tables/columns/read\",\r\n \"Microsoft.Sql/servers/databases/schemas/tables/columns/sensitivityLabels/*\",\r\n \"Microsoft.Sql/servers/databases/schemas/tables/read\",\r\n \"Microsoft.Sql/servers/databases/securityAlertPolicies/*\",\r\n \"Microsoft.Sql/servers/databases/securityMetrics/*\",\r\n \"Microsoft.Sql/servers/databases/sensitivityLabels/*\",\r\n \"Microsoft.Sql/servers/databases/transparentDataEncryption/*\",\r\n \"Microsoft.Sql/servers/databases/vulnerabilityAssessments/*\",\r\n \"Microsoft.Sql/servers/databases/vulnerabilityAssessmentScans/*\",\r\n \"Microsoft.Sql/servers/databases/vulnerabilityAssessmentSettings/*\",\r\n \"Microsoft.Sql/servers/firewallRules/*\",\r\n \"Microsoft.Sql/servers/read\",\r\n \"Microsoft.Sql/servers/securityAlertPolicies/*\",\r\n \"Microsoft.Sql/servers/vulnerabilityAssessments/*\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-06-16T18:44:40.4607572Z\",\r\n \"updatedOn\": \"2019-08-08T22:58:22.2532171Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": \"yaiyun\"\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/056cd41c-7e88-42e1-933e-88ba6a50c9c3\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"056cd41c-7e88-42e1-933e-88ba6a50c9c3\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Storage Account Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage storage accounts, including accessing storage account keys which provide full access to storage account data.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Insights/diagnosticSettings/*\",\r\n \"Microsoft.Network/virtualNetworks/subnets/joinViaServiceEndpoint/action\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Storage/storageAccounts/*\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-06-02T00:18:27.3542698Z\",\r\n \"updatedOn\": \"2019-05-29T20:56:33.9582501Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/17d1049b-9a84-46fb-8f53-869881c3d3ab\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"17d1049b-9a84-46fb-8f53-869881c3d3ab\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"SQL Server Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage SQL servers and databases, but not access to them, and not their security -related policies.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Sql/locations/*/read\",\r\n \"Microsoft.Sql/servers/*\",\r\n \"Microsoft.Support/*\",\r\n \"Microsoft.Insights/metrics/read\",\r\n \"Microsoft.Insights/metricDefinitions/read\"\r\n ],\r\n \"notActions\": [\r\n \"Microsoft.Sql/managedInstances/databases/currentSensitivityLabels/*\",\r\n \"Microsoft.Sql/managedInstances/databases/recommendedSensitivityLabels/*\",\r\n \"Microsoft.Sql/managedInstances/databases/schemas/tables/columns/sensitivityLabels/*\",\r\n \"Microsoft.Sql/managedInstances/databases/securityAlertPolicies/*\",\r\n \"Microsoft.Sql/managedInstances/databases/sensitivityLabels/*\",\r\n \"Microsoft.Sql/managedInstances/databases/vulnerabilityAssessments/*\",\r\n \"Microsoft.Sql/managedInstances/securityAlertPolicies/*\",\r\n \"Microsoft.Sql/managedInstances/vulnerabilityAssessments/*\",\r\n \"Microsoft.Sql/servers/auditingPolicies/*\",\r\n \"Microsoft.Sql/servers/auditingSettings/*\",\r\n \"Microsoft.Sql/servers/databases/auditingPolicies/*\",\r\n \"Microsoft.Sql/servers/databases/auditingSettings/*\",\r\n \"Microsoft.Sql/servers/databases/auditRecords/read\",\r\n \"Microsoft.Sql/servers/databases/connectionPolicies/*\",\r\n \"Microsoft.Sql/servers/databases/currentSensitivityLabels/*\",\r\n \"Microsoft.Sql/servers/databases/dataMaskingPolicies/*\",\r\n \"Microsoft.Sql/servers/databases/extendedAuditingSettings/*\",\r\n \"Microsoft.Sql/servers/databases/recommendedSensitivityLabels/*\",\r\n \"Microsoft.Sql/servers/databases/schemas/tables/columns/sensitivityLabels/*\",\r\n \"Microsoft.Sql/servers/databases/securityAlertPolicies/*\",\r\n \"Microsoft.Sql/servers/databases/securityMetrics/*\",\r\n \"Microsoft.Sql/servers/databases/sensitivityLabels/*\",\r\n \"Microsoft.Sql/servers/databases/vulnerabilityAssessments/*\",\r\n \"Microsoft.Sql/servers/databases/vulnerabilityAssessmentScans/*\",\r\n \"Microsoft.Sql/servers/databases/vulnerabilityAssessmentSettings/*\",\r\n \"Microsoft.Sql/servers/extendedAuditingSettings/*\",\r\n \"Microsoft.Sql/servers/securityAlertPolicies/*\",\r\n \"Microsoft.Sql/servers/vulnerabilityAssessments/*\"\r\n ],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-02-02T21:55:09.8806423Z\",\r\n \"updatedOn\": \"2019-02-28T22:44:36.5466043Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/6d8ee4ec-f05a-4a1d-8b00-a9b17e38b437\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"6d8ee4ec-f05a-4a1d-8b00-a9b17e38b437\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Storage Account Key Operator Service Role\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Storage Account Key Operators are allowed to list and regenerate keys on Storage Accounts\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Storage/storageAccounts/listkeys/action\",\r\n \"Microsoft.Storage/storageAccounts/regeneratekey/action\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2017-04-13T18:26:11.577057Z\",\r\n \"updatedOn\": \"2017-04-13T20:57:14.5990198Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/81a9662b-bebf-436f-a333-f67b29880f12\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"81a9662b-bebf-436f-a333-f67b29880f12\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Storage Blob Data Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Allows for read, write and delete access to Azure Storage blob containers and data\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/delete\",\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/read\",\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/write\",\r\n \"Microsoft.Storage/storageAccounts/blobServices/generateUserDelegationKey/action\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/blobs/delete\",\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read\",\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2017-12-21T00:01:24.7972312Z\",\r\n \"updatedOn\": \"2019-07-16T17:39:31.7303676Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/ba92f5b4-2d11-453d-a403-e96b0029c9fe\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"ba92f5b4-2d11-453d-a403-e96b0029c9fe\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Storage Blob Data Owner\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Allows for full access to Azure Storage blob containers and data, including assigning POSIX access control.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/*\",\r\n \"Microsoft.Storage/storageAccounts/blobServices/generateUserDelegationKey/action\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/blobs/*\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-12-04T07:02:58.2775257Z\",\r\n \"updatedOn\": \"2019-07-16T21:30:33.7002563Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/b7e6dc6d-f1e8-4753-8033-0f276bb0955b\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"b7e6dc6d-f1e8-4753-8033-0f276bb0955b\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Storage Blob Data Reader\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Allows for read access to Azure Storage blob containers and data\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/read\",\r\n \"Microsoft.Storage/storageAccounts/blobServices/generateUserDelegationKey/action\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2017-12-21T00:01:24.7972312Z\",\r\n \"updatedOn\": \"2019-07-15T22:01:25.5409721Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/2a2b9908-6ea1-4ae2-8e65-a410df84e7d1\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"2a2b9908-6ea1-4ae2-8e65-a410df84e7d1\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Storage Queue Data Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Allows for read, write, and delete access to Azure Storage queues and queue messages\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Storage/storageAccounts/queueServices/queues/delete\",\r\n \"Microsoft.Storage/storageAccounts/queueServices/queues/read\",\r\n \"Microsoft.Storage/storageAccounts/queueServices/queues/write\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.Storage/storageAccounts/queueServices/queues/messages/delete\",\r\n \"Microsoft.Storage/storageAccounts/queueServices/queues/messages/read\",\r\n \"Microsoft.Storage/storageAccounts/queueServices/queues/messages/write\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2017-12-21T00:01:24.7972312Z\",\r\n \"updatedOn\": \"2019-03-05T21:58:02.7367128Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/974c5e8b-45b9-4653-ba55-5f855dd0fb88\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"974c5e8b-45b9-4653-ba55-5f855dd0fb88\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Storage Queue Data Message Processor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Allows for peek, receive, and delete access to Azure Storage queue messages\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.Storage/storageAccounts/queueServices/queues/messages/read\",\r\n \"Microsoft.Storage/storageAccounts/queueServices/queues/messages/process/action\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-01-28T22:27:04.8947111Z\",\r\n \"updatedOn\": \"2019-03-05T22:05:46.1259125Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/8a0f0c08-91a1-4084-bc3d-661d67233fed\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"8a0f0c08-91a1-4084-bc3d-661d67233fed\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Storage Queue Data Message Sender\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Allows for sending of Azure Storage queue messages\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.Storage/storageAccounts/queueServices/queues/messages/add/action\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-01-28T22:28:34.7459724Z\",\r\n \"updatedOn\": \"2019-03-05T22:11:49.6383892Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/c6a89b2d-59bc-44d0-9896-0f6e12d7b80a\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"c6a89b2d-59bc-44d0-9896-0f6e12d7b80a\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Storage Queue Data Reader\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Allows for read access to Azure Storage queues and queue messages\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Storage/storageAccounts/queueServices/queues/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.Storage/storageAccounts/queueServices/queues/messages/read\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2017-12-21T00:01:24.7972312Z\",\r\n \"updatedOn\": \"2019-03-05T22:17:32.1779262Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/19e7f393-937e-4f77-808e-94535e297925\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"19e7f393-937e-4f77-808e-94535e297925\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Support Request Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you create and manage Support requests\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2017-06-22T22:25:37.8053068Z\",\r\n \"updatedOn\": \"2017-06-23T01:06:24.2399631Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/cfd33db0-3dd1-45e3-aa9d-cdbdf3b6f24e\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"cfd33db0-3dd1-45e3-aa9d-cdbdf3b6f24e\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Traffic Manager Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage Traffic Manager profiles, but does not let you control who has access to them.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Network/trafficManagerProfiles/*\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-10-15T23:33:25.9730842Z\",\r\n \"updatedOn\": \"2016-05-31T23:13:44.1458854Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/a4b10055-b0c7-44c2-b00f-c7b5b3550cf7\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"a4b10055-b0c7-44c2-b00f-c7b5b3550cf7\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Virtual Machine Administrator Login\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"View Virtual Machines in the portal and login as administrator\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Network/publicIPAddresses/read\",\r\n \"Microsoft.Network/virtualNetworks/read\",\r\n \"Microsoft.Network/loadBalancers/read\",\r\n \"Microsoft.Network/networkInterfaces/read\",\r\n \"Microsoft.Compute/virtualMachines/*/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.Compute/virtualMachines/login/action\",\r\n \"Microsoft.Compute/virtualMachines/loginAsAdmin/action\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-02-09T18:36:13.3315744Z\",\r\n \"updatedOn\": \"2018-05-09T22:17:57.0514548Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/1c0163c0-47e6-4577-8991-ea5c82e286e4\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"1c0163c0-47e6-4577-8991-ea5c82e286e4\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"User Access Administrator\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage user access to Azure resources.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"*/read\",\r\n \"Microsoft.Authorization/*\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-02-02T21:55:09.8806423Z\",\r\n \"updatedOn\": \"2019-02-05T21:24:12.6807454Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/18d7d88d-d35e-4fb5-a5c3-7773c20a72d9\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"18d7d88d-d35e-4fb5-a5c3-7773c20a72d9\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Virtual Machine User Login\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"View Virtual Machines in the portal and login as a regular user.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Network/publicIPAddresses/read\",\r\n \"Microsoft.Network/virtualNetworks/read\",\r\n \"Microsoft.Network/loadBalancers/read\",\r\n \"Microsoft.Network/networkInterfaces/read\",\r\n \"Microsoft.Compute/virtualMachines/*/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.Compute/virtualMachines/login/action\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2018-02-09T18:36:13.3315744Z\",\r\n \"updatedOn\": \"2018-05-09T22:18:52.2780979Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/fb879df8-f326-4884-b1cf-06f3ad86be52\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"fb879df8-f326-4884-b1cf-06f3ad86be52\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Virtual Machine Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage virtual machines, but not access to them, and not the virtual network or storage account they're connected to.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Compute/availabilitySets/*\",\r\n \"Microsoft.Compute/locations/*\",\r\n \"Microsoft.Compute/virtualMachines/*\",\r\n \"Microsoft.Compute/virtualMachineScaleSets/*\",\r\n \"Microsoft.Compute/disks/write\",\r\n \"Microsoft.Compute/disks/read\",\r\n \"Microsoft.Compute/disks/delete\",\r\n \"Microsoft.DevTestLab/schedules/*\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Network/applicationGateways/backendAddressPools/join/action\",\r\n \"Microsoft.Network/loadBalancers/backendAddressPools/join/action\",\r\n \"Microsoft.Network/loadBalancers/inboundNatPools/join/action\",\r\n \"Microsoft.Network/loadBalancers/inboundNatRules/join/action\",\r\n \"Microsoft.Network/loadBalancers/probes/join/action\",\r\n \"Microsoft.Network/loadBalancers/read\",\r\n \"Microsoft.Network/locations/*\",\r\n \"Microsoft.Network/networkInterfaces/*\",\r\n \"Microsoft.Network/networkSecurityGroups/join/action\",\r\n \"Microsoft.Network/networkSecurityGroups/read\",\r\n \"Microsoft.Network/publicIPAddresses/join/action\",\r\n \"Microsoft.Network/publicIPAddresses/read\",\r\n \"Microsoft.Network/virtualNetworks/read\",\r\n \"Microsoft.Network/virtualNetworks/subnets/join/action\",\r\n \"Microsoft.RecoveryServices/locations/*\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/backupProtectionIntent/write\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/*/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupFabrics/protectionContainers/protectedItems/write\",\r\n \"Microsoft.RecoveryServices/Vaults/backupPolicies/read\",\r\n \"Microsoft.RecoveryServices/Vaults/backupPolicies/write\",\r\n \"Microsoft.RecoveryServices/Vaults/read\",\r\n \"Microsoft.RecoveryServices/Vaults/usages/read\",\r\n \"Microsoft.RecoveryServices/Vaults/write\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.SqlVirtualMachine/*\",\r\n \"Microsoft.Storage/storageAccounts/listKeys/action\",\r\n \"Microsoft.Storage/storageAccounts/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-06-02T00:18:27.3542698Z\",\r\n \"updatedOn\": \"2020-02-03T19:38:21.2170228Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/9980e02c-c2be-4d73-94e8-173b1dc7cf3c\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"9980e02c-c2be-4d73-94e8-173b1dc7cf3c\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Web Plan Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage the web plans for websites, but not access to them.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\",\r\n \"Microsoft.Web/serverFarms/*\",\r\n \"Microsoft.Web/hostingEnvironments/Join/Action\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-02-02T21:55:09.8806423Z\",\r\n \"updatedOn\": \"2019-03-26T18:17:34.5018645Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/2cc479cb-7b4d-49a8-b449-8c00fd0f0a4b\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"2cc479cb-7b4d-49a8-b449-8c00fd0f0a4b\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Website Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage websites (not web plans), but not access to them.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Insights/components/*\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\",\r\n \"Microsoft.Web/certificates/*\",\r\n \"Microsoft.Web/listSitesAssignedToHostName/read\",\r\n \"Microsoft.Web/serverFarms/join/action\",\r\n \"Microsoft.Web/serverFarms/read\",\r\n \"Microsoft.Web/sites/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2015-05-12T23:10:23.6193952Z\",\r\n \"updatedOn\": \"2019-02-05T21:24:46.9407288Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/de139f84-1756-47ae-9be6-808fbbe84772\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"de139f84-1756-47ae-9be6-808fbbe84772\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Azure Service Bus Data Owner\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Allows for full access to Azure Service Bus resources.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.ServiceBus/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.ServiceBus/*\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-04-16T21:33:36.7445745Z\",\r\n \"updatedOn\": \"2019-08-21T22:47:11.3982905Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/090c5cfd-751d-490a-894a-3ce6f1109419\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"090c5cfd-751d-490a-894a-3ce6f1109419\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Azure Event Hubs Data Owner\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Allows for full access to Azure Event Hubs resources.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.EventHub/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.EventHub/*\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-04-16T21:34:29.8656362Z\",\r\n \"updatedOn\": \"2019-08-21T22:58:57.7584645Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/f526a384-b230-433a-b45c-95f59c4a2dec\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"f526a384-b230-433a-b45c-95f59c4a2dec\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Attestation Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Can read write or delete the attestation provider instance\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Attestation/attestationProviders/attestation/read\",\r\n \"Microsoft.Attestation/attestationProviders/attestation/write\",\r\n \"Microsoft.Attestation/attestationProviders/attestation/delete\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-04-19T00:24:09.3354177Z\",\r\n \"updatedOn\": \"2019-05-10T17:59:06.3448436Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/bbf86eb8-f7b4-4cce-96e4-18cddf81d86e\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"bbf86eb8-f7b4-4cce-96e4-18cddf81d86e\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"HDInsight Cluster Operator\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you read and modify HDInsight cluster configurations.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.HDInsight/*/read\",\r\n \"Microsoft.HDInsight/clusters/getGatewaySettings/action\",\r\n \"Microsoft.HDInsight/clusters/updateGatewaySettings/action\",\r\n \"Microsoft.HDInsight/clusters/configurations/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Resources/deployments/operations/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-04-20T00:03:01.7110732Z\",\r\n \"updatedOn\": \"2019-04-28T02:34:17.4679314Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/61ed4efc-fab3-44fd-b111-e24485cc132a\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"61ed4efc-fab3-44fd-b111-e24485cc132a\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Cosmos DB Operator\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage Azure Cosmos DB accounts, but not access data in them. Prevents access to account keys and connection strings.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.DocumentDb/databaseAccounts/*\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.ResourceHealth/availabilityStatuses/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\",\r\n \"Microsoft.Network/virtualNetworks/subnets/joinViaServiceEndpoint/action\"\r\n ],\r\n \"notActions\": [\r\n \"Microsoft.DocumentDB/databaseAccounts/readonlyKeys/*\",\r\n \"Microsoft.DocumentDB/databaseAccounts/regenerateKey/*\",\r\n \"Microsoft.DocumentDB/databaseAccounts/listKeys/*\",\r\n \"Microsoft.DocumentDB/databaseAccounts/listConnectionStrings/*\"\r\n ],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-04-26T17:01:17.0169383Z\",\r\n \"updatedOn\": \"2019-11-21T01:34:13.3746345Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/230815da-be43-4aae-9cb4-875f7bd000aa\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"230815da-be43-4aae-9cb4-875f7bd000aa\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Hybrid Server Resource Administrator\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Can read, write, delete, and re-onboard Hybrid servers to the Hybrid Resource Provider.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.HybridCompute/machines/*\",\r\n \"Microsoft.HybridCompute/*/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-04-29T21:39:32.3132923Z\",\r\n \"updatedOn\": \"2019-05-06T20:08:25.3180258Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/48b40c6e-82e0-4eb3-90d5-19e40f49b624\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"48b40c6e-82e0-4eb3-90d5-19e40f49b624\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Hybrid Server Onboarding\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Can onboard new Hybrid servers to the Hybrid Resource Provider.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.HybridCompute/machines/read\",\r\n \"Microsoft.HybridCompute/machines/write\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-04-29T22:36:28.1873756Z\",\r\n \"updatedOn\": \"2019-05-06T20:09:17.9364269Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/5d1e5ee4-7c68-4a71-ac8b-0739630a3dfb\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"5d1e5ee4-7c68-4a71-ac8b-0739630a3dfb\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Azure Event Hubs Data Receiver\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Allows receive access to Azure Event Hubs resources.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.EventHub/*/eventhubs/consumergroups/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.EventHub/*/receive/action\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-05-10T06:25:21.1056666Z\",\r\n \"updatedOn\": \"2019-08-21T23:00:32.6225396Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/a638d3c7-ab3a-418d-83e6-5f17a39d4fde\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"a638d3c7-ab3a-418d-83e6-5f17a39d4fde\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Azure Event Hubs Data Sender\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Allows send access to Azure Event Hubs resources.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.EventHub/*/eventhubs/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.EventHub/*/send/action\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-05-10T06:26:12.4673714Z\",\r\n \"updatedOn\": \"2019-08-21T23:02:26.6155679Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/2b629674-e913-4c01-ae53-ef4638d8f975\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"2b629674-e913-4c01-ae53-ef4638d8f975\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Azure Service Bus Data Receiver\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Allows for receive access to Azure Service Bus resources.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.ServiceBus/*/queues/read\",\r\n \"Microsoft.ServiceBus/*/topics/read\",\r\n \"Microsoft.ServiceBus/*/topics/subscriptions/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.ServiceBus/*/receive/action\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-05-10T06:43:01.6343849Z\",\r\n \"updatedOn\": \"2019-08-21T22:55:24.3423558Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/4f6d3b9b-027b-4f4c-9142-0e5a2a2247e0\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"4f6d3b9b-027b-4f4c-9142-0e5a2a2247e0\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Azure Service Bus Data Sender\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Allows for send access to Azure Service Bus resources.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.ServiceBus/*/queues/read\",\r\n \"Microsoft.ServiceBus/*/topics/read\",\r\n \"Microsoft.ServiceBus/*/topics/subscriptions/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.ServiceBus/*/send/action\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-05-10T06:43:46.7046934Z\",\r\n \"updatedOn\": \"2019-08-21T22:57:12.2555683Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/69a216fc-b8fb-44d8-bc22-1f3c2cd27a39\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"69a216fc-b8fb-44d8-bc22-1f3c2cd27a39\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Storage File Data SMB Share Reader\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Allows for read access to Azure File Share over SMB\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.Storage/storageAccounts/fileServices/fileshares/files/read\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-07-01T20:19:31.8620471Z\",\r\n \"updatedOn\": \"2019-08-07T01:00:41.9223409Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/aba4ae5f-2193-4029-9191-0cb91df5e314\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"aba4ae5f-2193-4029-9191-0cb91df5e314\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Storage File Data SMB Share Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Allows for read, write, and delete access in Azure Storage file shares over SMB\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.Storage/storageAccounts/fileServices/fileshares/files/read\",\r\n \"Microsoft.Storage/storageAccounts/fileServices/fileshares/files/write\",\r\n \"Microsoft.Storage/storageAccounts/fileServices/fileshares/files/delete\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-07-01T20:54:35.483431Z\",\r\n \"updatedOn\": \"2019-08-07T01:05:24.4309872Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/0c867c2a-1d8c-454a-a3db-ab2ea1bdc8bb\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"0c867c2a-1d8c-454a-a3db-ab2ea1bdc8bb\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Private DNS Zone Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage private DNS zone resources, but not the virtual networks they are linked to.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\",\r\n \"Microsoft.Network/privateDnsZones/*\",\r\n \"Microsoft.Network/privateDnsOperationResults/*\",\r\n \"Microsoft.Network/privateDnsOperationStatuses/*\",\r\n \"Microsoft.Network/virtualNetworks/read\",\r\n \"Microsoft.Network/virtualNetworks/join/action\",\r\n \"Microsoft.Authorization/*/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-07-10T19:31:15.5645518Z\",\r\n \"updatedOn\": \"2019-07-11T21:12:01.7260648Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/b12aa53e-6015-4669-85d0-8515ebb3ae7f\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"b12aa53e-6015-4669-85d0-8515ebb3ae7f\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Storage Blob Delegator\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Allows for generation of a user delegation key which can be used to sign SAS tokens\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Storage/storageAccounts/blobServices/generateUserDelegationKey/action\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-07-23T00:51:16.3376761Z\",\r\n \"updatedOn\": \"2019-07-23T01:14:31.8778475Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/db58b8e5-c6ad-4a2a-8342-4190687cbf4a\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"db58b8e5-c6ad-4a2a-8342-4190687cbf4a\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Desktop Virtualization User\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Allows user to use the applications in an application group.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.DesktopVirtualization/applicationGroups/useApplications/action\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-08-07T00:29:03.8727621Z\",\r\n \"updatedOn\": \"2019-08-07T00:29:03.8727621Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/1d18fff3-a72a-46b5-b4a9-0b38a3cd7e63\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"1d18fff3-a72a-46b5-b4a9-0b38a3cd7e63\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Storage File Data SMB Share Elevated Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Allows for read, write, delete and modify NTFS permission access in Azure Storage file shares over SMB\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.Storage/storageAccounts/fileServices/fileshares/files/read\",\r\n \"Microsoft.Storage/storageAccounts/fileServices/fileshares/files/write\",\r\n \"Microsoft.Storage/storageAccounts/fileServices/fileshares/files/delete\",\r\n \"Microsoft.Storage/storageAccounts/fileServices/fileshares/files/modifypermissions/action\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-08-07T01:35:36.9935457Z\",\r\n \"updatedOn\": \"2019-08-07T01:35:36.9935457Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/a7264617-510b-434b-a828-9731dc254ea7\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"a7264617-510b-434b-a828-9731dc254ea7\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Blueprint Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Can manage blueprint definitions, but not assign them.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Blueprint/blueprints/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-08-14T21:55:16.9683949Z\",\r\n \"updatedOn\": \"2019-08-17T00:10:55.7494677Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/41077137-e803-4205-871c-5a86e6a753b4\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"41077137-e803-4205-871c-5a86e6a753b4\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Blueprint Operator\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Can assign existing published blueprints, but cannot create new blueprints. NOTE: this only works if the assignment is done with a user-assigned managed identity.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Blueprint/blueprintAssignments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-08-14T21:56:48.7897875Z\",\r\n \"updatedOn\": \"2019-08-17T00:06:02.6509737Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/437d2ced-4a38-4302-8479-ed2bcb43d090\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"437d2ced-4a38-4302-8479-ed2bcb43d090\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Azure Sentinel Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Azure Sentinel Contributor\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.SecurityInsights/*\",\r\n \"Microsoft.OperationalInsights/workspaces/analytics/query/action\",\r\n \"Microsoft.OperationalInsights/workspaces/*/read\",\r\n \"Microsoft.OperationalInsights/workspaces/savedSearches/*\",\r\n \"Microsoft.OperationsManagement/solutions/read\",\r\n \"Microsoft.OperationalInsights/workspaces/query/read\",\r\n \"Microsoft.OperationalInsights/workspaces/query/*/read\",\r\n \"Microsoft.OperationalInsights/workspaces/dataSources/read\",\r\n \"Microsoft.Insights/workbooks/*\",\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-08-28T16:39:03.8725173Z\",\r\n \"updatedOn\": \"2020-03-11T15:20:51.6768533Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/ab8e14d6-4a74-4a29-9ba8-549422addade\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"ab8e14d6-4a74-4a29-9ba8-549422addade\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Azure Sentinel Responder\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Azure Sentinel Responder\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.SecurityInsights/*/read\",\r\n \"Microsoft.SecurityInsights/cases/*\",\r\n \"Microsoft.SecurityInsights/incidents/*\",\r\n \"Microsoft.OperationalInsights/workspaces/analytics/query/action\",\r\n \"Microsoft.OperationalInsights/workspaces/*/read\",\r\n \"Microsoft.OperationalInsights/workspaces/dataSources/read\",\r\n \"Microsoft.OperationalInsights/workspaces/savedSearches/read\",\r\n \"Microsoft.OperationsManagement/solutions/read\",\r\n \"Microsoft.OperationalInsights/workspaces/query/read\",\r\n \"Microsoft.OperationalInsights/workspaces/query/*/read\",\r\n \"Microsoft.OperationalInsights/workspaces/dataSources/read\",\r\n \"Microsoft.Insights/workbooks/read\",\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-08-28T16:54:07.6467264Z\",\r\n \"updatedOn\": \"2020-03-11T15:32:07.2560269Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/3e150937-b8fe-4cfb-8069-0eaf05ecd056\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"3e150937-b8fe-4cfb-8069-0eaf05ecd056\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Azure Sentinel Reader\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Azure Sentinel Reader\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.SecurityInsights/*/read\",\r\n \"Microsoft.OperationalInsights/workspaces/analytics/query/action\",\r\n \"Microsoft.OperationalInsights/workspaces/*/read\",\r\n \"Microsoft.OperationalInsights/workspaces/LinkedServices/read\",\r\n \"Microsoft.OperationalInsights/workspaces/savedSearches/read\",\r\n \"Microsoft.OperationsManagement/solutions/read\",\r\n \"Microsoft.OperationalInsights/workspaces/query/read\",\r\n \"Microsoft.OperationalInsights/workspaces/query/*/read\",\r\n \"Microsoft.OperationalInsights/workspaces/dataSources/read\",\r\n \"Microsoft.Insights/workbooks/read\",\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-08-28T16:58:50.1132117Z\",\r\n \"updatedOn\": \"2020-03-11T15:38:26.8768901Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/8d289c81-5878-46d4-8554-54e1e3d8b5cb\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"8d289c81-5878-46d4-8554-54e1e3d8b5cb\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Workbook Reader\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Can read workbooks.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"microsoft.insights/workbooks/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-08-28T20:56:17.680814Z\",\r\n \"updatedOn\": \"2019-08-28T21:43:05.0202124Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/b279062a-9be3-42a0-92ae-8b3cf002ec4d\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"b279062a-9be3-42a0-92ae-8b3cf002ec4d\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Workbook Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Can save shared workbooks.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Insights/workbooks/write\",\r\n \"Microsoft.Insights/workbooks/delete\",\r\n \"Microsoft.Insights/workbooks/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-08-28T20:59:42.4820277Z\",\r\n \"updatedOn\": \"2020-01-22T00:05:20.938721Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/e8ddcd69-c73f-4f9f-9844-4100522f16ad\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"e8ddcd69-c73f-4f9f-9844-4100522f16ad\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Policy Insights Data Writer (Preview)\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Allows read access to resource policies and write access to resource component policy events.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/policyassignments/read\",\r\n \"Microsoft.Authorization/policydefinitions/read\",\r\n \"Microsoft.Authorization/policysetdefinitions/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.PolicyInsights/checkDataPolicyCompliance/action\",\r\n \"Microsoft.PolicyInsights/policyEvents/logDataEvents/action\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-09-19T19:35:20.9504127Z\",\r\n \"updatedOn\": \"2019-09-19T19:37:02.5331596Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/66bb4e9e-b016-4a94-8249-4c0511c2be84\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"66bb4e9e-b016-4a94-8249-4c0511c2be84\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"SignalR AccessKey Reader\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Read SignalR Service Access Keys\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.SignalRService/*/read\",\r\n \"Microsoft.SignalRService/SignalR/listkeys/action\",\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-09-20T09:33:19.6236874Z\",\r\n \"updatedOn\": \"2019-09-20T09:33:19.6236874Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/04165923-9d83-45d5-8227-78b77b0a687e\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"04165923-9d83-45d5-8227-78b77b0a687e\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"SignalR Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Create, Read, Update, and Delete SignalR service resources\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.SignalRService/*\",\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-09-20T09:58:09.0009662Z\",\r\n \"updatedOn\": \"2019-09-20T09:58:09.0009662Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/8cf5e20a-e4b2-4e9d-b3a1-5ceb692c2761\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"8cf5e20a-e4b2-4e9d-b3a1-5ceb692c2761\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Azure Connected Machine Onboarding\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Can onboard Azure Connected Machines.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.HybridCompute/machines/read\",\r\n \"Microsoft.HybridCompute/machines/write\",\r\n \"Microsoft.GuestConfiguration/guestConfigurationAssignments/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-10-23T20:15:07.137287Z\",\r\n \"updatedOn\": \"2019-11-03T18:26:59.2060282Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/b64e21ea-ac4e-4cdf-9dc9-5b892992bee7\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"b64e21ea-ac4e-4cdf-9dc9-5b892992bee7\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Azure Connected Machine Resource Administrator\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Can read, write, delete and re-onboard Azure Connected Machines.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.HybridCompute/machines/read\",\r\n \"Microsoft.HybridCompute/machines/write\",\r\n \"Microsoft.HybridCompute/machines/delete\",\r\n \"Microsoft.HybridCompute/machines/reconnect/action\",\r\n \"Microsoft.HybridCompute/*/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-10-23T20:24:59.1474607Z\",\r\n \"updatedOn\": \"2019-10-24T18:57:01.0320416Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/cd570a14-e51a-42ad-bac8-bafd67325302\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"cd570a14-e51a-42ad-bac8-bafd67325302\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Managed Services Registration assignment Delete Role\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Managed Services Registration Assignment Delete Role allows the managing tenant users to delete the registration assignment assigned to their tenant.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.ManagedServices/registrationAssignments/read\",\r\n \"Microsoft.ManagedServices/registrationAssignments/delete\",\r\n \"Microsoft.ManagedServices/operationStatuses/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-10-23T22:33:33.1183469Z\",\r\n \"updatedOn\": \"2019-10-24T21:49:09.3875276Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/91c1777a-f3dc-4fae-b103-61d183457e46\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"91c1777a-f3dc-4fae-b103-61d183457e46\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"App Configuration Data Owner\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Allows full access to App Configuration data.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.AppConfiguration/configurationStores/*/read\",\r\n \"Microsoft.AppConfiguration/configurationStores/*/write\",\r\n \"Microsoft.AppConfiguration/configurationStores/*/delete\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-10-25T18:41:40.1185063Z\",\r\n \"updatedOn\": \"2019-10-25T18:41:40.1185063Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/5ae67dd6-50cb-40e7-96ff-dc2bfa4b606b\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"5ae67dd6-50cb-40e7-96ff-dc2bfa4b606b\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"App Configuration Data Reader\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Allows read access to App Configuration data.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.AppConfiguration/configurationStores/*/read\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-10-25T18:45:33.7975332Z\",\r\n \"updatedOn\": \"2019-10-25T18:45:33.7975332Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/516239f1-63e1-4d78-a4de-a74fb236a071\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"516239f1-63e1-4d78-a4de-a74fb236a071\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Kubernetes Cluster - Azure Arc Onboarding\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Role definition to authorize any user/service to create connectedClusters resource\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Resources/deployments/write\",\r\n \"Microsoft.Resources/subscriptions/operationresults/read\",\r\n \"Microsoft.Resources/subscriptions/read\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Kubernetes/connectedClusters/Write\",\r\n \"Microsoft.Kubernetes/connectedClusters/read\",\r\n \"Microsoft.Support/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-11-18T17:00:02.2087147Z\",\r\n \"updatedOn\": \"2020-02-10T22:40:48.3317559Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/34e09817-6cbe-4d01-b1a2-e0eac5743d41\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"34e09817-6cbe-4d01-b1a2-e0eac5743d41\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Experimentation Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Experimentation Contributor\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.Experimentation/experimentWorkspaces/managementGroups/read\",\r\n \"Microsoft.Experimentation/experimentWorkspaces/managementGroups/write\",\r\n \"Microsoft.Experimentation/experimentWorkspaces/managementGroups/delete\",\r\n \"Microsoft.Experimentation/experimentWorkspaces/experimentationGroups/read\",\r\n \"Microsoft.Experimentation/experimentWorkspaces/experimentationGroups/write\",\r\n \"Microsoft.Experimentation/experimentWorkspaces/experimentationGroups/delete\",\r\n \"Microsoft.Experimentation/experimentWorkspaces/read\",\r\n \"Microsoft.Experimentation/experimentWorkspaces/write\",\r\n \"Microsoft.Experimentation/experimentWorkspaces/delete\",\r\n \"Microsoft.Experimentation/experimentWorkspaces/experimentationGroups/sections/read\",\r\n \"Microsoft.Experimentation/experimentWorkspaces/experimentationGroups/sections/write\",\r\n \"Microsoft.Experimentation/experimentWorkspaces/experimentationGroups/sections/delete\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-12-13T00:08:08.6679591Z\",\r\n \"updatedOn\": \"2020-02-12T18:44:32.8386216Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/7f646f1b-fa08-80eb-a22b-edd6ce5c915c\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"7f646f1b-fa08-80eb-a22b-edd6ce5c915c\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"QnA Maker Reader\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": null,\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.CognitiveServices/accounts/QnAMaker/knowledgebases/download/read\",\r\n \"Microsoft.CognitiveServices/accounts/QnAMaker/knowledgebases/read\",\r\n \"Microsoft.CognitiveServices/accounts/QnAMaker/alterations/read\",\r\n \"Microsoft.CognitiveServices/accounts/QnAMaker/knowledgebases/generateanswer/action\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-12-17T18:26:12.3329439Z\",\r\n \"updatedOn\": \"2019-12-17T18:26:12.3329439Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/466ccd10-b268-4a11-b098-b4849f024126\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"466ccd10-b268-4a11-b098-b4849f024126\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"QnA Maker Editor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": null,\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.CognitiveServices/accounts/QnAMaker/knowledgebases/download/read\",\r\n \"Microsoft.CognitiveServices/accounts/QnAMaker/knowledgebases/read\",\r\n \"Microsoft.CognitiveServices/accounts/QnAMaker/alterations/read\",\r\n \"Microsoft.CognitiveServices/accounts/QnAMaker/knowledgebases/generateanswer/action\",\r\n \"Microsoft.CognitiveServices/accounts/QnAMaker/knowledgebases/create/write\",\r\n \"Microsoft.CognitiveServices/accounts/QnAMaker/knowledgebases/write\",\r\n \"Microsoft.CognitiveServices/accounts/QnAMaker/alterations/write\",\r\n \"Microsoft.CognitiveServices/accounts/QnAMaker/knowledgebases/train/action\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-12-17T18:27:30.6434556Z\",\r\n \"updatedOn\": \"2019-12-17T18:27:30.6434556Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/f4cc2bf9-21be-47a1-bdf1-5c5804381025\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"f4cc2bf9-21be-47a1-bdf1-5c5804381025\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Experimentation Administrator\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Experimentation Administrator\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.Experimentation/experimentWorkspaces/managementGroups/read\",\r\n \"Microsoft.Experimentation/experimentWorkspaces/managementGroups/write\",\r\n \"Microsoft.Experimentation/experimentWorkspaces/managementGroups/delete\",\r\n \"Microsoft.Experimentation/experimentWorkspaces/managementGroups/admin/action\",\r\n \"Microsoft.Experimentation/experimentWorkspaces/experimentationGroups/admin/action\",\r\n \"Microsoft.Experimentation/experimentWorkspaces/experimentationGroups/read\",\r\n \"Microsoft.Experimentation/experimentWorkspaces/experimentationGroups/write\",\r\n \"Microsoft.Experimentation/experimentWorkspaces/experimentationGroups/delete\",\r\n \"Microsoft.Experimentation/experimentWorkspaces/read\",\r\n \"Microsoft.Experimentation/experimentWorkspaces/write\",\r\n \"Microsoft.Experimentation/experimentWorkspaces/delete\",\r\n \"Microsoft.Experimentation/experimentWorkspaces/admin/action\",\r\n \"Microsoft.Experimentation/experimentWorkspaces/experimentationGroups/sections/read\",\r\n \"Microsoft.Experimentation/experimentWorkspaces/experimentationGroups/sections/write\",\r\n \"Microsoft.Experimentation/experimentWorkspaces/experimentationGroups/sections/delete\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2019-12-18T22:46:33.1116612Z\",\r\n \"updatedOn\": \"2020-02-12T18:44:03.087283Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/7f646f1b-fa08-80eb-a33b-edd6ce5c915c\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"7f646f1b-fa08-80eb-a33b-edd6ce5c915c\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Remote Rendering Administrator\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Provides user with conversion, manage session, rendering and diagnostics capabilities for Azure Remote Rendering\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.MixedReality/RemoteRenderingAccounts/convert/action\",\r\n \"Microsoft.MixedReality/RemoteRenderingAccounts/convert/read\",\r\n \"Microsoft.MixedReality/RemoteRenderingAccounts/convert/delete\",\r\n \"Microsoft.MixedReality/RemoteRenderingAccounts/managesessions/read\",\r\n \"Microsoft.MixedReality/RemoteRenderingAccounts/managesessions/action\",\r\n \"Microsoft.MixedReality/RemoteRenderingAccounts/managesessions/delete\",\r\n \"Microsoft.MixedReality/RemoteRenderingAccounts/render/read\",\r\n \"Microsoft.MixedReality/RemoteRenderingAccounts/diagnostic/read\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2020-01-23T18:15:31.3450348Z\",\r\n \"updatedOn\": \"2020-01-23T18:15:31.3450348Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/3df8b902-2a6f-47c7-8cc5-360e9b272a7e\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"3df8b902-2a6f-47c7-8cc5-360e9b272a7e\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Remote Rendering Client\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Provides user with manage session, rendering and diagnostics capabilities for Azure Remote Rendering.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.MixedReality/RemoteRenderingAccounts/managesessions/read\",\r\n \"Microsoft.MixedReality/RemoteRenderingAccounts/managesessions/action\",\r\n \"Microsoft.MixedReality/RemoteRenderingAccounts/managesessions/delete\",\r\n \"Microsoft.MixedReality/RemoteRenderingAccounts/render/read\",\r\n \"Microsoft.MixedReality/RemoteRenderingAccounts/diagnostic/read\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2020-01-23T18:32:52.7069824Z\",\r\n \"updatedOn\": \"2020-01-23T18:32:52.7069824Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/d39065c4-c120-43c9-ab0a-63eed9795f0a\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"d39065c4-c120-43c9-ab0a-63eed9795f0a\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Managed Application Contributor Role\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Allows for creating managed application resources.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"*/read\",\r\n \"Microsoft.Solutions/applications/*\",\r\n \"Microsoft.Solutions/register/action\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/*\",\r\n \"Microsoft.Resources/deployments/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2020-02-08T03:39:11.8933879Z\",\r\n \"updatedOn\": \"2020-02-08T03:39:11.8933879Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/641177b8-a67a-45b9-a033-47bc880bb21e\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"641177b8-a67a-45b9-a033-47bc880bb21e\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Security Assessment Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you push assessments to Security Center\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Security/assessments/write\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2020-02-13T08:23:47.7656161Z\",\r\n \"updatedOn\": \"2020-02-13T08:23:47.7656161Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/612c2aa1-cb24-443b-ac28-3ab7272de6f5\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"612c2aa1-cb24-443b-ac28-3ab7272de6f5\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Tag Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage tags on entities, without providing access to the entities themselves.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/read\",\r\n \"Microsoft.Resources/subscriptions/resourceGroups/resources/read\",\r\n \"Microsoft.Resources/subscriptions/resources/read\",\r\n \"Microsoft.Resources/deployments/*\",\r\n \"Microsoft.Insights/alertRules/*\",\r\n \"Microsoft.Support/*\",\r\n \"Microsoft.Resources/tags/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2020-02-18T23:19:19.2977644Z\",\r\n \"updatedOn\": \"2020-02-19T00:04:58.9214962Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/4a9ae827-6dc8-4573-8ac7-8239d42aa03f\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"4a9ae827-6dc8-4573-8ac7-8239d42aa03f\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Integration Service Environment Developer\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Allows developers to create and update workflows, integration accounts and API connections in integration service environments.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Support/*\",\r\n \"Microsoft.Logic/integrationServiceEnvironments/read\",\r\n \"Microsoft.Logic/integrationServiceEnvironments/join/action\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2020-02-20T21:09:00.5627875Z\",\r\n \"updatedOn\": \"2020-02-20T21:36:24.619073Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/c7aa55d3-1abb-444a-a5ca-5e51e485d6ec\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"c7aa55d3-1abb-444a-a5ca-5e51e485d6ec\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Integration Service Environment Contributor\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Lets you manage integration service environments, but not access to them.\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Authorization/*/read\",\r\n \"Microsoft.Support/*\",\r\n \"Microsoft.Logic/integrationServiceEnvironments/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2020-02-20T21:10:44.4008319Z\",\r\n \"updatedOn\": \"2020-02-20T21:41:56.7983599Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/a41e2c5b-bd99-4a07-88f4-9bf657a760b8\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"a41e2c5b-bd99-4a07-88f4-9bf657a760b8\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Marketplace Admin\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Administrator of marketplace resource provider\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.Marketplace/privateStores/write\",\r\n \"Microsoft.Marketplace/privateStores/action\",\r\n \"Microsoft.Marketplace/privateStores/delete\",\r\n \"Microsoft.Marketplace/privateStores/offers/write\",\r\n \"Microsoft.Marketplace/privateStores/offers/action\",\r\n \"Microsoft.Marketplace/privateStores/offers/delete\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2020-02-26T14:19:50.9681015Z\",\r\n \"updatedOn\": \"2020-02-26T14:19:50.9681015Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/dd920d6d-f481-47f1-b461-f338c46b2d9f\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"dd920d6d-f481-47f1-b461-f338c46b2d9f\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Azure Kubernetes Service Contributor Role\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Grants access to read and write Azure Kubernetes Service clusters\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [\r\n \"Microsoft.ContainerService/managedClusters/read\",\r\n \"Microsoft.ContainerService/managedClusters/write\",\r\n \"Microsoft.Resources/deployments/*\"\r\n ],\r\n \"notActions\": [],\r\n \"dataActions\": [],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2020-02-27T19:27:15.073997Z\",\r\n \"updatedOn\": \"2020-02-28T02:34:14.5162305Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/ed7f3fbd-7b88-4dd4-9017-9adb7ce333f8\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"ed7f3fbd-7b88-4dd4-9017-9adb7ce333f8\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Azure Digital Twins Reader (Preview)\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Read-only role for Digital Twins data-plane properties\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.DigitalTwins/digitaltwins/read\",\r\n \"Microsoft.DigitalTwins/models/read\",\r\n \"Microsoft.DigitalTwins/query/action\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2020-03-10T23:48:14.7057381Z\",\r\n \"updatedOn\": \"2020-03-10T23:48:14.7057381Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/d57506d4-4c8d-48b1-8587-93c323f6a5a3\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"d57506d4-4c8d-48b1-8587-93c323f6a5a3\"\r\n },\r\n {\r\n \"properties\": {\r\n \"roleName\": \"Azure Digital Twins Owner (Preview)\",\r\n \"type\": \"BuiltInRole\",\r\n \"description\": \"Full access role for Digital Twins data-plane\",\r\n \"assignableScopes\": [\r\n \"/\"\r\n ],\r\n \"permissions\": [\r\n {\r\n \"actions\": [],\r\n \"notActions\": [],\r\n \"dataActions\": [\r\n \"Microsoft.DigitalTwins/eventroutes/*\",\r\n \"Microsoft.DigitalTwins/digitaltwins/*\",\r\n \"Microsoft.DigitalTwins/digitaltwins/commands/*\",\r\n \"Microsoft.DigitalTwins/digitaltwins/relationships/*\",\r\n \"Microsoft.DigitalTwins/models/*\",\r\n \"Microsoft.DigitalTwins/query/*\"\r\n ],\r\n \"notDataActions\": []\r\n }\r\n ],\r\n \"createdOn\": \"2020-03-10T23:49:33.782193Z\",\r\n \"updatedOn\": \"2020-03-10T23:49:33.782193Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": null\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/bcd981a7-7f74-457b-83e1-cceb9e632ffe\",\r\n \"type\": \"Microsoft.Authorization/roleDefinitions\",\r\n \"name\": \"bcd981a7-7f74-457b-83e1-cceb9e632ffe\"\r\n }\r\n ]\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "//subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/providers/Microsoft.Authorization/roleAssignments/7d0e2524-2f62-4ec8-bb73-e3c4cd26b05a?api-version=2018-09-01-preview",
+ "EncodedRequestUri": "Ly9zdWJzY3JpcHRpb25zLzQ2ODQxYzBlLTY5YzgtNGIxNy1hZjQ2LTY2MjZlY2IxNWZjMi9yZXNvdXJjZUdyb3Vwcy9ocGMwMzEzeDYzNmQyMTExL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZS9zdG9yYWdlQWNjb3VudHMvY21kbGV0c2EvcHJvdmlkZXJzL01pY3Jvc29mdC5BdXRob3JpemF0aW9uL3JvbGVBc3NpZ25tZW50cy83ZDBlMjUyNC0yZjYyLTRlYzgtYmI3My1lM2M0Y2QyNmIwNWE/YXBpLXZlcnNpb249MjAxOC0wOS0wMS1wcmV2aWV3",
+ "RequestMethod": "PUT",
+ "RequestBody": "{\r\n \"properties\": {\r\n \"roleDefinitionId\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/17d1049b-9a84-46fb-8f53-869881c3d3ab\",\r\n \"principalId\": \"831d4223-7a3c-4121-a445-1e423591e57b\",\r\n \"canDelegate\": false\r\n }\r\n}",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "6e9c3256-6f35-4da4-89b9-c9a89c5601f4"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Authorization.AuthorizationManagementClient/2.11.0.0"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Content-Length": [
+ "281"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-request-id": [
+ "0b27df78-4ec4-4e0c-8a77-0964ca163894"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "Set-Cookie": [
+ "x-ms-gateway-slice=Production; path=/; secure; HttpOnly; SameSite=None"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1199"
+ ],
+ "x-ms-correlation-request-id": [
+ "e1421be5-d96c-4f0c-af25-b60fdc042f66"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T141824Z:e1421be5-d96c-4f0c-af25-b60fdc042f66"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:18:23 GMT"
+ ],
+ "Content-Length": [
+ "891"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"properties\": {\r\n \"roleDefinitionId\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.Authorization/roleDefinitions/17d1049b-9a84-46fb-8f53-869881c3d3ab\",\r\n \"principalId\": \"831d4223-7a3c-4121-a445-1e423591e57b\",\r\n \"principalType\": \"ServicePrincipal\",\r\n \"scope\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa\",\r\n \"createdOn\": \"2020-03-13T14:18:23.2820297Z\",\r\n \"updatedOn\": \"2020-03-13T14:18:23.2820297Z\",\r\n \"createdBy\": null,\r\n \"updatedBy\": \"20c5b867-147a-4973-b21c-bbf6e4d3da3b\"\r\n },\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/providers/Microsoft.Authorization/roleAssignments/7d0e2524-2f62-4ec8-bb73-e3c4cd26b05a\",\r\n \"type\": \"Microsoft.Authorization/roleAssignments\",\r\n \"name\": \"7d0e2524-2f62-4ec8-bb73-e3c4cd26b05a\"\r\n}",
+ "StatusCode": 201
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr?api-version=2019-06-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlR3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlL3N0b3JhZ2VBY2NvdW50cy9jbWRsZXRzYS9ibG9iU2VydmljZXMvZGVmYXVsdC9jb250YWluZXJzL2NtZGxldGNvbnRucj9hcGktdmVyc2lvbj0yMDE5LTA2LTAx",
+ "RequestMethod": "PUT",
+ "RequestBody": "{\r\n \"properties\": {\r\n \"publicAccess\": \"Blob\"\r\n }\r\n}",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "315a2d2a-04c2-4384-ac9b-a22ffc80876d"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Storage.StorageManagementClient/13.2.0.0"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Content-Length": [
+ "56"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "ETag": [
+ "\"0x8D7C75A173593A4\""
+ ],
+ "x-ms-request-id": [
+ "e01fa1dd-2706-4f0a-af81-96621e452f56"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "Server": [
+ "Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1198"
+ ],
+ "x-ms-correlation-request-id": [
+ "cd9ef561-8742-4a33-8491-dd5ab7fcdf75"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142324Z:cd9ef561-8742-4a33-8491-dd5ab7fcdf75"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:23:23 GMT"
+ ],
+ "Content-Length": [
+ "367"
+ ],
+ "Content-Type": [
+ "application/json"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr\",\r\n \"name\": \"cmdletcontnr\",\r\n \"type\": \"Microsoft.Storage/storageAccounts/blobServices/containers\",\r\n \"properties\": {\r\n \"publicAccess\": \"Blob\",\r\n \"hasImmutabilityPolicy\": false,\r\n \"hasLegalHold\": false\r\n }\r\n}",
+ "StatusCode": 201
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourcegroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/msazure?api-version=2019-11-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlZ3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlQ2FjaGUvY2FjaGVzL0NhY2hlLWhwYzAzMTN4NjM2ZDIxMTEvc3RvcmFnZVRhcmdldHMvbXNhenVyZT9hcGktdmVyc2lvbj0yMDE5LTExLTAx",
+ "RequestMethod": "PUT",
+ "RequestBody": "{\r\n \"properties\": {\r\n \"junctions\": [\r\n {\r\n \"namespacePath\": \"/junction\",\r\n \"targetPath\": \"/\"\r\n }\r\n ],\r\n \"targetType\": \"clfs\",\r\n \"clfs\": {\r\n \"target\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr\"\r\n }\r\n }\r\n}",
+ "RequestHeaders": {
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.StorageCache.StorageCacheManagementClient/1.0.0.0"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Content-Length": [
+ "390"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "Azure-AsyncOperation": [
+ "https://management.azure.com/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/providers/Microsoft.StorageCache/locations/eastus/ascOperations/b34d4f8d-822a-482b-82bb-a218afadadc5?api-version=2019-11-01"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "x-ms-served-by": [
+ "d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667,d7051dfa-e1e4-45f5-be1e-097f5f1a8eb1_132186511409211667"
+ ],
+ "x-ms-request-id": [
+ "b34d4f8d-822a-482b-82bb-a218afadadc5"
+ ],
+ "Server": [
+ "Microsoft-HTTPAPI/2.0",
+ "Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1198"
+ ],
+ "x-ms-correlation-request-id": [
+ "938d7fc9-dd05-4fa3-bf42-2a1c2153d04d"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142325Z:938d7fc9-dd05-4fa3-bf42-2a1c2153d04d"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:23:24 GMT"
+ ],
+ "Content-Length": [
+ "743"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"name\": \"msazure\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.StorageCache/caches/Cache-hpc0313x636d2111/storageTargets/msazure\",\r\n \"type\": \"Microsoft.StorageCache/caches/storageTargets\",\r\n \"location\": \"eastus\",\r\n \"properties\": {\r\n \"targetType\": \"clfs\",\r\n \"provisioningState\": \"Creating\",\r\n \"junctions\": [\r\n {\r\n \"namespacePath\": \"/junction\",\r\n \"nfsExport\": \"/\",\r\n \"targetPath\": \"/\"\r\n }\r\n ],\r\n \"clfs\": {\r\n \"target\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr\"\r\n }\r\n }\r\n}",
+ "StatusCode": 201
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts?api-version=2019-06-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlR3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlL3N0b3JhZ2VBY2NvdW50cz9hcGktdmVyc2lvbj0yMDE5LTA2LTAx",
+ "RequestMethod": "GET",
+ "RequestBody": "",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "9cddf7ab-012a-4ab9-8306-7afedc0c53a0"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Storage.StorageManagementClient/13.2.0.0"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "x-ms-request-id": [
+ "350b18c9-8a91-4494-83b7-dbd40b8af480"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "Server": [
+ "Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-reads": [
+ "11999"
+ ],
+ "x-ms-correlation-request-id": [
+ "22f0f28d-fd1e-4d54-8f03-d82c5bacb9b8"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142826Z:22f0f28d-fd1e-4d54-8f03-d82c5bacb9b8"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:28:25 GMT"
+ ],
+ "Content-Length": [
+ "1144"
+ ],
+ "Content-Type": [
+ "application/json"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"value\": [\r\n {\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"tier\": \"Standard\"\r\n },\r\n \"kind\": \"StorageV2\",\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa\",\r\n \"name\": \"cmdletsa\",\r\n \"type\": \"Microsoft.Storage/storageAccounts\",\r\n \"location\": \"eastus\",\r\n \"tags\": {},\r\n \"properties\": {\r\n \"networkAcls\": {\r\n \"bypass\": \"AzureServices\",\r\n \"virtualNetworkRules\": [],\r\n \"ipRules\": [],\r\n \"defaultAction\": \"Allow\"\r\n },\r\n \"supportsHttpsTrafficOnly\": true,\r\n \"encryption\": {\r\n \"services\": {\r\n \"file\": {\r\n \"enabled\": true,\r\n \"lastEnabledTime\": \"2020-03-13T14:17:59.0324555Z\"\r\n },\r\n \"blob\": {\r\n \"enabled\": true,\r\n \"lastEnabledTime\": \"2020-03-13T14:17:59.0324555Z\"\r\n }\r\n },\r\n \"keySource\": \"Microsoft.Storage\"\r\n },\r\n \"accessTier\": \"Hot\",\r\n \"provisioningState\": \"Succeeded\",\r\n \"creationTime\": \"2020-03-13T14:17:58.9542784Z\",\r\n \"primaryEndpoints\": {\r\n \"dfs\": \"https://cmdletsa.dfs.core.windows.net/\",\r\n \"web\": \"https://cmdletsa.z13.web.core.windows.net/\",\r\n \"blob\": \"https://cmdletsa.blob.core.windows.net/\",\r\n \"queue\": \"https://cmdletsa.queue.core.windows.net/\",\r\n \"table\": \"https://cmdletsa.table.core.windows.net/\",\r\n \"file\": \"https://cmdletsa.file.core.windows.net/\"\r\n },\r\n \"primaryLocation\": \"eastus\",\r\n \"statusOfPrimary\": \"available\"\r\n }\r\n }\r\n ]\r\n}",
+ "StatusCode": 200
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr0?api-version=2019-06-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlR3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlL3N0b3JhZ2VBY2NvdW50cy9jbWRsZXRzYS9ibG9iU2VydmljZXMvZGVmYXVsdC9jb250YWluZXJzL2NtZGxldGNvbnRucjA/YXBpLXZlcnNpb249MjAxOS0wNi0wMQ==",
+ "RequestMethod": "PUT",
+ "RequestBody": "{\r\n \"properties\": {\r\n \"publicAccess\": \"Blob\"\r\n }\r\n}",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "f6230fd6-4f24-491c-8f9d-07e69e999b54"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Storage.StorageManagementClient/13.2.0.0"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Content-Length": [
+ "56"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "ETag": [
+ "\"0x8D7C75ACB01565A\""
+ ],
+ "x-ms-request-id": [
+ "fdafc3b5-1ad9-4f04-944c-a1533fb3b758"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "Server": [
+ "Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1199"
+ ],
+ "x-ms-correlation-request-id": [
+ "2241727a-5d57-4adb-a041-8bd8b8effb8e"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142826Z:2241727a-5d57-4adb-a041-8bd8b8effb8e"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:28:26 GMT"
+ ],
+ "Content-Length": [
+ "369"
+ ],
+ "Content-Type": [
+ "application/json"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr0\",\r\n \"name\": \"cmdletcontnr0\",\r\n \"type\": \"Microsoft.Storage/storageAccounts/blobServices/containers\",\r\n \"properties\": {\r\n \"publicAccess\": \"Blob\",\r\n \"hasImmutabilityPolicy\": false,\r\n \"hasLegalHold\": false\r\n }\r\n}",
+ "StatusCode": 201
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr1?api-version=2019-06-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlR3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlL3N0b3JhZ2VBY2NvdW50cy9jbWRsZXRzYS9ibG9iU2VydmljZXMvZGVmYXVsdC9jb250YWluZXJzL2NtZGxldGNvbnRucjE/YXBpLXZlcnNpb249MjAxOS0wNi0wMQ==",
+ "RequestMethod": "PUT",
+ "RequestBody": "{\r\n \"properties\": {\r\n \"publicAccess\": \"Blob\"\r\n }\r\n}",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "d99c46a9-c49d-4b22-a48a-47ce3a281a23"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Storage.StorageManagementClient/13.2.0.0"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Content-Length": [
+ "56"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "ETag": [
+ "\"0x8D7C75ACB2E61EC\""
+ ],
+ "x-ms-request-id": [
+ "7be79da1-fd7a-4f51-8d5a-f46d81635025"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "Server": [
+ "Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1198"
+ ],
+ "x-ms-correlation-request-id": [
+ "3af9d957-97d7-4441-b0fc-c020bf5d1df9"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142826Z:3af9d957-97d7-4441-b0fc-c020bf5d1df9"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:28:26 GMT"
+ ],
+ "Content-Length": [
+ "369"
+ ],
+ "Content-Type": [
+ "application/json"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr1\",\r\n \"name\": \"cmdletcontnr1\",\r\n \"type\": \"Microsoft.Storage/storageAccounts/blobServices/containers\",\r\n \"properties\": {\r\n \"publicAccess\": \"Blob\",\r\n \"hasImmutabilityPolicy\": false,\r\n \"hasLegalHold\": false\r\n }\r\n}",
+ "StatusCode": 201
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr2?api-version=2019-04-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlR3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlL3N0b3JhZ2VBY2NvdW50cy9jbWRsZXRzYS9ibG9iU2VydmljZXMvZGVmYXVsdC9jb250YWluZXJzL2NtZGxldGNvbnRucjI/YXBpLXZlcnNpb249MjAxOS0wNi0wMQ==",
+ "RequestMethod": "PUT",
+ "RequestBody": "{\r\n \"properties\": {\r\n \"publicAccess\": \"Blob\"\r\n }\r\n}",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "4fbe0149-9532-43d2-af12-e6f98e71d812"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Storage.StorageManagementClient/13.2.0.0"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Content-Length": [
+ "56"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "ETag": [
+ "\"0x8D7C75ACB594A37\""
+ ],
+ "x-ms-request-id": [
+ "fceb573b-523b-4d70-9ada-c064d1ea05fb"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "Server": [
+ "Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1197"
+ ],
+ "x-ms-correlation-request-id": [
+ "9d068f96-8f42-4a00-b654-a2a19c7f2939"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142826Z:9d068f96-8f42-4a00-b654-a2a19c7f2939"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:28:26 GMT"
+ ],
+ "Content-Length": [
+ "369"
+ ],
+ "Content-Type": [
+ "application/json"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr2\",\r\n \"name\": \"cmdletcontnr2\",\r\n \"type\": \"Microsoft.Storage/storageAccounts/blobServices/containers\",\r\n \"properties\": {\r\n \"publicAccess\": \"Blob\",\r\n \"hasImmutabilityPolicy\": false,\r\n \"hasLegalHold\": false\r\n }\r\n}",
+ "StatusCode": 201
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr3?api-version=2019-06-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlR3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlL3N0b3JhZ2VBY2NvdW50cy9jbWRsZXRzYS9ibG9iU2VydmljZXMvZGVmYXVsdC9jb250YWluZXJzL2NtZGxldGNvbnRucjM/YXBpLXZlcnNpb249MjAxOS0wNi0wMQ==",
+ "RequestMethod": "PUT",
+ "RequestBody": "{\r\n \"properties\": {\r\n \"publicAccess\": \"Blob\"\r\n }\r\n}",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "0fc8be4b-84e0-4709-b9bd-491af0589afc"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Storage.StorageManagementClient/13.2.0.0"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Content-Length": [
+ "56"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "ETag": [
+ "\"0x8D7C75ACB8B5FC4\""
+ ],
+ "x-ms-request-id": [
+ "2fc8b9e7-c849-4e0d-8956-752f6ea1851c"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "Server": [
+ "Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1196"
+ ],
+ "x-ms-correlation-request-id": [
+ "0ddbbc9a-dac0-4095-b385-8341fb804c35"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142827Z:0ddbbc9a-dac0-4095-b385-8341fb804c35"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:28:27 GMT"
+ ],
+ "Content-Length": [
+ "369"
+ ],
+ "Content-Type": [
+ "application/json"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr3\",\r\n \"name\": \"cmdletcontnr3\",\r\n \"type\": \"Microsoft.Storage/storageAccounts/blobServices/containers\",\r\n \"properties\": {\r\n \"publicAccess\": \"Blob\",\r\n \"hasImmutabilityPolicy\": false,\r\n \"hasLegalHold\": false\r\n }\r\n}",
+ "StatusCode": 201
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr4?api-version=2019-06-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlR3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlL3N0b3JhZ2VBY2NvdW50cy9jbWRsZXRzYS9ibG9iU2VydmljZXMvZGVmYXVsdC9jb250YWluZXJzL2NtZGxldGNvbnRucjQ/YXBpLXZlcnNpb249MjAxOS0wNi0wMQ==",
+ "RequestMethod": "PUT",
+ "RequestBody": "{\r\n \"properties\": {\r\n \"publicAccess\": \"Blob\"\r\n }\r\n}",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "9e1072e8-075b-4f8e-a90b-412ea9be5934"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Storage.StorageManagementClient/13.2.0.0"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Content-Length": [
+ "56"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "ETag": [
+ "\"0x8D7C75ACBB8E09A\""
+ ],
+ "x-ms-request-id": [
+ "b535e204-f3d5-400c-a2fb-4a0b56d8a51d"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "Server": [
+ "Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1195"
+ ],
+ "x-ms-correlation-request-id": [
+ "5cb057a4-6303-492d-bb17-aedd13b22b31"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142827Z:5cb057a4-6303-492d-bb17-aedd13b22b31"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:28:27 GMT"
+ ],
+ "Content-Length": [
+ "369"
+ ],
+ "Content-Type": [
+ "application/json"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr4\",\r\n \"name\": \"cmdletcontnr4\",\r\n \"type\": \"Microsoft.Storage/storageAccounts/blobServices/containers\",\r\n \"properties\": {\r\n \"publicAccess\": \"Blob\",\r\n \"hasImmutabilityPolicy\": false,\r\n \"hasLegalHold\": false\r\n }\r\n}",
+ "StatusCode": 201
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr5?api-version=2019-06-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlR3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlL3N0b3JhZ2VBY2NvdW50cy9jbWRsZXRzYS9ibG9iU2VydmljZXMvZGVmYXVsdC9jb250YWluZXJzL2NtZGxldGNvbnRucjU/YXBpLXZlcnNpb249MjAxOS0wNi0wMQ==",
+ "RequestMethod": "PUT",
+ "RequestBody": "{\r\n \"properties\": {\r\n \"publicAccess\": \"Blob\"\r\n }\r\n}",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "ec00433d-9b65-4e2d-89c5-4a30a5a16f31"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Storage.StorageManagementClient/13.2.0.0"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Content-Length": [
+ "56"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "ETag": [
+ "\"0x8D7C75ACBE3C8E9\""
+ ],
+ "x-ms-request-id": [
+ "75e9355a-ee4d-4348-a9b7-3cd2b66d55d9"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "Server": [
+ "Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1194"
+ ],
+ "x-ms-correlation-request-id": [
+ "197a6a8d-0fa4-44c6-9d82-7868b31d279b"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142827Z:197a6a8d-0fa4-44c6-9d82-7868b31d279b"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:28:27 GMT"
+ ],
+ "Content-Length": [
+ "369"
+ ],
+ "Content-Type": [
+ "application/json"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr5\",\r\n \"name\": \"cmdletcontnr5\",\r\n \"type\": \"Microsoft.Storage/storageAccounts/blobServices/containers\",\r\n \"properties\": {\r\n \"publicAccess\": \"Blob\",\r\n \"hasImmutabilityPolicy\": false,\r\n \"hasLegalHold\": false\r\n }\r\n}",
+ "StatusCode": 201
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr6?api-version=2019-06-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlR3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlL3N0b3JhZ2VBY2NvdW50cy9jbWRsZXRzYS9ibG9iU2VydmljZXMvZGVmYXVsdC9jb250YWluZXJzL2NtZGxldGNvbnRucjY/YXBpLXZlcnNpb249MjAxOS0wNi0wMQ==",
+ "RequestMethod": "PUT",
+ "RequestBody": "{\r\n \"properties\": {\r\n \"publicAccess\": \"Blob\"\r\n }\r\n}",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "f2c1938b-5d54-4219-9c15-2457732f8f68"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Storage.StorageManagementClient/13.2.0.0"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Content-Length": [
+ "56"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "ETag": [
+ "\"0x8D7C75ACC0F4D8C\""
+ ],
+ "x-ms-request-id": [
+ "a89b6764-3ef5-4bd7-88a2-960e4f0fd9c3"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "Server": [
+ "Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1193"
+ ],
+ "x-ms-correlation-request-id": [
+ "e5e36567-26f7-4da8-a89a-21803f9b8446"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142828Z:e5e36567-26f7-4da8-a89a-21803f9b8446"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:28:27 GMT"
+ ],
+ "Content-Length": [
+ "369"
+ ],
+ "Content-Type": [
+ "application/json"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr6\",\r\n \"name\": \"cmdletcontnr6\",\r\n \"type\": \"Microsoft.Storage/storageAccounts/blobServices/containers\",\r\n \"properties\": {\r\n \"publicAccess\": \"Blob\",\r\n \"hasImmutabilityPolicy\": false,\r\n \"hasLegalHold\": false\r\n }\r\n}",
+ "StatusCode": 201
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr7?api-version=2019-06-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlR3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlL3N0b3JhZ2VBY2NvdW50cy9jbWRsZXRzYS9ibG9iU2VydmljZXMvZGVmYXVsdC9jb250YWluZXJzL2NtZGxldGNvbnRucjc/YXBpLXZlcnNpb249MjAxOS0wNi0wMQ==",
+ "RequestMethod": "PUT",
+ "RequestBody": "{\r\n \"properties\": {\r\n \"publicAccess\": \"Blob\"\r\n }\r\n}",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "e93b15cb-8860-4d69-8e51-f4585ccb4c00"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Storage.StorageManagementClient/13.2.0.0"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Content-Length": [
+ "56"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "ETag": [
+ "\"0x8D7C75ACC3EA37A\""
+ ],
+ "x-ms-request-id": [
+ "6efb0bb9-bd95-4c68-aede-f2e2e67be6c7"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "Server": [
+ "Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1192"
+ ],
+ "x-ms-correlation-request-id": [
+ "a13aae56-8ce6-4e9c-9b01-106c2d707688"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142828Z:a13aae56-8ce6-4e9c-9b01-106c2d707688"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:28:28 GMT"
+ ],
+ "Content-Length": [
+ "369"
+ ],
+ "Content-Type": [
+ "application/json"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr7\",\r\n \"name\": \"cmdletcontnr7\",\r\n \"type\": \"Microsoft.Storage/storageAccounts/blobServices/containers\",\r\n \"properties\": {\r\n \"publicAccess\": \"Blob\",\r\n \"hasImmutabilityPolicy\": false,\r\n \"hasLegalHold\": false\r\n }\r\n}",
+ "StatusCode": 201
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr8?api-version=2019-06-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlR3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlL3N0b3JhZ2VBY2NvdW50cy9jbWRsZXRzYS9ibG9iU2VydmljZXMvZGVmYXVsdC9jb250YWluZXJzL2NtZGxldGNvbnRucjg/YXBpLXZlcnNpb249MjAxOS0wNi0wMQ==",
+ "RequestMethod": "PUT",
+ "RequestBody": "{\r\n \"properties\": {\r\n \"publicAccess\": \"Blob\"\r\n }\r\n}",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "f6410410-ae22-4d94-981e-a5561b7fede6"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Storage.StorageManagementClient/13.2.0.0"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Content-Length": [
+ "56"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "ETag": [
+ "\"0x8D7C75ACC6D35EE\""
+ ],
+ "x-ms-request-id": [
+ "5c82f58e-4800-4aa8-a9a1-f5e4d284b8bc"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "Server": [
+ "Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1191"
+ ],
+ "x-ms-correlation-request-id": [
+ "57c27702-4a3f-43ee-a3b9-7e97c66fdd51"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142828Z:57c27702-4a3f-43ee-a3b9-7e97c66fdd51"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:28:28 GMT"
+ ],
+ "Content-Length": [
+ "369"
+ ],
+ "Content-Type": [
+ "application/json"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr8\",\r\n \"name\": \"cmdletcontnr8\",\r\n \"type\": \"Microsoft.Storage/storageAccounts/blobServices/containers\",\r\n \"properties\": {\r\n \"publicAccess\": \"Blob\",\r\n \"hasImmutabilityPolicy\": false,\r\n \"hasLegalHold\": false\r\n }\r\n}",
+ "StatusCode": 201
+ },
+ {
+ "RequestUri": "/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr9?api-version=2019-06-01",
+ "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDY4NDFjMGUtNjljOC00YjE3LWFmNDYtNjYyNmVjYjE1ZmMyL3Jlc291cmNlR3JvdXBzL2hwYzAzMTN4NjM2ZDIxMTEvcHJvdmlkZXJzL01pY3Jvc29mdC5TdG9yYWdlL3N0b3JhZ2VBY2NvdW50cy9jbWRsZXRzYS9ibG9iU2VydmljZXMvZGVmYXVsdC9jb250YWluZXJzL2NtZGxldGNvbnRucjk/YXBpLXZlcnNpb249MjAxOS0wNi0wMQ==",
+ "RequestMethod": "PUT",
+ "RequestBody": "{\r\n \"properties\": {\r\n \"publicAccess\": \"Blob\"\r\n }\r\n}",
+ "RequestHeaders": {
+ "x-ms-client-request-id": [
+ "12199058-555c-4cd9-af1f-1ec3420e2bc7"
+ ],
+ "Accept-Language": [
+ "en-US"
+ ],
+ "User-Agent": [
+ "FxVersion/4.6.28325.01",
+ "OSName/Windows",
+ "OSVersion/Microsoft.Windows.10.0.18363.",
+ "Microsoft.Azure.Management.Storage.StorageManagementClient/13.2.0.0"
+ ],
+ "Content-Type": [
+ "application/json; charset=utf-8"
+ ],
+ "Content-Length": [
+ "56"
+ ]
+ },
+ "ResponseHeaders": {
+ "Cache-Control": [
+ "no-cache"
+ ],
+ "Pragma": [
+ "no-cache"
+ ],
+ "ETag": [
+ "\"0x8D7C75ACCA05D16\""
+ ],
+ "x-ms-request-id": [
+ "df73fc5b-8e39-4f84-aa43-6570276738db"
+ ],
+ "Strict-Transport-Security": [
+ "max-age=31536000; includeSubDomains"
+ ],
+ "Server": [
+ "Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 Microsoft-HTTPAPI/2.0"
+ ],
+ "x-ms-ratelimit-remaining-subscription-writes": [
+ "1190"
+ ],
+ "x-ms-correlation-request-id": [
+ "9f9564d8-de4a-45e0-b10e-c55fe85295ba"
+ ],
+ "x-ms-routing-request-id": [
+ "EASTUS:20200313T142829Z:9f9564d8-de4a-45e0-b10e-c55fe85295ba"
+ ],
+ "X-Content-Type-Options": [
+ "nosniff"
+ ],
+ "Date": [
+ "Fri, 13 Mar 2020 14:28:28 GMT"
+ ],
+ "Content-Length": [
+ "369"
+ ],
+ "Content-Type": [
+ "application/json"
+ ],
+ "Expires": [
+ "-1"
+ ]
+ },
+ "ResponseBody": "{\r\n \"id\": \"/subscriptions/46841c0e-69c8-4b17-af46-6626ecb15fc2/resourceGroups/hpc0313x636d2111/providers/Microsoft.Storage/storageAccounts/cmdletsa/blobServices/default/containers/cmdletcontnr9\",\r\n \"name\": \"cmdletcontnr9\",\r\n \"type\": \"Microsoft.Storage/storageAccounts/blobServices/containers\",\r\n \"properties\": {\r\n \"publicAccess\": \"Blob\",\r\n \"hasImmutabilityPolicy\": false,\r\n \"hasLegalHold\": false\r\n }\r\n}",
+ "StatusCode": 201
+ }
+ ],
+ "Names": {
+ "AddStorageAccountAccessRules": [
+ "7d0e2524-2f62-4ec8-bb73-e3c4cd26b05a"
+ ]
+ },
+ "Variables": {
+ "SubscriptionId": "46841c0e-69c8-4b17-af46-6626ecb15fc2"
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache.Test/Utilities/Constants.cs b/src/HPCCache/HPCCache.Test/Utilities/Constants.cs
new file mode 100644
index 000000000000..1cd33af22d7e
--- /dev/null
+++ b/src/HPCCache/HPCCache.Test/Utilities/Constants.cs
@@ -0,0 +1,69 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+
+namespace Microsoft.Azure.Commands.HPCCache.Test.Utilities
+{
+ ///
+ /// Contains constants for tests.
+ ///
+ public static class Constants
+ {
+ ///
+ /// Default region for resource group.
+ ///
+ public const string DefaultRegion = "eastus";
+
+ ///
+ /// Default API version of storage cache client.
+ ///
+ public const string DefaultAPIVersion = "2019-11-01";
+
+ ///
+ /// Default prefix for resource group name.
+ ///
+ public const string DefaultResourcePrefix = "hpc";
+
+ ///
+ /// Default size for cache.
+ ///
+ public const int DefaultCacheSize = 3072;
+
+ ///
+ /// Default SKU for cache.
+ ///
+ public const string DefaultCacheSku = "Standard_2G";
+
+ ///
+ /// Default PrincipalId for Storage Cache Resource Provider.
+ ///
+ public const string StorageCacheResourceProviderPrincipalId = "831d4223-7a3c-4121-a445-1e423591e57b";
+
+ // If you want to use existing cache then uncomment below parameters and substitue proper values.
+
+ ///
+ /// Resouce group name.
+ ///
+ // public static readonly string ResourceGroupName = "test-rg";
+
+ ///
+ /// Cache name.
+ ///
+ // public static readonly string CacheName = "test-cache";
+
+ ///
+ /// Storage target name.
+ ///
+ // public static readonly string StorageTargetName = "msazure";
+ }
+}
diff --git a/src/HPCCache/HPCCache.Test/Utilities/HpcCacheTestEnvironmentUtilities.cs b/src/HPCCache/HPCCache.Test/Utilities/HpcCacheTestEnvironmentUtilities.cs
new file mode 100644
index 000000000000..50433cccedce
--- /dev/null
+++ b/src/HPCCache/HPCCache.Test/Utilities/HpcCacheTestEnvironmentUtilities.cs
@@ -0,0 +1,217 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+
+namespace Microsoft.Azure.Commands.HPCCache.Test.Utilities
+{
+ using System;
+ using System.Collections.Generic;
+ using System.Reflection;
+ using Microsoft.Azure.Test.HttpRecorder;
+ using Microsoft.Rest.ClientRuntime.Azure.TestFramework;
+
+ ///
+ /// Test environment utilities.
+ ///
+ public static class HpcCacheTestEnvironmentUtilities
+ {
+ ///
+ /// Connection string that determines how to connect to Azure..
+ ///
+ public const string EnvironmentVariableName = "TEST_CSM_ORGID_AUTHENTICATION";
+
+ ///
+ /// Initialize new environment.
+ ///
+ public static readonly TestEnvironment Environment =
+ new TestEnvironment(System.Environment.GetEnvironmentVariable(EnvironmentVariableName));
+
+ ///
+ /// Gets location.
+ ///
+ public static string Location
+ {
+ get
+ {
+ return GetValueFromEnvironment("DefaultRegion");
+ }
+ }
+
+ ///
+ /// Gets resource prefix.
+ ///
+ public static string ResourcePrefix
+ {
+ get
+ {
+ return GetValueFromEnvironment("DefaultResourcePrefix");
+ }
+ }
+
+ ///
+ /// Gets cache size.
+ ///
+ public static string CacheSize
+ {
+ get
+ {
+ return GetValueFromEnvironment("DefaultCacheSize");
+ }
+ }
+
+ ///
+ /// Gets cache SKU.
+ ///
+ public static string CacheSku
+ {
+ get
+ {
+ return GetValueFromEnvironment("DefaultCacheSku");
+ }
+ }
+
+ ///
+ /// Gets resource group name.
+ ///
+ public static string ResourceGroupName
+ {
+ get
+ {
+ try
+ {
+ return GetValueFromEnvironment("ResourceGroupName");
+ }
+ catch (KeyNotFoundException)
+ {
+ return null;
+ }
+ }
+ }
+
+ ///
+ /// Gets cache name.
+ ///
+ public static string CacheName
+ {
+ get
+ {
+ try
+ {
+ return GetValueFromEnvironment("CacheName");
+ }
+ catch (KeyNotFoundException)
+ {
+ return null;
+ }
+ }
+ }
+
+ ///
+ /// Gets cache name.
+ ///
+ public static string StorageTargetName
+ {
+ get
+ {
+ try
+ {
+ return GetValueFromEnvironment("StorageTargetName");
+ }
+ catch (KeyNotFoundException)
+ {
+ return null;
+ }
+ }
+ }
+
+ ///
+ /// Get subscription id.
+ ///
+ /// Subscription id.
+ public static string SubscriptionId()
+ {
+ return GetOrAddVariable(
+ "SubscriptionId",
+ () =>
+ {
+ return Environment.SubscriptionId;
+ });
+ }
+
+ ///
+ /// Gets a variable from HTTP recording (when test is in playback mode) or writes a variable to HTTP recording
+ /// (when test is in recording mode).
+ ///
+ /// Key that the variable value is stored under in HTTP recording file.
+ /// Function that generates the variable value if necessary.
+ /// The variable value.
+ private static string GetOrAddVariable(string key, Func generateValueFunc)
+ {
+ if (HttpMockServer.Mode == HttpRecorderMode.Record)
+ {
+ string value = generateValueFunc();
+ HttpMockServer.Variables[key] = value;
+ return value;
+ }
+ else
+ {
+ return HttpMockServer.Variables[key];
+ }
+ }
+
+ ///
+ /// Get value from test environment.
+ ///
+ /// Environment variable key.
+ /// Environment variable.
+ private static string GetValueFromEnvironment(string key)
+ {
+ return GetOrAddVariable(
+ key,
+ () =>
+ {
+ bool doUseDefaults;
+ Environment.ConnectionString.KeyValuePairs.TryGetValue("useDefaults", out string useDefaults);
+ if (!string.IsNullOrEmpty(useDefaults))
+ {
+ doUseDefaults = bool.Parse(useDefaults);
+ }
+ else
+ {
+ doUseDefaults = false;
+ }
+
+ Environment.ConnectionString.KeyValuePairs.TryGetValue(key, out string value);
+
+ if (string.IsNullOrEmpty(value) && doUseDefaults)
+ {
+ if (typeof(Constants).GetField(key) != null)
+ {
+ FieldInfo field = typeof(Constants).GetField(key);
+
+ value = field.GetValue(null).ToString();
+ }
+ }
+
+ if (string.IsNullOrEmpty(value))
+ {
+ throw new KeyNotFoundException(
+ string.Format(
+ "Value for key '{0}' was not found in environment variable '{1}'.", key, EnvironmentVariableName));
+ }
+
+ return value;
+ });
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache.Test/Utilities/StorageCacheTestUtilities.cs b/src/HPCCache/HPCCache.Test/Utilities/StorageCacheTestUtilities.cs
new file mode 100644
index 000000000000..ad70b840249f
--- /dev/null
+++ b/src/HPCCache/HPCCache.Test/Utilities/StorageCacheTestUtilities.cs
@@ -0,0 +1,184 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+
+namespace Microsoft.Azure.Commands.HPCCache.Test.Utilities
+{
+ using System;
+ using System.Collections.Generic;
+ using System.Linq;
+ using System.Text;
+ using Microsoft.Azure.Management.StorageCache.Models;
+ using Microsoft.Azure.Test.HttpRecorder;
+ using Microsoft.Rest.ClientRuntime.Azure.TestFramework;
+ using Xunit.Abstractions;
+
+ ///
+ /// Helper class.
+ ///
+ public static class StorageCacheTestUtilities
+ {
+ ///
+ /// Generate a random prefix that can be ingested by Azure.
+ ///
+ /// The generated string.
+ public static string GeneratePrefix()
+ {
+ StringBuilder sb = new StringBuilder(DateTime.Now.ToString("MMdd"));
+ var firstFour = Guid.NewGuid().ToString().Substring(0, 4);
+ sb.Append(string.Format("x{0}", firstFour));
+ return sb.ToString();
+ }
+
+ ///
+ /// The GenerateName.
+ ///
+ /// The prefix.
+ /// The methodName.
+ /// The .
+ public static string GenerateName(
+ string prefix = null,
+ [System.Runtime.CompilerServices.CallerMemberName]
+ string methodName = "GenerateName_failed")
+ {
+ prefix += GeneratePrefix();
+ try
+ {
+ return HttpMockServer.GetAssetName(methodName, prefix);
+ }
+ catch (KeyNotFoundException e)
+ {
+ throw new KeyNotFoundException(string.Format("Generated name not found for calling method: {0}", methodName), e);
+ }
+ }
+
+ ///
+ /// Throw expception if the given condition is satisfied.
+ ///
+ /// Condition to verify.
+ /// Exception message to raise.
+ public static void ThrowIfTrue(bool condition, string message)
+ {
+ if (condition)
+ {
+ throw new Exception(message);
+ }
+ }
+
+ ///
+ /// Retry on CloudErrorException with particular message.
+ ///
+ /// Method return type.
+ /// Method to execute.
+ /// Max retries.
+ /// Delay between each retries in seconds.
+ /// Exception message to verify.
+ /// testOutputHelper.
+ /// Whatever action parameter returns.
+ public static TRet Retry(
+ Func action,
+ int maxRequestTries,
+ int delayBetweenTries,
+ string exceptionMessage,
+ ITestOutputHelper testOutputHelper = null)
+ {
+ var remainingTries = maxRequestTries;
+ var exceptions = new List();
+
+ do
+ {
+ --remainingTries;
+ try
+ {
+ return action();
+ }
+ catch (CloudErrorException e)
+ {
+ if (e.Body.Error.Message.Contains(exceptionMessage))
+ {
+ if (remainingTries > 0)
+ {
+ if (testOutputHelper != null)
+ {
+ testOutputHelper.WriteLine(e.Body.Error.Message);
+ testOutputHelper.WriteLine($"Sleeping for {delayBetweenTries} time before retrying.");
+ }
+
+ TestUtilities.Wait(new TimeSpan(0, 0, delayBetweenTries));
+ }
+
+ exceptions.Add(e);
+ }
+ else
+ {
+ throw;
+ }
+ }
+ }
+ while (remainingTries > 0);
+ throw AggregatedExceptions(exceptions);
+ }
+
+ ///
+ /// An exception handler which returns an unique or aggregated exception.
+ ///
+ /// List of an exceptions.
+ /// an aggregate or unique exception.
+ private static Exception AggregatedExceptions(List exceptions)
+ {
+ var uniqueExceptions = exceptions.Distinct(new ExceptionEqualityComparer());
+
+ // If all the requests failed with the same exception,
+ // just return one exception to represent them all.
+ if (uniqueExceptions.Count() == 1)
+ {
+ return uniqueExceptions.First();
+ }
+
+ // If all the requests failed but for different reasons, return an AggregateException
+ // with all the root-cause exceptions.
+ return new AggregateException("There is a problem with the service.", uniqueExceptions);
+ }
+
+ ///
+ /// Used to aggregate exceptions that occur on request retries.
+ ///
+ private class ExceptionEqualityComparer : IEqualityComparer
+ {
+ public bool Equals(Exception e1, Exception e2)
+ {
+ if (e2 == null && e1 == null)
+ {
+ return true;
+ }
+ else if (e1 == null | e2 == null)
+ {
+ return false;
+ }
+ else if (e1.GetType().Name.Equals(e2.GetType().Name) && e1.Message.Equals(e2.Message))
+ {
+ return true;
+ }
+ else
+ {
+ return false;
+ }
+ }
+
+ public int GetHashCode(Exception e)
+ {
+ return (e.GetType().Name + e.Message).GetHashCode();
+ }
+ }
+ }
+}
diff --git a/src/HPCCache/HPCCache.sln b/src/HPCCache/HPCCache.sln
new file mode 100644
index 000000000000..3f055b77f512
--- /dev/null
+++ b/src/HPCCache/HPCCache.sln
@@ -0,0 +1,70 @@
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 16
+VisualStudioVersion = 16.0.29709.97
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "HPCCache", "HPCCache\HPCCache.csproj", "{C972E3EF-4461-4758-BA31-93E0947B1253}"
+ ProjectSection(ProjectDependencies) = postProject
+ {142D7B0B-388A-4CEB-A228-7F6D423C5C2E} = {142D7B0B-388A-4CEB-A228-7F6D423C5C2E}
+ {3E016018-D65D-4336-9F64-17DA97783AD0} = {3E016018-D65D-4336-9F64-17DA97783AD0}
+ {FF81DC73-B8EC-4082-8841-4FBF2B16E7CE} = {FF81DC73-B8EC-4082-8841-4FBF2B16E7CE}
+ EndProjectSection
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tests", "Tests", "{95C16AED-FD57-42A0-86C3-2CF4300A4817}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "HPCCache.Test", "HPCCache.Test\HPCCache.Test.csproj", "{4AE5705F-62CF-461D-B72E-DD9DCD9B3609}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Accounts", "..\Accounts\Accounts\Accounts.csproj", "{142D7B0B-388A-4CEB-A228-7F6D423C5C2E}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Authentication", "..\Accounts\Authentication\Authentication.csproj", "{FF81DC73-B8EC-4082-8841-4FBF2B16E7CE}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Authentication.ResourceManager", "..\Accounts\Authentication.ResourceManager\Authentication.ResourceManager.csproj", "{3E016018-D65D-4336-9F64-17DA97783AD0}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ScenarioTest.ResourceManager", "..\..\tools\ScenarioTest.ResourceManager\ScenarioTest.ResourceManager.csproj", "{F83FBA8D-732D-437C-A0E2-02E45B01E123}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TestFx", "..\..\tools\TestFx\TestFx.csproj", "{BC80A1D0-FFA4-43D9-AA74-799F5CB54B58}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {C972E3EF-4461-4758-BA31-93E0947B1253}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {C972E3EF-4461-4758-BA31-93E0947B1253}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {C972E3EF-4461-4758-BA31-93E0947B1253}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {C972E3EF-4461-4758-BA31-93E0947B1253}.Release|Any CPU.Build.0 = Release|Any CPU
+ {4AE5705F-62CF-461D-B72E-DD9DCD9B3609}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {4AE5705F-62CF-461D-B72E-DD9DCD9B3609}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {4AE5705F-62CF-461D-B72E-DD9DCD9B3609}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {4AE5705F-62CF-461D-B72E-DD9DCD9B3609}.Release|Any CPU.Build.0 = Release|Any CPU
+ {142D7B0B-388A-4CEB-A228-7F6D423C5C2E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {142D7B0B-388A-4CEB-A228-7F6D423C5C2E}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {142D7B0B-388A-4CEB-A228-7F6D423C5C2E}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {142D7B0B-388A-4CEB-A228-7F6D423C5C2E}.Release|Any CPU.Build.0 = Release|Any CPU
+ {FF81DC73-B8EC-4082-8841-4FBF2B16E7CE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {FF81DC73-B8EC-4082-8841-4FBF2B16E7CE}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {FF81DC73-B8EC-4082-8841-4FBF2B16E7CE}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {FF81DC73-B8EC-4082-8841-4FBF2B16E7CE}.Release|Any CPU.Build.0 = Release|Any CPU
+ {3E016018-D65D-4336-9F64-17DA97783AD0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {3E016018-D65D-4336-9F64-17DA97783AD0}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {3E016018-D65D-4336-9F64-17DA97783AD0}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {3E016018-D65D-4336-9F64-17DA97783AD0}.Release|Any CPU.Build.0 = Release|Any CPU
+ {F83FBA8D-732D-437C-A0E2-02E45B01E123}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {F83FBA8D-732D-437C-A0E2-02E45B01E123}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {F83FBA8D-732D-437C-A0E2-02E45B01E123}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {F83FBA8D-732D-437C-A0E2-02E45B01E123}.Release|Any CPU.Build.0 = Release|Any CPU
+ {BC80A1D0-FFA4-43D9-AA74-799F5CB54B58}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {BC80A1D0-FFA4-43D9-AA74-799F5CB54B58}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {BC80A1D0-FFA4-43D9-AA74-799F5CB54B58}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {BC80A1D0-FFA4-43D9-AA74-799F5CB54B58}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(NestedProjects) = preSolution
+ {4AE5705F-62CF-461D-B72E-DD9DCD9B3609} = {95C16AED-FD57-42A0-86C3-2CF4300A4817}
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {C50F967F-CC90-485A-AEED-2886F3D3066E}
+ EndGlobalSection
+EndGlobal
diff --git a/src/HPCCache/HPCCache/Az.HPCCache.psd1 b/src/HPCCache/HPCCache/Az.HPCCache.psd1
new file mode 100644
index 000000000000..920d7abee17f
--- /dev/null
+++ b/src/HPCCache/HPCCache/Az.HPCCache.psd1
@@ -0,0 +1,136 @@
+#
+# Module manifest for module 'Az.HPCCache'
+#
+# Generated by: Microsoft Corporation
+#
+# Generated on: 4/28/2020
+#
+
+@{
+
+# Script module or binary module file associated with this manifest.
+# RootModule = ''
+
+# Version number of this module.
+ModuleVersion = '0.1.0'
+
+# Supported PSEditions
+CompatiblePSEditions = 'Core', 'Desktop'
+
+# ID used to uniquely identify this module
+GUID = '6470f56b-378e-48f4-b60f-954c01bf1822'
+
+# Author of this module
+Author = 'Microsoft Corporation'
+
+# Company or vendor of this module
+CompanyName = 'Microsoft Corporation'
+
+# Copyright statement for this module
+Copyright = 'Microsoft Corporation. All rights reserved.'
+
+# Description of the functionality provided by this module
+Description = 'Microsoft Azure PowerShell - Azure HPC Cache service cmdlets for Azure Resource Manager in Windows PowerShell and PowerShell Core.'
+
+# Minimum version of the PowerShell engine required by this module
+PowerShellVersion = '5.1'
+
+# Name of the PowerShell host required by this module
+# PowerShellHostName = ''
+
+# Minimum version of the PowerShell host required by this module
+# PowerShellHostVersion = ''
+
+# Minimum version of Microsoft .NET Framework required by this module. This prerequisite is valid for the PowerShell Desktop edition only.
+DotNetFrameworkVersion = '4.7.2'
+
+# Minimum version of the common language runtime (CLR) required by this module. This prerequisite is valid for the PowerShell Desktop edition only.
+# CLRVersion = ''
+
+# Processor architecture (None, X86, Amd64) required by this module
+# ProcessorArchitecture = ''
+
+# Modules that must be imported into the global environment prior to importing this module
+RequiredModules = @(@{ModuleName = 'Az.Accounts'; ModuleVersion = '1.7.0'; })
+
+# Assemblies that must be loaded prior to importing this module
+RequiredAssemblies = 'Microsoft.Azure.Management.StorageCache.dll'
+
+# Script files (.ps1) that are run in the caller's environment prior to importing this module.
+# ScriptsToProcess = @()
+
+# Type files (.ps1xml) to be loaded when importing this module
+# TypesToProcess = @()
+
+# Format files (.ps1xml) to be loaded when importing this module
+# FormatsToProcess = @()
+
+# Modules to import as nested modules of the module specified in RootModule/ModuleToProcess
+NestedModules = @('Microsoft.Azure.PowerShell.Cmdlets.HPCCache.dll')
+
+# Functions to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no functions to export.
+FunctionsToExport = @()
+
+# Cmdlets to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no cmdlets to export.
+CmdletsToExport = 'Get-AzHpcCacheSku', 'Get-AzHpcCacheUsageModel', 'Get-AzHpcCache',
+ 'New-AzHpcCache', 'Remove-AzHpcCache', 'Set-AzHpcCache',
+ 'Start-AzHpcCache', 'Stop-AzHpcCache', 'Update-AzHpcCache',
+ 'Remove-AzHpcCacheStorageTarget', 'New-AzHpcCacheStorageTarget',
+ 'Get-AzHpcCacheStorageTarget', 'Set-AzHpcCacheStorageTarget'
+
+# Variables to export from this module
+# VariablesToExport = @()
+
+# Aliases to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no aliases to export.
+AliasesToExport = @()
+
+# DSC resources to export from this module
+# DscResourcesToExport = @()
+
+# List of all modules packaged with this module
+# ModuleList = @()
+
+# List of all files packaged with this module
+# FileList = @()
+
+# Private data to pass to the module specified in RootModule/ModuleToProcess. This may also contain a PSData hashtable with additional module metadata used by PowerShell.
+PrivateData = @{
+
+ PSData = @{
+
+ # Tags applied to this module. These help with module discovery in online galleries.
+ Tags = 'Azure','ResourceManager','ARM','HPC','HPCCache','StorageCache'
+
+ # A URL to the license for this module.
+ LicenseUri = 'https://aka.ms/azps-license'
+
+ # A URL to the main website for this project.
+ ProjectUri = 'https://github.com/Azure/azure-powershell'
+
+ # A URL to an icon representing this module.
+ # IconUri = ''
+
+ # ReleaseNotes of this module
+ ReleaseNotes = '* Public release of ''Az.HPCCache'' module'
+
+ # Prerelease string of this module
+ # Prerelease = 'preview'
+
+ # Flag to indicate whether the module requires explicit user acceptance for install/update/save
+ # RequireLicenseAcceptance = $false
+
+ # External dependent modules of this module
+ # ExternalModuleDependencies = @()
+
+ } # End of PSData hashtable
+
+ } # End of PrivateData hashtable
+
+# HelpInfo URI of this module
+# HelpInfoURI = ''
+
+# Default prefix for commands exported from this module. Override the default prefix using Import-Module -Prefix.
+# DefaultCommandPrefix = ''
+
+}
+
diff --git a/src/HPCCache/HPCCache/ChangeLog.md b/src/HPCCache/HPCCache/ChangeLog.md
new file mode 100644
index 000000000000..839701ab9e13
--- /dev/null
+++ b/src/HPCCache/HPCCache/ChangeLog.md
@@ -0,0 +1,23 @@
+
+## Upcoming Release
+
+## Version 0.1.0
+* Preview of `Az.HPCCache` module
diff --git a/src/HPCCache/HPCCache/Commands/GetAzHpcCache.cs b/src/HPCCache/HPCCache/Commands/GetAzHpcCache.cs
new file mode 100644
index 000000000000..87e97c28d7a0
--- /dev/null
+++ b/src/HPCCache/HPCCache/Commands/GetAzHpcCache.cs
@@ -0,0 +1,83 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+namespace Microsoft.Azure.Commands.HPCCache
+{
+ using System.Management.Automation;
+ using Microsoft.Azure.Commands.ResourceManager.Common.ArgumentCompleters;
+ using Microsoft.Azure.Management.StorageCache;
+ using Microsoft.Azure.Management.StorageCache.Models;
+ using Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models;
+ using Microsoft.Rest.Azure;
+
+ ///
+ /// Get Cache / RG specific cache(s) / subscription wide caches.
+ ///
+ [Cmdlet("Get", ResourceManager.Common.AzureRMConstants.AzureRMPrefix + "HpcCache")]
+ [OutputType(typeof(PSHPCCache))]
+ public class GetAzHpcCache : HpcCacheBaseCmdlet
+ {
+ ///
+ /// Gets or sets resource Group Name.
+ ///
+ [Parameter(ValueFromPipelineByPropertyName = true, Mandatory = false, HelpMessage = "Name of resource group under which you want to list cache(s).")]
+ [ResourceGroupCompleter]
+ [ValidateNotNullOrEmpty]
+ public string ResourceGroupName { get; set; }
+
+ ///
+ /// Gets or sets cache Name.
+ ///
+ [Parameter(ValueFromPipelineByPropertyName = true, Mandatory = false, HelpMessage = "Name of specific cache.")]
+ [Alias(CacheNameAlias)]
+ [ResourceNameCompleter("Microsoft.StorageCache/caches", nameof(ResourceGroupName))]
+ [ValidateNotNullOrEmpty]
+ public string Name { get; set; }
+
+ ///
+ public override void ExecuteCmdlet()
+ {
+ if (!string.IsNullOrEmpty(this.ResourceGroupName))
+ {
+ if (!string.IsNullOrEmpty(this.Name))
+ {
+ try
+ {
+ var singleCache = this.HpcCacheClient.Caches.Get(this.ResourceGroupName, this.Name);
+ this.WriteObject(new PSHPCCache(singleCache), true);
+ }
+ catch (CloudErrorException ex)
+ {
+ throw new CloudException(string.Format("Exception: {0}", ex.Body.Error.Message));
+ }
+ }
+ else
+ {
+ var resourgeGroupCaches = this.HpcCacheClient.Caches.ListByResourceGroup(this.ResourceGroupName);
+ foreach (var cache in resourgeGroupCaches.Value)
+ {
+ this.WriteObject(new PSHPCCache(cache), true);
+ }
+ }
+ }
+ else
+ {
+ var allCaches = this.HpcCacheClient.Caches.List();
+ foreach (var cache in allCaches.Value)
+ {
+ this.WriteObject(new PSHPCCache(cache), true);
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache/Commands/GetAzHpcCacheSku.cs b/src/HPCCache/HPCCache/Commands/GetAzHpcCacheSku.cs
new file mode 100644
index 000000000000..18258cfe569d
--- /dev/null
+++ b/src/HPCCache/HPCCache/Commands/GetAzHpcCacheSku.cs
@@ -0,0 +1,39 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+
+namespace Microsoft.Azure.Commands.HPCCache
+{
+ using System;
+ using System.Management.Automation;
+ using Microsoft.Azure.Management.StorageCache;
+ using Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models;
+
+ ///
+ /// Get SKUs related to HPC Cache that are available in subscription.
+ ///
+ [Cmdlet("Get", ResourceManager.Common.AzureRMConstants.AzureRMPrefix + "HpcCacheSku")]
+ [OutputType(typeof(PSSku))]
+ public class GetAzHpcCacheSku : HpcCacheBaseCmdlet
+ {
+ ///
+ public override void ExecuteCmdlet()
+ {
+ var resourceSkus = this.HpcCacheClient.Skus.List().Value;
+ foreach (var sku in resourceSkus)
+ {
+ this.WriteObject(new PSSku(sku));
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache/Commands/GetAzHpcCacheStorageTarget.cs b/src/HPCCache/HPCCache/Commands/GetAzHpcCacheStorageTarget.cs
new file mode 100644
index 000000000000..b5dd2e1282c7
--- /dev/null
+++ b/src/HPCCache/HPCCache/Commands/GetAzHpcCacheStorageTarget.cs
@@ -0,0 +1,113 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+namespace Microsoft.Azure.Commands.HPCCache
+{
+ using System.Management.Automation;
+ using Microsoft.Azure.Commands.Common.Strategies;
+ using Microsoft.Azure.Commands.ResourceManager.Common.ArgumentCompleters;
+ using Microsoft.Azure.Management.Internal.Resources.Utilities.Models;
+ using Microsoft.Azure.Management.StorageCache;
+ using Microsoft.Azure.Management.StorageCache.Models;
+ using Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models;
+ using Microsoft.Rest.Azure;
+
+ ///
+ /// Get StorageTargets on Cache.
+ ///
+ [Cmdlet("Get", ResourceManager.Common.AzureRMConstants.AzureRMPrefix + "HpcCacheStorageTarget", DefaultParameterSetName = FieldsParameterSet)]
+ [OutputType(typeof(PSHpcStorageTarget))]
+ public class GetAzHpcCacheStorageTarget : HpcCacheBaseCmdlet
+ {
+ ///
+ /// Gets or sets resource Group Name.
+ ///
+ [Parameter(ValueFromPipelineByPropertyName = true, Mandatory = true, HelpMessage = "Name of resource group cache is in.", ParameterSetName = FieldsParameterSet)]
+ [ResourceGroupCompleter]
+ [ValidateNotNullOrEmpty]
+ public string ResourceGroupName { get; set; }
+
+ ///
+ /// Gets or sets cache Name.
+ ///
+ [Parameter(ValueFromPipelineByPropertyName = true, Mandatory = true, HelpMessage = "Name of cache.", ParameterSetName = FieldsParameterSet)]
+ [ValidateNotNullOrEmpty]
+ [ResourceNameCompleter("Microsoft.StorageCache/caches", nameof(ResourceGroupName))]
+ public string CacheName { get; set; }
+
+ ///
+ /// Gets or sets resource id of the cache.
+ ///
+ [Parameter(Mandatory = true, ValueFromPipelineByPropertyName = true, HelpMessage = "The resource id of the Cache", ParameterSetName = ResourceIdParameterSet)]
+ [ValidateNotNullOrEmpty]
+ public string CacheId { get; set; }
+
+ ///
+ /// Gets or sets cache object.
+ ///
+ [Parameter(ParameterSetName = ObjectParameterSet, Mandatory = true, ValueFromPipeline = true, HelpMessage = "The cache object to start.")]
+ [ValidateNotNullOrEmpty]
+ public PSHPCCache CacheObject { get; set; }
+
+ ///
+ /// Gets or sets storage target name.
+ ///
+ [Parameter(ValueFromPipelineByPropertyName = true, Mandatory = false, HelpMessage = "Name of storage target.", ParameterSetName = FieldsParameterSet)]
+ [Alias(StoragTargetNameAlias)]
+ [ValidateNotNullOrEmpty]
+ public string Name { get; set; }
+
+ ///
+ public override void ExecuteCmdlet()
+ {
+ if (this.ParameterSetName == ResourceIdParameterSet)
+ {
+ var resourceIdentifier = new ResourceIdentifier(this.CacheId);
+ this.ResourceGroupName = resourceIdentifier.ResourceGroupName;
+ this.CacheName = resourceIdentifier.ResourceName;
+ }
+ else if (this.ParameterSetName == ObjectParameterSet)
+ {
+ this.ResourceGroupName = this.CacheObject.ResourceGroupName;
+ this.CacheName = this.CacheObject.CacheName;
+ }
+
+ if (!string.IsNullOrEmpty(this.ResourceGroupName))
+ {
+ if (!string.IsNullOrEmpty(this.CacheName))
+ {
+ if (!string.IsNullOrEmpty(this.Name))
+ {
+ try
+ {
+ var singleST = this.HpcCacheClient.StorageTargets.Get(this.ResourceGroupName, this.CacheName, this.Name);
+ this.WriteObject(new PSHpcStorageTarget(singleST), true);
+ }
+ catch (CloudErrorException ex)
+ {
+ throw new CloudException(string.Format("Exception: {0}", ex.Body.Error.Message));
+ }
+ }
+ else
+ {
+ var storageTargets = this.HpcCacheClient.StorageTargets.ListByCache(this.ResourceGroupName, this.CacheName);
+ foreach (var target in storageTargets.Value)
+ {
+ this.WriteObject(new PSHpcStorageTarget(target), true);
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/src/HPCCache/HPCCache/Commands/GetAzHpcCacheUsageModels.cs b/src/HPCCache/HPCCache/Commands/GetAzHpcCacheUsageModels.cs
new file mode 100644
index 000000000000..12fe9d2d5851
--- /dev/null
+++ b/src/HPCCache/HPCCache/Commands/GetAzHpcCacheUsageModels.cs
@@ -0,0 +1,39 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+namespace Microsoft.Azure.Commands.HPCCache
+{
+ using System.Management.Automation;
+ using Microsoft.Azure.Management.StorageCache;
+ using Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models;
+
+ ///
+ /// Get usage models related to HPC Cache NFS Storage Target.
+ ///
+ [Cmdlet("Get", ResourceManager.Common.AzureRMConstants.AzureRMPrefix + "HpcCacheUsageModel")]
+ [OutputType(typeof(PSHpcCacheUsageModels))]
+ public class GetAzHpcCacheUsageModels : HpcCacheBaseCmdlet
+ {
+ ///
+ /// Returns Usage Models.
+ ///
+ public override void ExecuteCmdlet()
+ {
+ var usageModelList = this.HpcCacheClient.UsageModels.List().Value;
+ foreach (var usageModel in usageModelList)
+ {
+ this.WriteObject(new PSHpcCacheUsageModels(usageModel));
+ }
+ }
+ }
+}
diff --git a/src/HPCCache/HPCCache/Commands/NewAzHpcCache.cs b/src/HPCCache/HPCCache/Commands/NewAzHpcCache.cs
new file mode 100644
index 000000000000..6feb2673fdd0
--- /dev/null
+++ b/src/HPCCache/HPCCache/Commands/NewAzHpcCache.cs
@@ -0,0 +1,125 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+namespace Microsoft.Azure.Commands.HPCCache
+{
+ using System;
+ using System.Collections;
+ using System.Management.Automation;
+ using Microsoft.Azure.Commands.HPCCache.Properties;
+ using Microsoft.Azure.Commands.ResourceManager.Common.ArgumentCompleters;
+ using Microsoft.Azure.Management.StorageCache;
+ using Microsoft.Azure.Management.StorageCache.Models;
+ using Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models;
+ using Microsoft.Rest.Azure;
+
+ ///
+ /// Creates a HPC Cache.
+ ///
+ [Cmdlet("New", ResourceManager.Common.AzureRMConstants.AzureRMPrefix + "HpcCache", SupportsShouldProcess = true)]
+ [OutputType(typeof(PSHPCCache))]
+ public class NewAzHpcCache : HpcCacheBaseCmdlet
+ {
+ ///
+ /// Gets or sets resource group name.
+ ///
+ [Parameter(ValueFromPipelineByPropertyName = true, Mandatory = true, HelpMessage = "Name of resource group under which you want to create cache.")]
+ [ResourceGroupCompleter]
+ [ValidateNotNullOrEmpty]
+ public string ResourceGroupName { get; set; }
+
+ ///
+ /// Gets or sets cache name.
+ ///
+ [Parameter(ValueFromPipelineByPropertyName = true, Mandatory = true, HelpMessage = "Name of cache.")]
+ [Alias(CacheNameAlias)]
+ [ValidateNotNullOrEmpty]
+ public string Name { get; set; }
+
+ ///
+ /// Gets or sets Sku.
+ ///
+ [Parameter(ValueFromPipelineByPropertyName = true, Mandatory = true, HelpMessage = "Sku.")]
+ [ValidateNotNullOrEmpty]
+ public string Sku { get; set; }
+
+ ///
+ /// Gets or sets subnetUri.
+ ///
+ [Parameter(ValueFromPipelineByPropertyName = true, Mandatory = true, HelpMessage = "SubnetURI.")]
+ [ValidateNotNullOrEmpty]
+ public string SubnetUri { get; set; }
+
+ ///
+ /// Gets or sets cache size.
+ ///
+ [Parameter(ValueFromPipelineByPropertyName = true, Mandatory = true, HelpMessage = "CacheSize.")]
+ [ValidateNotNullOrEmpty]
+ public int CacheSize { get; set; }
+
+ ///
+ /// Gets or sets location.
+ ///
+ [Parameter(ValueFromPipelineByPropertyName = true, Mandatory = true, HelpMessage = "Location.")]
+ [ValidateNotNullOrEmpty]
+ public string Location { get; set; }
+
+ ///
+ /// Gets or sets the tags to associate with HPC Cache.
+ ///
+ [Parameter(Mandatory = false, HelpMessage = "The tags to associate with HPC Cache.")]
+ public Hashtable Tag { get; set; }
+
+ ///
+ /// Gets or sets Job to run job in background.
+ ///
+ [Parameter(Mandatory = false, HelpMessage = "Run cmdlet in the background")]
+ public SwitchParameter AsJob { get; set; }
+
+ ///
+ /// Execution cmdlet.
+ ///
+ public override void ExecuteCmdlet()
+ {
+ try
+ {
+ var cacheExists = this.HpcCacheClient.Caches.Get(this.ResourceGroupName, this.Name);
+ throw new CloudException(string.Format("Cache name {0} already exists", this.Name));
+ }
+ catch (CloudErrorException ex)
+ {
+ if (ex.Body.Error.Code != "ResourceNotFound")
+ {
+ throw;
+ }
+ }
+
+ Utility.ValidateResourceGroup(this.ResourceGroupName);
+ var cacheSku = new CacheSku() { Name = this.Sku };
+ var tag = this.Tag.ToDictionaryTags();
+ var cacheParameters = new Cache() { CacheSizeGB = this.CacheSize, Location = this.Location, Sku = cacheSku, Subnet = this.SubnetUri, Tags = tag };
+ if (this.ShouldProcess(this.Name, string.Format(Resources.CreateCache, this.ResourceGroupName, this.Name)))
+ {
+ try
+ {
+ var cache = this.HpcCacheClient.Caches.CreateOrUpdate(this.ResourceGroupName, this.Name, cacheParameters);
+ this.WriteObject(new PSHPCCache(cache), enumerateCollection: true);
+ }
+ catch (CloudErrorException ex)
+ {
+ throw new CloudException(string.Format("Exception: {0}", ex.Body.Error.Message));
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache/Commands/NewAzHpcStorageTarget.cs b/src/HPCCache/HPCCache/Commands/NewAzHpcStorageTarget.cs
new file mode 100644
index 000000000000..8a164381947b
--- /dev/null
+++ b/src/HPCCache/HPCCache/Commands/NewAzHpcStorageTarget.cs
@@ -0,0 +1,227 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+namespace Microsoft.Azure.Commands.HPCCache
+{
+ using System;
+ using System.Collections;
+ using System.Collections.Generic;
+ using System.Management.Automation;
+ using System.Net;
+ using Microsoft.Azure.Commands.Common.Strategies;
+ using Microsoft.Azure.Commands.HPCCache.Properties;
+ using Microsoft.Azure.Commands.ResourceManager.Common.ArgumentCompleters;
+ using Microsoft.Azure.Management.StorageCache;
+ using Microsoft.Azure.Management.StorageCache.Models;
+ using Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models;
+ using Microsoft.Rest.Azure;
+ using Microsoft.WindowsAzure.Commands.Utilities.Common;
+
+ ///
+ /// NewAzHpcStorageTarget.
+ ///
+ [Cmdlet("New",
+ ResourceManager.Common.AzureRMConstants.AzureRMPrefix + "HpcCacheStorageTarget",
+ DefaultParameterSetName = ClfsStorageTargetParameterSet,
+ SupportsShouldProcess = true)]
+ [OutputType(typeof(PSHpcStorageTarget))]
+ public class NewAzHpcStorageTarget : HpcCacheBaseCmdlet
+ {
+ private const string NfsStorageTargetParameterSet = "NfsParameterSet";
+ private const string ClfsStorageTargetParameterSet = "ClfsParameterSet";
+ private StorageTarget storageTarget;
+
+ ///
+ /// Gets or sets resource Group Name.
+ ///
+ [Parameter(ValueFromPipelineByPropertyName = true, Mandatory = true, HelpMessage = "Name of resource group under which you want to create storage target for given cache.")]
+ [ResourceGroupCompleter]
+ [ValidateNotNullOrEmpty]
+ public string ResourceGroupName { get; set; }
+
+ ///
+ /// Gets or sets resource CacheName.
+ ///
+ [Parameter(ValueFromPipelineByPropertyName = true, Mandatory = true, HelpMessage = "Name of cache.")]
+ [ResourceNameCompleter("Microsoft.StorageCache/caches", nameof(ResourceGroupName))]
+ [ValidateNotNullOrEmpty]
+ public string CacheName { get; set; }
+
+ ///
+ /// Gets or sets resource storage target name.
+ ///
+ [Parameter(ValueFromPipelineByPropertyName = true, Mandatory = true, HelpMessage = "Name of storage target.")]
+ [Alias(StoragTargetNameAlias)]
+ [ValidateNotNullOrEmpty]
+ public string Name { get; set; }
+
+ ///
+ /// Gets or sets CLFS storage target.
+ ///
+ [Parameter(Mandatory = false, ParameterSetName = ClfsStorageTargetParameterSet, HelpMessage = "Create CLFS storage target.")]
+ [ValidateNotNullOrEmpty]
+ public SwitchParameter CLFS { get; set; }
+
+ ///
+ /// Gets or sets NFS storage target.
+ ///
+ [Parameter(Mandatory = false, ParameterSetName = NfsStorageTargetParameterSet, HelpMessage = "Create NFS storage target.")]
+ [ValidateNotNullOrEmpty]
+ public SwitchParameter NFS { get; set; }
+
+ ///
+ /// Gets or sets CLFS storage target StorageContainerID.
+ ///
+ [Parameter(Mandatory = false, ParameterSetName = ClfsStorageTargetParameterSet, HelpMessage = "StorageContainerID.")]
+ [ValidateNotNullOrEmpty]
+ public string StorageContainerID { get; set; }
+
+ ///
+ /// Gets or sets NFS storage target hostname.
+ ///
+ [Parameter(Mandatory = false, ParameterSetName = NfsStorageTargetParameterSet, HelpMessage = "NFS host name.")]
+ [ValidateNotNullOrEmpty]
+ public string HostName { get; set; }
+
+ ///
+ /// Gets or sets NFS storage target usage model.
+ ///
+ [Parameter(Mandatory = false, ParameterSetName = NfsStorageTargetParameterSet, HelpMessage = "NFS usage model.")]
+ [ValidateNotNullOrEmpty]
+ public string UsageModel { get; set; }
+
+ ///
+ /// Gets or sets junction.
+ ///
+ [Parameter(Mandatory = false, ParameterSetName = ClfsStorageTargetParameterSet, HelpMessage = "Junction.")]
+ [Parameter(Mandatory = false, ParameterSetName = NfsStorageTargetParameterSet, HelpMessage = "Junction.")]
+ [ValidateNotNullOrEmpty]
+ public Hashtable[] Junction { get; set; }
+
+ ///
+ /// Gets or sets AsJob.
+ ///
+ [Parameter(Mandatory = false, HelpMessage = "AsJob.")]
+ public SwitchParameter AsJob { get; set; }
+
+ ///
+ /// Gets or sets switch parameter force.
+ ///
+ [Parameter(Mandatory = false, HelpMessage = "Indicates that the cmdlet does not prompt you for confirmation. By default, this cmdlet prompts you to confirm that you want to flush the cache.")]
+ public SwitchParameter Force { get; set; }
+
+ ///
+ public override void ExecuteCmdlet()
+ {
+ this.ConfirmAction(
+ this.Force.IsPresent,
+ string.Format(Resources.ConfirmCreateStorageTarget, this.Name),
+ string.Format(Resources.CreateStorageTarget, this.Name),
+ this.Name,
+ () =>
+ {
+ this.storageTarget = this.CLFS.IsPresent ? this.CreateClfsStorageTargetParameters() : this.CreateNfsStorageTargetParameters();
+ if (this.IsParameterBound(c => c.Junction))
+ {
+ this.storageTarget.Junctions = new List();
+ foreach (var junction in this.Junction)
+ {
+ var nameSpaceJunction = HashtableToDictionary(junction);
+ this.storageTarget.Junctions.Add(
+ new NamespaceJunction(
+ nameSpaceJunction.GetOrNull("namespacePath"),
+ nameSpaceJunction.GetOrNull("targetPath"),
+ nameSpaceJunction.GetOrNull("nfsExport")));
+ }
+ }
+
+ this.DoesStorageTargetExists();
+ var results = new List() { this.CreateStorageTargetModel() };
+ this.WriteObject(results, enumerateCollection: true);
+ });
+ }
+
+ private PSHpcStorageTarget CreateStorageTargetModel()
+ {
+ return new PSHpcStorageTarget(
+ this.HpcCacheClient.StorageTargets.CreateOrUpdate(
+ this.ResourceGroupName,
+ this.CacheName,
+ this.Name,
+ this.storageTarget));
+ }
+
+ private bool DoesStorageTargetExists()
+ {
+ try
+ {
+ var resource = this.HpcCacheClient.StorageTargets.Get(
+ this.ResourceGroupName,
+ this.CacheName,
+ this.Name);
+
+ throw new Exception(string.Format(Resources.UpgradeHpcCache, this.Name, this.CacheName));
+ }
+ catch (CloudErrorException e)
+ {
+ if (e.Body.Error.Code == "NotFound")
+ {
+ return false;
+ }
+
+ throw;
+ }
+ }
+
+ ///
+ /// Create CLFS storage target parameters.
+ ///
+ /// CLFS storage target parameters.
+ private StorageTarget CreateClfsStorageTargetParameters()
+ {
+ ClfsTarget clfsTarget = new ClfsTarget()
+ {
+ Target = this.StorageContainerID,
+ };
+
+ StorageTarget storageTargetParameters = new StorageTarget
+ {
+ TargetType = "clfs",
+ Clfs = clfsTarget,
+ };
+
+ return storageTargetParameters;
+ }
+
+ ///
+ /// Create NFS storage target parameters.
+ ///
+ /// NFS storage target parameters.
+ private StorageTarget CreateNfsStorageTargetParameters()
+ {
+ Nfs3Target nfs3Target = new Nfs3Target()
+ {
+ Target = this.HostName,
+ UsageModel = this.UsageModel,
+ };
+
+ StorageTarget storageTargetParameters = new StorageTarget
+ {
+ TargetType = "nfs3",
+ Nfs3 = nfs3Target,
+ };
+
+ return storageTargetParameters;
+ }
+ }
+}
diff --git a/src/HPCCache/HPCCache/Commands/RemoveAzHpcCache.cs b/src/HPCCache/HPCCache/Commands/RemoveAzHpcCache.cs
new file mode 100644
index 000000000000..7e1053811194
--- /dev/null
+++ b/src/HPCCache/HPCCache/Commands/RemoveAzHpcCache.cs
@@ -0,0 +1,93 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+namespace Microsoft.Azure.Commands.HPCCache
+{
+ using System.Management.Automation;
+ using Microsoft.Azure.Commands.HPCCache.Properties;
+ using Microsoft.Azure.Commands.ResourceManager.Common.ArgumentCompleters;
+ using Microsoft.Azure.Management.StorageCache;
+ using Microsoft.Azure.Management.StorageCache.Models;
+ using Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models;
+ using Microsoft.Rest.Azure;
+
+ ///
+ /// Remove HPC Cache.
+ ///
+ [Cmdlet("Remove", ResourceManager.Common.AzureRMConstants.AzureRMPrefix + "HpcCache", SupportsShouldProcess = true)]
+ [OutputType(typeof(bool))]
+ public class RemoveAzHpcCache : HpcCacheBaseCmdlet
+ {
+ ///
+ /// Gets or sets ResourceGroupName.
+ ///
+ [Parameter(ValueFromPipelineByPropertyName = true, Mandatory = true, HelpMessage = "Name of resource group under which you want to remove cache.")]
+ [ResourceGroupCompleter]
+ [ValidateNotNullOrEmpty]
+ public string ResourceGroupName { get; set; }
+
+ ///
+ /// Gets or sets CacheName.
+ ///
+ [Parameter(ValueFromPipelineByPropertyName = true, Mandatory = true, HelpMessage = "Name of cache.")]
+ [Alias(CacheNameAlias)]
+ [ResourceNameCompleter("Microsoft.StorageCache/caches", nameof(ResourceGroupName))]
+ [ValidateNotNullOrEmpty]
+ public string Name { get; set; }
+
+ ///
+ /// Gets or sets Delete Force - always set to false.
+ ///
+ [Parameter(Mandatory = false, HelpMessage = "Indicates that the cmdlet does not prompt you for confirmation. By default, this cmdlet prompts you to confirm that you want to remove the cache.")]
+ public SwitchParameter Force { get; set; }
+
+ ///
+ /// Gets or sets Switch parameter if you do not want to wait till success.
+ ///
+ [Parameter(Mandatory = false, HelpMessage = "Returns an object representing the item with which you are working.By default, this cmdlet does not generate any output.")]
+ public SwitchParameter PassThru { get; set; }
+
+ ///
+ /// Gets or sets Job to run job in background.
+ ///
+ [Parameter(Mandatory = false, HelpMessage = "Run cmdlet in the background")]
+ public SwitchParameter AsJob { get; set; }
+
+ ///
+ /// Execution Cmdlet.
+ ///
+ public override void ExecuteCmdlet()
+ {
+ this.ConfirmAction(
+ this.Force.IsPresent,
+ string.Format(Resources.ConfirmDeleteHpcCache, this.Name),
+ string.Format(Resources.DeleteHpcCache, this.Name),
+ this.Name,
+ () =>
+ {
+ try
+ {
+ this.HpcCacheClient.Caches.Delete(this.ResourceGroupName, this.Name);
+ if (this.PassThru)
+ {
+ this.WriteObject(true);
+ }
+ }
+ catch (CloudErrorException ex)
+ {
+ throw new CloudException(string.Format("Exception: {0}", ex.Body.Error.Message));
+ }
+ });
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache/Commands/RemoveAzHpcCacheStorageTarget.cs b/src/HPCCache/HPCCache/Commands/RemoveAzHpcCacheStorageTarget.cs
new file mode 100644
index 000000000000..67f1d0909ff0
--- /dev/null
+++ b/src/HPCCache/HPCCache/Commands/RemoveAzHpcCacheStorageTarget.cs
@@ -0,0 +1,100 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+namespace Microsoft.Azure.Commands.HPCCache
+{
+ using System.Management.Automation;
+ using Microsoft.Azure.Commands.HPCCache.Properties;
+ using Microsoft.Azure.Commands.ResourceManager.Common.ArgumentCompleters;
+ using Microsoft.Azure.Management.StorageCache;
+ using Microsoft.Azure.Management.StorageCache.Models;
+ using Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models;
+ using Microsoft.Rest.Azure;
+
+ ///
+ /// Remove Storage Target.
+ ///
+ [Cmdlet("Remove", ResourceManager.Common.AzureRMConstants.AzureRMPrefix + "HpcCacheStorageTarget", SupportsShouldProcess = true)]
+ [OutputType(typeof(bool))]
+ public class RemoveAzHpcCacheStorageTarget : HpcCacheBaseCmdlet
+ {
+ ///
+ /// Gets or sets ResourceGroupName.
+ ///
+ [Parameter(ValueFromPipelineByPropertyName = true, Mandatory = true, HelpMessage = "Name of resource group under which you want to remove storage target from cache.")]
+ [ResourceGroupCompleter]
+ [ValidateNotNullOrEmpty]
+ public string ResourceGroupName { get; set; }
+
+ ///
+ /// Gets or sets CacheName.
+ ///
+ [Parameter(ValueFromPipelineByPropertyName = true, Mandatory = true, HelpMessage = "Name of cache.")]
+ [ResourceNameCompleter("Microsoft.StorageCache/caches", nameof(ResourceGroupName))]
+ [ValidateNotNullOrEmpty]
+ public string CacheName { get; set; }
+
+ ///
+ /// Gets or sets StorageTargetName.
+ ///
+ [Parameter(ValueFromPipelineByPropertyName = true, Mandatory = true, HelpMessage = "Name of storage target.")]
+ [Alias(StoragTargetNameAlias)]
+ [ValidateNotNullOrEmpty]
+ public string Name { get; set; }
+
+ ///
+ /// Gets or sets Delete Force - always set to false.
+ ///
+ [Parameter(Mandatory = false, HelpMessage = "Indicates that the cmdlet does not prompt you for confirmation. By default, this cmdlet prompts you to confirm that you want to remove the storage target.")]
+ public SwitchParameter Force { get; set; }
+
+ ///
+ /// Gets or sets Switch parameter if you do not want to wait till success.
+ ///
+ [Parameter(Mandatory = false, HelpMessage = "Returns an object representing the item with which you are working.By default, this cmdlet does not generate any output.")]
+ public SwitchParameter PassThru { get; set; }
+
+ ///
+ /// Gets or sets Job to run job in background.
+ ///
+ [Parameter(Mandatory = false, HelpMessage = "Run cmdlet in the background")]
+ public SwitchParameter AsJob { get; set; }
+
+ ///
+ /// Execution Cmdlet.
+ ///
+ public override void ExecuteCmdlet()
+ {
+ this.ConfirmAction(
+ this.Force.IsPresent,
+ string.Format(Resources.ConfirmDeleteHpcCacheStorageTarget, this.Name),
+ string.Format(Resources.DeleteHpcCacheStorageTarget, this.Name),
+ this.CacheName,
+ () =>
+ {
+ try
+ {
+ this.HpcCacheClient.StorageTargets.Delete(this.ResourceGroupName, this.CacheName, this.Name);
+ if (this.PassThru)
+ {
+ this.WriteObject(true);
+ }
+ }
+ catch (CloudErrorException ex)
+ {
+ throw new CloudException(string.Format("Exception: {0}", ex.Body.Error.Message));
+ }
+ });
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache/Commands/SetAzHpcCache.cs b/src/HPCCache/HPCCache/Commands/SetAzHpcCache.cs
new file mode 100644
index 000000000000..dd56d0c155ff
--- /dev/null
+++ b/src/HPCCache/HPCCache/Commands/SetAzHpcCache.cs
@@ -0,0 +1,116 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+namespace Microsoft.Azure.Commands.HPCCache
+{
+ using System.Collections;
+ using System.Collections.Generic;
+ using System.Management.Automation;
+ using Microsoft.Azure.Commands.HPCCache.Properties;
+ using Microsoft.Azure.Commands.ResourceManager.Common.ArgumentCompleters;
+ using Microsoft.Azure.Management.StorageCache;
+ using Microsoft.Azure.Management.StorageCache.Models;
+ using Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models;
+ using Microsoft.Rest.Azure;
+ using Newtonsoft.Json;
+
+ ///
+ /// SetHPCCache commandlet.
+ ///
+ [Cmdlet("Set", ResourceManager.Common.AzureRMConstants.AzureRMPrefix + "HpcCache", DefaultParameterSetName = FieldsParameterSet, SupportsShouldProcess = true)]
+ [OutputType(typeof(PSHPCCache))]
+ public class SetAzHpcCache : HpcCacheBaseCmdlet
+ {
+ ///
+ /// Gets or sets resource Group Name.
+ ///
+ [Parameter(ValueFromPipelineByPropertyName = true, Mandatory = true, HelpMessage = "Name of resource group under which you want to update cache.", ParameterSetName = FieldsParameterSet)]
+ [ResourceGroupCompleter]
+ [ValidateNotNullOrEmpty]
+ public string ResourceGroupName { get; set; }
+
+ ///
+ /// Gets or sets resource CacheName.
+ ///
+ [Parameter(ValueFromPipelineByPropertyName = true, Mandatory = true, HelpMessage = "Name of cache.", ParameterSetName = FieldsParameterSet)]
+ [Alias(CacheNameAlias)]
+ [ValidateNotNullOrEmpty]
+ [ResourceNameCompleter("Microsoft.StorageCache/caches", nameof(ResourceGroupName))]
+ public string Name { get; set; }
+
+ ///
+ /// Gets or sets the tags to associate with HPC Cache.
+ ///
+ [Parameter(Mandatory = false, HelpMessage = "The tags to associate with HPC Cache.", ParameterSetName = FieldsParameterSet)]
+ public Hashtable Tag { get; set; }
+
+ ///
+ /// Gets or sets cache object.
+ ///
+ [Parameter(ParameterSetName = ObjectParameterSet, Mandatory = true, ValueFromPipeline = true, HelpMessage = "The cache object to update.")]
+ [ValidateNotNullOrEmpty]
+ public PSHPCCache InputObject { get; set; }
+
+ ///
+ /// Gets or sets Job to run job in background.
+ ///
+ [Parameter(Mandatory = false, HelpMessage = "Run cmdlet in the background")]
+ public SwitchParameter AsJob { get; set; }
+
+ ///
+ /// Execution cmdlet.
+ ///
+ public override void ExecuteCmdlet()
+ {
+ IDictionary tagPairs = null;
+
+ if (this.Tag != null)
+ {
+ tagPairs = this.Tag.ToDictionaryTags();
+ }
+
+ if (this.ParameterSetName == ObjectParameterSet)
+ {
+ this.ResourceGroupName = this.InputObject.ResourceGroupName;
+ this.Name = this.InputObject.CacheName;
+ var tags = this.InputObject.Tags;
+ var json = JsonConvert.SerializeObject(tags);
+ var dictionaryOfTags = JsonConvert.DeserializeObject>(json);
+ tagPairs = dictionaryOfTags;
+ }
+
+ if (this.ShouldProcess(this.Name, string.Format(Resources.SetCache, this.Name, this.ResourceGroupName)))
+ {
+ try
+ {
+ var cacheExists = this.HpcCacheClient.Caches.Get(this.ResourceGroupName, this.Name);
+ if (cacheExists != null)
+ {
+ var location = cacheExists.Location;
+ var cacheSize = cacheExists.CacheSizeGB;
+ var sku = cacheExists.Sku;
+ var subnet = cacheExists.Subnet;
+ var tag = tagPairs;
+ var cacheParameters = new Cache() { CacheSizeGB = cacheSize, Location = location, Sku = sku, Subnet = subnet, Tags = tag };
+ var cache = this.HpcCacheClient.Caches.Update(this.ResourceGroupName, this.Name, cacheParameters);
+ this.WriteObject(new PSHPCCache(cache), enumerateCollection: true);
+ }
+ }
+ catch (CloudErrorException ex)
+ {
+ throw new CloudException(string.Format("Exception: {0}", ex.Body.Error.Message));
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache/Commands/SetAzHpcStorageTarget.cs b/src/HPCCache/HPCCache/Commands/SetAzHpcStorageTarget.cs
new file mode 100644
index 000000000000..d19c5d903cad
--- /dev/null
+++ b/src/HPCCache/HPCCache/Commands/SetAzHpcStorageTarget.cs
@@ -0,0 +1,239 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+namespace Microsoft.Azure.Commands.HPCCache
+{
+ using System;
+ using System.Collections;
+ using System.Collections.Generic;
+ using System.Management.Automation;
+ using System.Net;
+ using Microsoft.Azure.Commands.Common.Strategies;
+ using Microsoft.Azure.Commands.HPCCache.Properties;
+ using Microsoft.Azure.Commands.ResourceManager.Common.ArgumentCompleters;
+ using Microsoft.Azure.Management.StorageCache;
+ using Microsoft.Azure.Management.StorageCache.Models;
+ using Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models;
+ using Microsoft.Rest;
+ using Microsoft.Rest.Azure;
+ using Microsoft.WindowsAzure.Commands.Utilities.Common;
+ using Newtonsoft.Json;
+
+ ///
+ /// SetAzHpcStorageTarget.
+ ///
+ [Cmdlet("Set",
+ ResourceManager.Common.AzureRMConstants.AzureRMPrefix + "HpcCacheStorageTarget",
+ DefaultParameterSetName = ClfsStorageTargetParameterSet,
+ SupportsShouldProcess = true)]
+ [OutputType(typeof(PSHpcStorageTarget))]
+ public class SetAzHpcStorageTarget : HpcCacheBaseCmdlet
+ {
+ private const string NfsStorageTargetParameterSet = "NfsParameterSet";
+ private const string ClfsStorageTargetParameterSet = "ClfsParameterSet";
+ private StorageTarget storageTarget;
+
+ ///
+ /// Gets or sets resource Group Name.
+ ///
+ [Parameter(ValueFromPipelineByPropertyName = true, Mandatory = true, HelpMessage = "Name of resource group under which you want to update storage target.")]
+ [ResourceGroupCompleter]
+ [ValidateNotNullOrEmpty]
+ public string ResourceGroupName { get; set; }
+
+ ///
+ /// Gets or sets resource CacheName.
+ ///
+ [Parameter(ValueFromPipelineByPropertyName = true, Mandatory = true, HelpMessage = "Name of cache.")]
+ [ResourceNameCompleter("Microsoft.StorageCache/caches", nameof(ResourceGroupName))]
+ [ValidateNotNullOrEmpty]
+ public string CacheName { get; set; }
+
+ ///
+ /// Gets or sets resource storage target name.
+ ///
+ [Parameter(ValueFromPipelineByPropertyName = true, Mandatory = true, HelpMessage = "Name of storage target.")]
+ [Alias(StoragTargetNameAlias)]
+ [ValidateNotNullOrEmpty]
+ public string Name { get; set; }
+
+ ///
+ /// Gets or sets CLFS storage target.
+ ///
+ [Parameter(Mandatory = false, ParameterSetName = ClfsStorageTargetParameterSet, HelpMessage = "Update CLFS storage target.")]
+ [ValidateNotNullOrEmpty]
+ public SwitchParameter CLFS { get; set; }
+
+ ///
+ /// Gets or sets NFS storage target.
+ ///
+ [Parameter(Mandatory = false, ParameterSetName = NfsStorageTargetParameterSet, HelpMessage = "Update NFS storage target.")]
+ [ValidateNotNullOrEmpty]
+ public SwitchParameter NFS { get; set; }
+
+ ///
+ /// Gets or sets junctions. Note: only junctions can be updated as of now.
+ ///
+ [Parameter(Mandatory = false, ParameterSetName = ClfsStorageTargetParameterSet, HelpMessage = "Junction.")]
+ [Parameter(Mandatory = false, ParameterSetName = NfsStorageTargetParameterSet, HelpMessage = "Junction.")]
+ [ValidateNotNullOrEmpty]
+ public Hashtable[] Junction { get; set; }
+
+ ///
+ /// Gets or sets AsJob.
+ ///
+ [Parameter(Mandatory = false, HelpMessage = "AsJob.")]
+ public SwitchParameter AsJob { get; set; }
+
+ ///
+ /// Gets or sets switch parameter force.
+ ///
+ [Parameter(Mandatory = false, HelpMessage = "Indicates that the cmdlet does not prompt you for confirmation. By default, this cmdlet prompts you to confirm that you want to flush the cache.")]
+ public SwitchParameter Force { get; set; }
+
+ ///
+ public override void ExecuteCmdlet()
+ {
+ if (string.IsNullOrWhiteSpace(this.ResourceGroupName))
+ {
+ throw new PSArgumentNullException("ResourceGroupName");
+ }
+
+ if (string.IsNullOrWhiteSpace(this.CacheName))
+ {
+ throw new PSArgumentNullException("CacheName");
+ }
+
+ if (string.IsNullOrWhiteSpace(this.Name))
+ {
+ throw new PSArgumentNullException("StorageTargetName");
+ }
+
+ this.ConfirmAction(
+ this.Force.IsPresent,
+ string.Format(Resources.ConfirmUpdateStorageTarget, this.Name),
+ string.Format(Resources.UpdateStorageTarget, this.Name),
+ this.Name,
+ () =>
+ {
+ var storageT = this.DoesStorageTargetExists();
+
+ if (storageT == null)
+ {
+ throw new CloudException(string.Format("Storage target {0} does not exists.", this.Name));
+ }
+
+ this.storageTarget = this.CLFS.IsPresent ? this.CreateClfsStorageTargetParameters(storageT) : this.CreateNfsStorageTargetParameters(storageT);
+ if (this.IsParameterBound(c => c.Junction))
+ {
+ this.storageTarget.Junctions = new List();
+ foreach (var junction in this.Junction)
+ {
+ var nameSpaceJunction = HashtableToDictionary(junction);
+ this.storageTarget.Junctions.Add(
+ new NamespaceJunction(
+ nameSpaceJunction.GetOrNull("namespacePath"),
+ nameSpaceJunction.GetOrNull("targetPath"),
+ nameSpaceJunction.GetOrNull("nfsExport")));
+ }
+ }
+
+ var results = new List() { this.CreateStorageTargetModel() };
+ this.WriteObject(results, enumerateCollection: true);
+ });
+ }
+
+
+ private PSHpcStorageTarget CreateStorageTargetModel()
+ {
+ try
+ {
+ StorageTarget storageTarget = this.HpcCacheClient.StorageTargets.CreateOrUpdate(
+ this.ResourceGroupName,
+ this.CacheName,
+ this.Name,
+ this.storageTarget);
+ }
+ catch (CloudErrorException ex)
+ {
+ // Fix for update storage target, until Swagger is updated with correct response code.
+ if (ex.Response.StatusCode == HttpStatusCode.Accepted)
+ {
+ try
+ {
+ this.storageTarget = Rest.Serialization.SafeJsonConvert.DeserializeObject(ex.Response.Content, this.HpcCacheClient.DeserializationSettings);
+ }
+ catch (JsonException jsonEx)
+ {
+ throw new SerializationException("Unable to deserialize the response.", ex.Response.Content, jsonEx);
+ }
+ }
+ else
+ {
+ throw;
+ }
+ }
+
+ return new PSHpcStorageTarget(this.storageTarget);
+ }
+
+ private StorageTarget DoesStorageTargetExists()
+ {
+ return this.HpcCacheClient.StorageTargets.Get(
+ this.ResourceGroupName,
+ this.CacheName,
+ this.Name);
+ }
+
+ ///
+ /// Update CLFS storage target parameters.
+ ///
+ /// CLFS storage target parameters.
+ private StorageTarget CreateClfsStorageTargetParameters(StorageTarget storageT)
+ {
+ ClfsTarget clfsTarget = new ClfsTarget()
+ {
+ Target = storageT.Clfs.Target,
+ };
+
+ StorageTarget storageTargetParameters = new StorageTarget
+ {
+ TargetType = "clfs",
+ Clfs = clfsTarget,
+ };
+
+ return storageTargetParameters;
+ }
+
+ ///
+ /// Update CLFS storage target parameters.
+ ///
+ /// CLFS storage target parameters.
+ private StorageTarget CreateNfsStorageTargetParameters(StorageTarget storageT)
+ {
+ Nfs3Target nfs3Target = new Nfs3Target()
+ {
+ Target = storageT.Nfs3.Target,
+ UsageModel = storageT.Nfs3.UsageModel,
+ };
+
+ StorageTarget storageTargetParameters = new StorageTarget
+ {
+ TargetType = "nfs3",
+ Nfs3 = nfs3Target,
+ };
+
+ return storageTargetParameters;
+ }
+ }
+}
diff --git a/src/HPCCache/HPCCache/Commands/StartAzHpcCache.cs b/src/HPCCache/HPCCache/Commands/StartAzHpcCache.cs
new file mode 100644
index 000000000000..c27588f5f36d
--- /dev/null
+++ b/src/HPCCache/HPCCache/Commands/StartAzHpcCache.cs
@@ -0,0 +1,138 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+namespace Microsoft.Azure.Commands.HPCCache
+{
+ using System.Management.Automation;
+ using Microsoft.Azure.Commands.HPCCache.Properties;
+ using Microsoft.Azure.Commands.ResourceManager.Common.ArgumentCompleters;
+ using Microsoft.Azure.Management.Internal.Resources.Utilities.Models;
+ using Microsoft.Azure.Management.StorageCache;
+ using Microsoft.Azure.Management.StorageCache.Models;
+ using Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models;
+ using Microsoft.Rest.Azure;
+
+ ///
+ /// Remove HPC Cache.
+ ///
+ [Cmdlet("Start", ResourceManager.Common.AzureRMConstants.AzureRMPrefix + "HpcCache", DefaultParameterSetName = FieldsParameterSet, SupportsShouldProcess = true)]
+ [OutputType(typeof(bool))]
+ public class StartAzHpcCache : HpcCacheBaseCmdlet
+ {
+ ///
+ /// Gets or sets ResourceGroupName.
+ ///
+ [Parameter(ValueFromPipelineByPropertyName = true, Mandatory = true, HelpMessage = "Name of resource group under which you want to start cache.", ParameterSetName = FieldsParameterSet)]
+ [ResourceGroupCompleter]
+ [ValidateNotNullOrEmpty]
+ public string ResourceGroupName { get; set; }
+
+ ///
+ /// Gets or sets Name.
+ ///
+ [Parameter(ValueFromPipelineByPropertyName = true, Mandatory = true, HelpMessage = "Name of cache.", ParameterSetName = FieldsParameterSet)]
+ [Alias(CacheNameAlias)]
+ [ResourceNameCompleter("Microsoft.StorageCache/caches", nameof(ResourceGroupName))]
+ [ValidateNotNullOrEmpty]
+ public string Name { get; set; }
+
+ ///
+ /// Gets or sets resource id of the cache.
+ ///
+ [Parameter(Mandatory = true, ValueFromPipelineByPropertyName = true, HelpMessage = "The resource id of the Cache", ParameterSetName = ResourceIdParameterSet)]
+ [ValidateNotNullOrEmpty]
+ public string ResourceId { get; set; }
+
+ ///
+ /// Gets or sets cache object.
+ ///
+ [Parameter(ParameterSetName = ObjectParameterSet, Mandatory = true, ValueFromPipeline = true, HelpMessage = "The cache object to start.")]
+ [ValidateNotNullOrEmpty]
+ public PSHPCCache InputObject { get; set; }
+
+ ///
+ /// Gets or sets switch parameter force.
+ ///
+ [Parameter(Mandatory = false, HelpMessage = "Indicates that the cmdlet does not prompt you for confirmation. By default, this cmdlet prompts you to confirm that you want to start the cache.")]
+ public SwitchParameter Force { get; set; }
+
+ ///
+ /// Gets or sets switch parameter passthru.
+ ///
+ [Parameter(Mandatory = false, HelpMessage = "This Cmdlet does not return an object by default. If this switch is specified, it returns true if successful.")]
+ public SwitchParameter PassThru { get; set; }
+
+ ///
+ /// Gets or sets Job to run job in background.
+ ///
+ [Parameter(Mandatory = false, HelpMessage = "Run cmdlet in the background")]
+ public SwitchParameter AsJob { get; set; }
+
+ ///
+ /// Execution Cmdlet.
+ ///
+ public override void ExecuteCmdlet()
+ {
+ if (this.ParameterSetName == ResourceIdParameterSet)
+ {
+ var resourceIdentifier = new ResourceIdentifier(this.ResourceId);
+ this.ResourceGroupName = resourceIdentifier.ResourceGroupName;
+ this.Name = resourceIdentifier.ResourceName;
+ }
+ else if (this.ParameterSetName == ObjectParameterSet)
+ {
+ this.ResourceGroupName = this.InputObject.ResourceGroupName;
+ this.Name = this.InputObject.CacheName;
+ }
+
+ this.ConfirmAction(
+ this.Force.IsPresent,
+ string.Format(Resources.ConfirmStartHpcCache, this.Name),
+ string.Format(Resources.StartHpcCache, this.Name),
+ this.Name,
+ () =>
+ {
+ this.StartHpcCache();
+ });
+ }
+
+ ///
+ /// Start HPC Cache.
+ ///
+ public void StartHpcCache()
+ {
+ if (string.IsNullOrWhiteSpace(this.ResourceGroupName))
+ {
+ throw new PSArgumentNullException("ResourceGroupName");
+ }
+
+ if (string.IsNullOrWhiteSpace(this.Name))
+ {
+ throw new PSArgumentNullException("CacheName");
+ }
+
+ try
+ {
+ this.HpcCacheClient.Caches.Start(this.ResourceGroupName, this.Name);
+ if (this.PassThru)
+ {
+ this.WriteObject(true);
+ }
+ }
+ catch (CloudErrorException ex)
+ {
+ throw new CloudException(string.Format("Exception: {0}", ex.Body.Error.Message));
+ }
+ }
+ }
+}
diff --git a/src/HPCCache/HPCCache/Commands/StopAzHpcCache.cs b/src/HPCCache/HPCCache/Commands/StopAzHpcCache.cs
new file mode 100644
index 000000000000..8db138b44098
--- /dev/null
+++ b/src/HPCCache/HPCCache/Commands/StopAzHpcCache.cs
@@ -0,0 +1,133 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+namespace Microsoft.Azure.Commands.HPCCache
+{
+ using System.Globalization;
+ using System.Management.Automation;
+ using Microsoft.Azure.Commands.HPCCache.Properties;
+ using Microsoft.Azure.Commands.ResourceManager.Common.ArgumentCompleters;
+ using Microsoft.Azure.Management.Internal.Resources.Utilities.Models;
+ using Microsoft.Azure.Management.StorageCache;
+ using Microsoft.Azure.Management.StorageCache.Models;
+ using Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models;
+ using Microsoft.Rest.Azure;
+
+ ///
+ /// Stop HPC Cache.
+ ///
+ [Cmdlet("Stop", ResourceManager.Common.AzureRMConstants.AzureRMPrefix + "HpcCache", DefaultParameterSetName = FieldsParameterSet, SupportsShouldProcess = true)]
+ [OutputType(typeof(bool))]
+ public class StopAzHpcCache : HpcCacheBaseCmdlet
+ {
+ ///
+ /// Gets or sets ResourceGroupName.
+ ///
+ [Parameter(ValueFromPipelineByPropertyName = true, Mandatory = true, HelpMessage = "Name of resource group under which you want to stop cache.", ParameterSetName = FieldsParameterSet)]
+ [ResourceGroupCompleter]
+ [ValidateNotNullOrEmpty]
+ public string ResourceGroupName { get; set; }
+
+ ///
+ /// Gets or sets Name.
+ ///
+ [Parameter(ValueFromPipelineByPropertyName = true, Mandatory = true, HelpMessage = "Name of cache.", ParameterSetName = FieldsParameterSet)]
+ [Alias(CacheNameAlias)]
+ [ResourceNameCompleter("Microsoft.StorageCache/caches", nameof(ResourceGroupName))]
+ [ValidateNotNullOrEmpty]
+ public string Name { get; set; }
+
+ ///
+ /// Gets or sets resource id of the cache.
+ ///
+ [Parameter(Mandatory = true, ValueFromPipelineByPropertyName = true, HelpMessage = "The resource id of the Cache", ParameterSetName = ResourceIdParameterSet)]
+ [ValidateNotNullOrEmpty]
+ public string ResourceId { get; set; }
+
+ ///
+ /// Gets or sets cache object.
+ ///
+ [Parameter(ParameterSetName = ObjectParameterSet, Mandatory = true, ValueFromPipeline = true, HelpMessage = "The cache object to stop.")]
+ [ValidateNotNullOrEmpty]
+ public PSHPCCache InputObject { get; set; }
+
+ ///
+ /// Gets or sets switch parameter force.
+ ///
+ [Parameter(Mandatory = false, HelpMessage = "Indicates that the cmdlet does not prompt you for confirmation. By default, this cmdlet prompts you to confirm that you want to stop the cache.")]
+ public SwitchParameter Force { get; set; }
+
+ ///
+ /// Gets or sets switch parameter passthru.
+ ///
+ [Parameter(Mandatory = false, ValueFromPipelineByPropertyName = true, HelpMessage = "This Cmdlet does not return an object by default. If this switch is specified, it returns true if successful.")]
+ public SwitchParameter PassThru { get; set; }
+
+ ///
+ /// Execution Cmdlet.
+ ///
+ public override void ExecuteCmdlet()
+ {
+ if (this.ParameterSetName == ResourceIdParameterSet)
+ {
+ var resourceIdentifier = new ResourceIdentifier(this.ResourceId);
+ this.ResourceGroupName = resourceIdentifier.ResourceGroupName;
+ this.Name = resourceIdentifier.ResourceName;
+ }
+ else if (this.ParameterSetName == ObjectParameterSet)
+ {
+ this.ResourceGroupName = this.InputObject.ResourceGroupName;
+ this.Name = this.InputObject.CacheName;
+ }
+
+ this.ConfirmAction(
+ this.Force.IsPresent,
+ string.Format(CultureInfo.InvariantCulture, Resources.ConfirmStopHpcCache, this.Name),
+ string.Format(CultureInfo.InvariantCulture, Resources.StopHpcCache, this.Name),
+ this.Name,
+ () =>
+ {
+ this.StopHpcCache();
+ });
+ }
+
+ ///
+ /// Stop HPC cache.
+ ///
+ private void StopHpcCache()
+ {
+ if (string.IsNullOrWhiteSpace(this.ResourceGroupName))
+ {
+ throw new PSArgumentNullException("ResourceGroupName");
+ }
+
+ if (string.IsNullOrWhiteSpace(this.Name))
+ {
+ throw new PSArgumentNullException("CacheName");
+ }
+
+ try
+ {
+ this.HpcCacheClient.Caches.Stop(this.ResourceGroupName, this.Name);
+ if (this.PassThru)
+ {
+ this.WriteObject(true);
+ }
+ }
+ catch (CloudErrorException ex)
+ {
+ throw new CloudException(string.Format("Exception: {0}", ex.Body.Error.Message));
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache/Commands/UpdateAzHpcCache.cs b/src/HPCCache/HPCCache/Commands/UpdateAzHpcCache.cs
new file mode 100644
index 000000000000..43ce6da4453f
--- /dev/null
+++ b/src/HPCCache/HPCCache/Commands/UpdateAzHpcCache.cs
@@ -0,0 +1,197 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+namespace Microsoft.Azure.Commands.HPCCache
+{
+ using System.Management.Automation;
+ using Microsoft.Azure.Commands.HPCCache.Properties;
+ using Microsoft.Azure.Commands.ResourceManager.Common.ArgumentCompleters;
+ using Microsoft.Azure.Management.Internal.Resources.Utilities.Models;
+ using Microsoft.Azure.Management.StorageCache;
+ using Microsoft.Azure.Management.StorageCache.Models;
+ using Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models;
+ using Microsoft.Rest.Azure;
+ ///
+ /// Flush or Upgrade HPC Cache.
+ ///
+ [Cmdlet("Update", ResourceManager.Common.AzureRMConstants.AzureRMPrefix + "HpcCache", DefaultParameterSetName = FlushCacheParameterSet, SupportsShouldProcess = true)]
+ [OutputType(typeof(bool))]
+ public class UpdateAzHpcCache : HpcCacheBaseCmdlet
+ {
+ private const string UpgradeCacheParameterSet = "UpgradeParameterSet";
+ private const string FlushCacheParameterSet = "FlushParameterSet";
+
+ ///
+ /// Gets or sets ResourceGroupName.
+ ///
+ [Parameter(ValueFromPipelineByPropertyName = true, Mandatory = true, HelpMessage = "Name of resource group under which you want to flush/upgrade cache.")]
+ [ResourceGroupCompleter]
+ [ValidateNotNullOrEmpty]
+ public string ResourceGroupName { get; set; }
+
+ ///
+ /// Gets or sets Name.
+ ///
+ [Parameter(ValueFromPipelineByPropertyName = true, Mandatory = true, HelpMessage = "Name of cache.")]
+ [Alias(CacheNameAlias)]
+ [ResourceNameCompleter("Microsoft.StorageCache/caches", nameof(ResourceGroupName))]
+ [ValidateNotNullOrEmpty]
+ public string Name { get; set; }
+
+ ///
+ /// Gets or sets resource id of the cache.
+ ///
+ [Parameter(Mandatory = true, ValueFromPipelineByPropertyName = true, HelpMessage = "The resource id of the Cache", ParameterSetName = ResourceIdParameterSet)]
+ [ValidateNotNullOrEmpty]
+ public string ResourceId { get; set; }
+
+ ///
+ /// Gets or sets Upgrade Flag.
+ ///
+ [Parameter(Mandatory = false, ParameterSetName = UpgradeCacheParameterSet, HelpMessage = "Upgrades HPC Cache.")]
+ [ValidateNotNullOrEmpty]
+ public SwitchParameter Upgrade { get; set; }
+
+ ///
+ /// Gets or sets Flush Flag.
+ ///
+ [Parameter(Mandatory = false, ParameterSetName = FlushCacheParameterSet, HelpMessage = "Flushes HPC Cache.")]
+ [ValidateNotNullOrEmpty]
+ public SwitchParameter Flush { get; set; }
+
+ ///
+ /// Gets or sets cache object.
+ ///
+ [Parameter(ParameterSetName = ObjectParameterSet, Mandatory = true, ValueFromPipeline = true, HelpMessage = "The cache object to flush/upgrade.")]
+ [ValidateNotNullOrEmpty]
+ public PSHPCCache InputObject { get; set; }
+
+ ///
+ /// Gets or sets switch parameter force.
+ ///
+ [Parameter(Mandatory = false, HelpMessage = "Indicates that the cmdlet does not prompt you for confirmation. By default, this cmdlet prompts you to confirm that you want to flush/upgrade the cache.")]
+ public SwitchParameter Force { get; set; }
+
+ ///
+ /// Gets or sets switch parameter passthru.
+ ///
+ [Parameter(Mandatory = false, HelpMessage = "Returns an object representing the item with which you are working. By default, this cmdlet does not generate any output.")]
+ public SwitchParameter PassThru { get; set; }
+
+ ///
+ /// Gets or sets Job to run job in background.
+ ///
+ [Parameter(Mandatory = false, HelpMessage = "Run cmdlet in the background")]
+ public SwitchParameter AsJob { get; set; }
+
+ ///
+ /// Execution Cmdlet.
+ ///
+ public override void ExecuteCmdlet()
+ {
+ if (this.ParameterSetName == ResourceIdParameterSet)
+ {
+ var resourceIdentifier = new ResourceIdentifier(this.ResourceId);
+ this.ResourceGroupName = resourceIdentifier.ResourceGroupName;
+ this.Name = resourceIdentifier.ResourceName;
+ }
+ else if (this.ParameterSetName == ObjectParameterSet)
+ {
+ this.ResourceGroupName = this.InputObject.ResourceGroupName;
+ this.Name = this.InputObject.CacheName;
+ }
+
+ if (this.Flush.IsPresent)
+ {
+ this.ConfirmAction(
+ this.Force.IsPresent,
+ string.Format(Resources.ConfirmFlushHpcCache, this.Name),
+ string.Format(Resources.FlushHpcCache, this.Name),
+ this.Name,
+ () =>
+ {
+ this.FlushHpcCache();
+ });
+ }
+ else if (this.Upgrade.IsPresent){
+ this.ConfirmAction(
+ this.Force.IsPresent,
+ string.Format(Resources.ConfirmUpgradeHpcCache, this.Name),
+ string.Format(Resources.UpgradeHpcCache, this.Name),
+ this.Name,
+ () =>
+ {
+ this.UpgradeHpcCache();
+ });
+ }
+ }
+ ///
+ /// Updates HPC Cache by doing upgrade.
+ ///
+ public void UpgradeHpcCache()
+ {
+ if (string.IsNullOrWhiteSpace(this.ResourceGroupName))
+ {
+ throw new PSArgumentNullException("ResourceGroupName");
+ }
+ if (string.IsNullOrWhiteSpace(this.Name))
+ {
+ throw new PSArgumentNullException("CacheName");
+ }
+ if (this.Upgrade.IsPresent)
+ {
+ try
+ {
+ this.HpcCacheClient.Caches.UpgradeFirmware(this.ResourceGroupName, this.Name);
+ if (this.PassThru)
+ {
+ this.WriteObject(true);
+ }
+ }
+ catch (CloudErrorException ex)
+ {
+ throw new CloudException(string.Format("Exception: {0}", ex.Body.Error.Message));
+ }
+ }
+ }
+
+ ///
+ /// Flush HPC Cache.
+ ///
+ public void FlushHpcCache()
+ {
+ if (string.IsNullOrWhiteSpace(this.ResourceGroupName))
+ {
+ throw new PSArgumentNullException("ResourceGroupName");
+ }
+
+ if (string.IsNullOrWhiteSpace(this.Name))
+ {
+ throw new PSArgumentNullException("CacheName");
+ }
+
+ try
+ {
+ this.HpcCacheClient.Caches.Flush(this.ResourceGroupName, this.Name);
+ if (this.PassThru)
+ {
+ this.WriteObject(true);
+ }
+ }
+ catch (CloudErrorException ex)
+ {
+ throw new CloudException(string.Format("Exception: {0}", ex.Body.Error.Message));
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache/HPCCache.csproj b/src/HPCCache/HPCCache/HPCCache.csproj
new file mode 100644
index 000000000000..db710dbff532
--- /dev/null
+++ b/src/HPCCache/HPCCache/HPCCache.csproj
@@ -0,0 +1,32 @@
+
+
+
+ HPCCache
+
+
+
+
+
+
+
+
+
+ $(LegacyAssemblyPrefix)$(PsModuleName)
+
+
+
+
+ True
+ True
+ Resources.resx
+
+
+
+
+
+ ResXFileCodeGenerator
+ Resources.Designer.cs
+
+
+
+
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache/Models/HpcCacheBaseCmdlet.cs b/src/HPCCache/HPCCache/Models/HpcCacheBaseCmdlet.cs
new file mode 100644
index 000000000000..dbfa7d8020f8
--- /dev/null
+++ b/src/HPCCache/HPCCache/Models/HpcCacheBaseCmdlet.cs
@@ -0,0 +1,76 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+
+namespace Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models
+{
+ using System.Collections;
+ using System.Collections.Generic;
+ using System.Linq;
+ using Microsoft.Azure.Commands.ResourceManager.Common;
+ using Microsoft.Azure.Management.StorageCache;
+
+ ///
+ /// Base Cmdlet class for HPC cache cmdlets.
+ ///
+ public abstract class HpcCacheBaseCmdlet : AzureRMCmdlet
+ {
+ protected const string CacheNameAlias = "CacheName";
+ protected const string StoragTargetNameAlias = "StorageTargetName";
+
+ protected const string ResourceIdParameterSet = "ByResourceIdParameterSet";
+ protected const string ObjectParameterSet = "ByObjectParameterSet";
+ protected const string ParentObjectParameterSet = "ByParentObjectParameterSet";
+ protected const string FieldsParameterSet = "ByFieldsParameterSet";
+
+ private HpcCacheManagementClientWrapper hpcCacheClientWrapper;
+
+ ///
+ /// Gets or Sets HPC Cache client.
+ ///
+ public IStorageCacheManagementClient HpcCacheClient
+ {
+ get
+ {
+ if (this.hpcCacheClientWrapper == null)
+ {
+ this.hpcCacheClientWrapper = new HpcCacheManagementClientWrapper(this.DefaultProfile.DefaultContext);
+ }
+
+ this.hpcCacheClientWrapper.VerboseLogger = this.WriteVerboseWithTimestamp;
+ this.hpcCacheClientWrapper.ErrorLogger = this.WriteErrorWithTimestamp;
+ this.hpcCacheClientWrapper.HpcCacheManagementClient.ApiVersion = "2019-11-01";
+ return this.hpcCacheClientWrapper.HpcCacheManagementClient;
+ }
+
+ set
+ {
+ this.hpcCacheClientWrapper = new HpcCacheManagementClientWrapper(value);
+ }
+ }
+
+ ///
+ /// HashtableToDictionary.
+ ///
+ /// Key.
+ /// Value.
+ /// Hashtable.
+ /// Dictionary.
+ public static Dictionary HashtableToDictionary(Hashtable table)
+ {
+ return table
+ .Cast()
+ .ToDictionary(kvp => (TK)kvp.Key, kvp => (TV)kvp.Value);
+ }
+ }
+}
diff --git a/src/HPCCache/HPCCache/Models/HpcCacheManagementClient.cs b/src/HPCCache/HPCCache/Models/HpcCacheManagementClient.cs
new file mode 100644
index 000000000000..57815d2f5608
--- /dev/null
+++ b/src/HPCCache/HPCCache/Models/HpcCacheManagementClient.cs
@@ -0,0 +1,95 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+
+namespace Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models
+{
+ using System;
+ using Microsoft.Azure.Commands.Common.Authentication;
+ using Microsoft.Azure.Commands.Common.Authentication.Abstractions;
+ using Microsoft.Azure.Management.StorageCache;
+
+ ///
+ /// Hpc cache management client wrapper.
+ ///
+ public partial class HpcCacheManagementClientWrapper
+ {
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ /// Azure context.
+ public HpcCacheManagementClientWrapper(IAzureContext context)
+ : this(AzureSession.Instance.ClientFactory.CreateArmClient(context, AzureEnvironment.Endpoint.ResourceManager))
+ {
+ }
+
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ /// Resource management client.
+ public HpcCacheManagementClientWrapper(IStorageCacheManagementClient resourceManagementClient)
+ {
+ this.HpcCacheManagementClient = resourceManagementClient;
+ }
+
+ ///
+ /// Gets or sets hpc Cache management client.
+ ///
+ public IStorageCacheManagementClient HpcCacheManagementClient { get; set; }
+
+ ///
+ /// Gets or sets verbose logging.
+ ///
+ public Action VerboseLogger { get; set; }
+
+ ///
+ /// Gets or sets error logging.
+ ///
+ public Action ErrorLogger { get; set; }
+
+ ///
+ /// Gets or sets warning Logger.
+ ///
+ public Action WarningLogger { get; set; }
+
+ ///
+ /// Writes verbose.
+ ///
+ /// Verbose format.
+ /// Arguments to write verbose.
+ private void WriteVerbose(string verboseFormat, params object[] args)
+ {
+ this.VerboseLogger?.Invoke(string.Format(verboseFormat, args));
+ }
+
+ ///
+ /// Write warning.
+ ///
+ /// Warning format.
+ /// Arguments to write warning.
+ private void WriteWarning(string warningFormat, params object[] args)
+ {
+ this.WarningLogger?.Invoke(string.Format(warningFormat, args));
+ }
+
+ ///
+ /// Write error.
+ ///
+ /// Error format.
+ /// Arguments to write error.
+ private void WriteError(string errorFormat, params object[] args)
+ {
+ this.ErrorLogger?.Invoke(string.Format(errorFormat, args));
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache/Models/PSHpcCache.cs b/src/HPCCache/HPCCache/Models/PSHpcCache.cs
new file mode 100644
index 000000000000..c9cb8dfc31c1
--- /dev/null
+++ b/src/HPCCache/HPCCache/Models/PSHpcCache.cs
@@ -0,0 +1,106 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+
+namespace Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models
+{
+ using System.Collections.Generic;
+ using Microsoft.Azure.Management.Internal.Resources.Utilities.Models;
+ using StorageCacheModels = Microsoft.Azure.Management.StorageCache.Models;
+
+ ///
+ /// Wrapper that wraps the response from .NET SDK.
+ ///
+ public class PSHPCCache
+ {
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ /// cache object.
+ public PSHPCCache(StorageCacheModels.Cache cache)
+ {
+ this.ResourceGroupName = new ResourceIdentifier(cache.Id).ResourceGroupName;
+ this.CacheName = cache.Name;
+ this.Id = cache.Id;
+ this.Location = cache.Location;
+ this.Sku = new PSHpcCacheSku(cache.Sku);
+ this.CacheSize = cache.CacheSizeGB;
+ this.Health = new PSHpcCacheHealth(cache.Health);
+ this.MountAddresses = cache.MountAddresses;
+ this.ProvisioningState = cache.ProvisioningState;
+ this.Subnet = cache.Subnet;
+ this.UpgradeStatus = new PSHpcCacheUpgradeStatus(cache.UpgradeStatus);
+ this.Tags = cache.Tags;
+ }
+
+ ///
+ /// Gets or Sets ResourceGroupName.
+ ///
+ public string ResourceGroupName { get; set; }
+
+ ///
+ /// Gets or Sets CacheName.
+ ///
+ public string CacheName { get; set; }
+
+ ///
+ /// Gets or Sets Cache ID.
+ ///
+ public string Id { get; set; }
+
+ ///
+ /// Gets or Sets Location.
+ ///
+ public string Location { get; set; }
+
+ ///
+ /// Gets or Sets Sku.
+ ///
+ public PSHpcCacheSku Sku { get; set; }
+
+ ///
+ /// Gets or Sets Health.
+ ///
+ public PSHpcCacheHealth Health { get; set; }
+
+ ///
+ /// Gets or Sets MountAddresses.
+ ///
+ public IList MountAddresses { get; set; }
+
+ ///
+ /// Gets or Sets Cache ProvisioningState.
+ ///
+ public string ProvisioningState { get; set; }
+
+ ///
+ /// Gets or Sets Subnet.
+ ///
+ public string Subnet { get; set; }
+
+ ///
+ /// Gets or Sets UpgradeStatus.
+ ///
+ public PSHpcCacheUpgradeStatus UpgradeStatus { get; set; }
+
+ ///
+ /// Gets or Sets CacheSize.
+ ///
+ public int? CacheSize { get; set; }
+
+ ///
+ /// Gets or Sets Tags.
+ ///
+ public object Tags { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache/Models/PSHpcCacheHealth.cs b/src/HPCCache/HPCCache/Models/PSHpcCacheHealth.cs
new file mode 100644
index 000000000000..ba8b87b0dbd2
--- /dev/null
+++ b/src/HPCCache/HPCCache/Models/PSHpcCacheHealth.cs
@@ -0,0 +1,47 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+
+namespace Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models
+{
+ using System;
+ using System.Collections.Generic;
+ using System.Text;
+ using StorageCacheModels = Microsoft.Azure.Management.StorageCache.Models;
+
+ ///
+ /// PSHpcCacheHealth.
+ ///
+ public class PSHpcCacheHealth
+ {
+ ///
+ /// Gets cache health state.
+ ///
+ public string State;
+
+ ///
+ /// Gets cache health status description.
+ ///
+ public string StatusDescription;
+
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ /// cache health object.
+ public PSHpcCacheHealth(StorageCacheModels.CacheHealth health)
+ {
+ this.State = health.State;
+ this.StatusDescription = health.StatusDescription;
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache/Models/PSHpcCacheSku.cs b/src/HPCCache/HPCCache/Models/PSHpcCacheSku.cs
new file mode 100644
index 000000000000..2e11fdd42306
--- /dev/null
+++ b/src/HPCCache/HPCCache/Models/PSHpcCacheSku.cs
@@ -0,0 +1,41 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+
+namespace Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models
+{
+ using StorageCacheModels = Microsoft.Azure.Management.StorageCache.Models;
+
+ ///
+ /// cache sku ps wrapper.
+ ///
+ public class PSHpcCacheSku
+ {
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ /// cache sku object.
+ public PSHpcCacheSku(StorageCacheModels.CacheSku sku)
+ {
+ if (sku != null)
+ {
+ this.Name = sku.Name;
+ }
+ }
+
+ ///
+ /// Gets or Sets Sku name.
+ ///
+ public string Name { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache/Models/PSHpcCacheUpgradeStatus.cs b/src/HPCCache/HPCCache/Models/PSHpcCacheUpgradeStatus.cs
new file mode 100644
index 000000000000..bab1b00062e4
--- /dev/null
+++ b/src/HPCCache/HPCCache/Models/PSHpcCacheUpgradeStatus.cs
@@ -0,0 +1,69 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+
+namespace Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models
+{
+ using System;
+ using System.Collections.Generic;
+ using System.Text;
+ using StorageCacheModels = Microsoft.Azure.Management.StorageCache.Models;
+
+ ///
+ /// Cache upgrade status.
+ ///
+ public class PSHpcCacheUpgradeStatus
+ {
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ /// Cache upgrade status object.
+ public PSHpcCacheUpgradeStatus(StorageCacheModels.CacheUpgradeStatus upgradeStatus)
+ {
+ this.CurrentFirmwareVersion = upgradeStatus.CurrentFirmwareVersion;
+ this.FirmwareUpdateStatus = upgradeStatus.FirmwareUpdateStatus;
+ this.FirmwareUpdateDeadline = upgradeStatus.FirmwareUpdateDeadline;
+ this.LastFirmwareUpdate = upgradeStatus.LastFirmwareUpdate;
+ this.PendingFirmwareVersion = upgradeStatus.PendingFirmwareVersion;
+ }
+
+ ///
+ /// Gets version string of the firmware currently installed on this Cache.
+ ///
+ public string CurrentFirmwareVersion { get; private set; }
+
+ ///
+ /// Gets or sets true if there is a firmware update ready to install on this Cache. The firmware
+ /// will automatically be installed after firmwareUpdateDeadline if not triggered
+ /// earlier via the upgrade operation. Possible values include: 'available', 'unavailable'.
+ ///
+ public string FirmwareUpdateStatus { get; set; }
+
+ ///
+ /// Gets or sets time at which the pending firmware update will automatically be installed
+ /// on the Cache.
+ ///
+ public DateTime? FirmwareUpdateDeadline { get; set; }
+
+ ///
+ /// Gets or Sets time of the last successful firmware update.
+ ///
+ public DateTime? LastFirmwareUpdate { get; set; }
+
+ ///
+ /// Gets or Sets when firmwareUpdateAvailable is true, this field holds the version string
+ /// for the update.
+ ///
+ public string PendingFirmwareVersion { get; set; }
+ }
+}
diff --git a/src/HPCCache/HPCCache/Models/PSHpcCacheUsageModels.cs b/src/HPCCache/HPCCache/Models/PSHpcCacheUsageModels.cs
new file mode 100644
index 000000000000..5dc1f4d61eb7
--- /dev/null
+++ b/src/HPCCache/HPCCache/Models/PSHpcCacheUsageModels.cs
@@ -0,0 +1,53 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+namespace Microsoft.Azure.Commands.HPCCache
+{
+ using Microsoft.Azure.Management.StorageCache.Models;
+
+ ///
+ /// PSUsageModels wrapper.
+ ///
+ public class PSHpcCacheUsageModels
+ {
+ ///
+ /// Initializes a new instance of the class.
+ /// PSHpcCacheUsageModels.
+ ///
+ /// usagemodel.
+ public PSHpcCacheUsageModels(UsageModel usagemodel)
+ {
+ if (usagemodel != null)
+ {
+ this.Name = usagemodel.ModelName;
+ this.TargetType = usagemodel.TargetType;
+ this.Display = usagemodel.Display.Description;
+ }
+ }
+
+ ///
+ /// Gets or sets Name.
+ ///
+ public string Name { get; set; }
+
+ ///
+ /// Gets or sets TargetType.
+ ///
+ public string TargetType { get; set; }
+
+ ///
+ /// Gets or sets Display.
+ ///
+ public string Display { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache/Models/PSHpcClfsTarget.cs b/src/HPCCache/HPCCache/Models/PSHpcClfsTarget.cs
new file mode 100644
index 000000000000..71dd86975148
--- /dev/null
+++ b/src/HPCCache/HPCCache/Models/PSHpcClfsTarget.cs
@@ -0,0 +1,38 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+
+namespace Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models
+{
+ using StorageCacheModels = Microsoft.Azure.Management.StorageCache.Models;
+
+ ///
+ /// PSHpcClfsTarget.
+ ///
+ public class PSHpcClfsTarget
+ {
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ /// clfsTarget.
+ public PSHpcClfsTarget(StorageCacheModels.ClfsTarget clfsTarget)
+ {
+ this.Target = clfsTarget.Target;
+ }
+
+ ///
+ /// Gets or Sets Clfs Target.
+ ///
+ public string Target { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache/Models/PSHpcNfs3Target.cs b/src/HPCCache/HPCCache/Models/PSHpcNfs3Target.cs
new file mode 100644
index 000000000000..2d2312154669
--- /dev/null
+++ b/src/HPCCache/HPCCache/Models/PSHpcNfs3Target.cs
@@ -0,0 +1,44 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+
+namespace Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models
+{
+ using StorageCacheModels = Microsoft.Azure.Management.StorageCache.Models;
+
+ ///
+ /// PSHpcNfs3Target.
+ ///
+ public class PSHpcNfs3Target
+ {
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ /// nfs3Target.
+ public PSHpcNfs3Target(StorageCacheModels.Nfs3Target nfs3Target)
+ {
+ this.Target = nfs3Target.Target;
+ this.UsageModel = nfs3Target.UsageModel;
+ }
+
+ ///
+ /// Gets or Sets NFS3 Target.
+ ///
+ public string Target { get; set; }
+
+ ///
+ /// Gets or Sets storageTarget UsageModel.
+ ///
+ public string UsageModel { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache/Models/PSHpcStorageTarget.cs b/src/HPCCache/HPCCache/Models/PSHpcStorageTarget.cs
new file mode 100644
index 000000000000..5bfb6b66efd1
--- /dev/null
+++ b/src/HPCCache/HPCCache/Models/PSHpcStorageTarget.cs
@@ -0,0 +1,98 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+
+namespace Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models
+{
+ using System;
+ using System.Collections.Generic;
+ using System.Linq;
+ using Microsoft.Azure.Management.StorageCache.Models;
+ using StorageCacheModels = Microsoft.Azure.Management.StorageCache.Models;
+
+ ///
+ /// Wrapper that wraps the response from .NET SDK.
+ ///
+ public class PSHpcStorageTarget
+ {
+ private StorageTarget storageTarget;
+
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ public PSHpcStorageTarget()
+ {
+ this.storageTarget = new StorageCacheModels.StorageTarget();
+ }
+
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ /// storage target object.
+ public PSHpcStorageTarget(StorageCacheModels.StorageTarget storageTargetObj)
+ {
+ this.storageTarget = storageTargetObj ?? throw new ArgumentNullException("storageTargetObj");
+ this.Name = storageTargetObj.Name;
+ this.Id = storageTargetObj.Id;
+ this.TargetType = storageTargetObj.TargetType;
+ if (storageTargetObj.Nfs3 != null)
+ {
+ this.Nfs3 = new PSHpcNfs3Target(storageTargetObj.Nfs3);
+ }
+
+ if (storageTargetObj.Clfs != null)
+ {
+ this.Clfs = new PSHpcClfsTarget(storageTargetObj.Clfs);
+ }
+
+ this.ProvisioningState = storageTargetObj.ProvisioningState;
+ this.Junctions = new List();
+ this.Junctions = storageTargetObj.Junctions.Select(j => new PSNamespaceJunction(j.NamespacePath, j.NfsExport, j.TargetPath)).ToList();
+ }
+
+ ///
+ /// Gets or Sets Storage target name.
+ ///
+ public string Name { get; set; }
+
+ ///
+ /// Gets or Sets Storage target ID.
+ ///
+ public string Id { get; set; }
+
+ ///
+ /// Gets or Sets TargetType.
+ ///
+ public string TargetType { get; set; }
+
+ ///
+ /// Gets or Sets Storage target ProvisioningState.
+ ///
+ public string ProvisioningState { get; set; }
+
+ ///
+ /// Gets or sets storage target junctions.
+ ///
+ public IList Junctions { get; set; }
+
+ ///
+ /// Gets or Sets Storage target Nfs3.
+ ///
+ public PSHpcNfs3Target Nfs3 { get; set; }
+
+ ///
+ /// Gets or Sets Storage target Clfs.
+ ///
+ public PSHpcClfsTarget Clfs { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache/Models/PSNamespaceJunction.cs b/src/HPCCache/HPCCache/Models/PSNamespaceJunction.cs
new file mode 100644
index 000000000000..4c8cba43c0da
--- /dev/null
+++ b/src/HPCCache/HPCCache/Models/PSNamespaceJunction.cs
@@ -0,0 +1,50 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+
+namespace Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models
+{
+ ///
+ /// PSNamespaceJunction.
+ ///
+ public class PSNamespaceJunction
+ {
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ /// nameSpacePath.
+ /// targetPath.
+ /// nfsExport.
+ public PSNamespaceJunction(string nameSpacePath, string targetPath, string nfsExport)
+ {
+ this.NameSpacePath = nameSpacePath;
+ this.TargetPath = targetPath;
+ this.NfsExport = nfsExport;
+ }
+
+ ///
+ /// Gets or sets namespace path on a Cache for a Storage Target.
+ ///
+ public string NameSpacePath { get; set; }
+
+ ///
+ /// Gets or sets path in Storage Target to which namespacePath points.
+ ///
+ public string TargetPath { get; set; }
+
+ ///
+ /// Gets or sets NFS export where targetPath exists.
+ ///
+ public string NfsExport { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache/Models/PSSku.cs b/src/HPCCache/HPCCache/Models/PSSku.cs
new file mode 100644
index 000000000000..bbb573c3d31a
--- /dev/null
+++ b/src/HPCCache/HPCCache/Models/PSSku.cs
@@ -0,0 +1,66 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+namespace Microsoft.Azure.Commands.HPCCache
+{
+ using System.Collections.Generic;
+ using Microsoft.Azure.Management.StorageCache.Models;
+
+ ///
+ /// PSSKU.
+ ///
+ public class PSSku
+ {
+ ///
+ /// Initializes a new instance of the class.
+ /// PS Sku.
+ ///
+ /// sku.
+ public PSSku(ResourceSku sku)
+ {
+ if (sku != null)
+ {
+ this.Name = sku.Name;
+ this.Locations = sku.Locations;
+ this.ResourceType = sku.ResourceType;
+ this.Restrictions = sku.Restrictions;
+ this.Capabilities = sku.Capabilities;
+ }
+ }
+
+ ///
+ /// Gets or sets get or sets value.
+ ///
+ public string Name { get; set; }
+
+ ///
+ /// Gets or sets get or sets Location.
+ ///
+ public IList Locations { get; set; }
+
+ ///
+ /// Gets or sets get or sets ResourceType.
+ ///
+ public string ResourceType { get; set; }
+
+ ///
+ /// Gets or sets get or sets Restrictions.
+ ///
+ public IList Restrictions { get; set; }
+
+ ///
+ /// Gets or sets get or sets Capabilities.
+ ///
+ public IList Capabilities { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache/Models/Utility.cs b/src/HPCCache/HPCCache/Models/Utility.cs
new file mode 100644
index 000000000000..87d0e1433b77
--- /dev/null
+++ b/src/HPCCache/HPCCache/Models/Utility.cs
@@ -0,0 +1,50 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+
+namespace Microsoft.Azure.Commands.HPCCache
+{
+ using System;
+ using System.Collections;
+ using System.Collections.Generic;
+ using System.Linq;
+
+ ///
+ /// Utility Class.
+ ///
+ public static class Utility
+ {
+ ///
+ /// Validate Resource Group.
+ ///
+ /// string resourceGroupName.
+ public static void ValidateResourceGroup(string resourceGroupName)
+ {
+ if (resourceGroupName != null && resourceGroupName.Contains("/"))
+ {
+ throw new ArgumentException("Invalid Resource Group Name");
+ }
+ }
+
+ ///
+ /// Convert tags to dictionary.
+ ///
+ /// Hashtable table.
+ /// dictionary of tags.
+ public static IDictionary ToDictionaryTags(this Hashtable table)
+ {
+ return table?.Cast()
+ .ToDictionary(kvp => (string)kvp.Key, kvp => (string)kvp.Value);
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache/Properties/AssemblyInfo.cs b/src/HPCCache/HPCCache/Properties/AssemblyInfo.cs
new file mode 100644
index 000000000000..6bdba17ec6a0
--- /dev/null
+++ b/src/HPCCache/HPCCache/Properties/AssemblyInfo.cs
@@ -0,0 +1,28 @@
+// ----------------------------------------------------------------------------------
+//
+// Copyright Microsoft Corporation
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ----------------------------------------------------------------------------------
+
+using System;
+using System.Reflection;
+using System.Runtime.InteropServices;
+
+[assembly: AssemblyTitle("Microsoft Azure Powershell - Hpc Cache")]
+[assembly: AssemblyCompany("Microsoft")]
+[assembly: AssemblyProduct("Microsoft Azure Powershell")]
+[assembly: AssemblyCopyright("Copyright © Microsoft")]
+
+[assembly: ComVisible(false)]
+[assembly: CLSCompliant(false)]
+[assembly: Guid("77c1e905-4cc3-4a3d-bf4e-b42ad50bb2ba")]
+[assembly: AssemblyVersion("0.1.0")]
+[assembly: AssemblyFileVersion("0.1.0")]
diff --git a/src/HPCCache/HPCCache/Properties/Resources.Designer.cs b/src/HPCCache/HPCCache/Properties/Resources.Designer.cs
new file mode 100644
index 000000000000..c64ef6aba0f2
--- /dev/null
+++ b/src/HPCCache/HPCCache/Properties/Resources.Designer.cs
@@ -0,0 +1,252 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+// Runtime Version:4.0.30319.42000
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+namespace Microsoft.Azure.Commands.HPCCache.Properties {
+ using System;
+
+
+ ///
+ /// A strongly-typed resource class, for looking up localized strings, etc.
+ ///
+ // This class was auto-generated by the StronglyTypedResourceBuilder
+ // class via a tool like ResGen or Visual Studio.
+ // To add or remove a member, edit your .ResX file then rerun ResGen
+ // with the /str option, or rebuild your VS project.
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+ internal class Resources {
+
+ private static global::System.Resources.ResourceManager resourceMan;
+
+ private static global::System.Globalization.CultureInfo resourceCulture;
+
+ [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+ internal Resources() {
+ }
+
+ ///
+ /// Returns the cached ResourceManager instance used by this class.
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ internal static global::System.Resources.ResourceManager ResourceManager {
+ get {
+ if (object.ReferenceEquals(resourceMan, null)) {
+ global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Microsoft.Azure.Commands.HPCCache.Properties.Resources", typeof(Resources).Assembly);
+ resourceMan = temp;
+ }
+ return resourceMan;
+ }
+ }
+
+ ///
+ /// Overrides the current thread's CurrentUICulture property for all
+ /// resource lookups using this strongly typed resource class.
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ internal static global::System.Globalization.CultureInfo Culture {
+ get {
+ return resourceCulture;
+ }
+ set {
+ resourceCulture = value;
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Are you sure you want to create HPC cache storage target '{0}'?.
+ ///
+ internal static string ConfirmCreateStorageTarget {
+ get {
+ return ResourceManager.GetString("ConfirmCreateStorageTarget", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Are you sure you want to remove HPC cache '{0}'? .
+ ///
+ internal static string ConfirmDeleteHpcCache {
+ get {
+ return ResourceManager.GetString("ConfirmDeleteHpcCache", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Are you sure you want to remove Storage Target '{0}'?.
+ ///
+ internal static string ConfirmDeleteHpcCacheStorageTarget {
+ get {
+ return ResourceManager.GetString("ConfirmDeleteHpcCacheStorageTarget", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Are you sure you want to flush HPC cache '{0}'?.
+ ///
+ internal static string ConfirmFlushHpcCache {
+ get {
+ return ResourceManager.GetString("ConfirmFlushHpcCache", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Are you sure you want to start HPC cache '{0}'?.
+ ///
+ internal static string ConfirmStartHpcCache {
+ get {
+ return ResourceManager.GetString("ConfirmStartHpcCache", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Are you sure you want to stop HPC cache '{0}'?.
+ ///
+ internal static string ConfirmStopHpcCache {
+ get {
+ return ResourceManager.GetString("ConfirmStopHpcCache", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Are you sure you want to update HPC cache storage target '{0}'?.
+ ///
+ internal static string ConfirmUpdateStorageTarget {
+ get {
+ return ResourceManager.GetString("ConfirmUpdateStorageTarget", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Are you sure you want to upgrade software for the HPC cache {0}'?.
+ ///
+ internal static string ConfirmUpgradeHpcCache {
+ get {
+ return ResourceManager.GetString("ConfirmUpgradeHpcCache", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Creating a new Cache in resource group '{0}' with name '{1}'..
+ ///
+ internal static string CreateCache {
+ get {
+ return ResourceManager.GetString("CreateCache", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Creating HPC cache '{0}' ....
+ ///
+ internal static string CreateHpcCache {
+ get {
+ return ResourceManager.GetString("CreateHpcCache", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Creating HPC cache storage target '{0}' ....
+ ///
+ internal static string CreateStorageTarget {
+ get {
+ return ResourceManager.GetString("CreateStorageTarget", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Deleting HPC cache '{0}' ....
+ ///
+ internal static string DeleteHpcCache {
+ get {
+ return ResourceManager.GetString("DeleteHpcCache", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Deleting Storage Target '{0}' ....
+ ///
+ internal static string DeleteHpcCacheStorageTarget {
+ get {
+ return ResourceManager.GetString("DeleteHpcCacheStorageTarget", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Flushing HPC cache '{0}' ....
+ ///
+ internal static string FlushHpcCache {
+ get {
+ return ResourceManager.GetString("FlushHpcCache", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to The Resource '{0}' under resource group '{1}' was not found..
+ ///
+ internal static string ResourceNotFound {
+ get {
+ return ResourceManager.GetString("ResourceNotFound", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Updating cache: '{0}' in resource group '{1}'..
+ ///
+ internal static string SetCache {
+ get {
+ return ResourceManager.GetString("SetCache", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Starting HPC cache '{0}' ....
+ ///
+ internal static string StartHpcCache {
+ get {
+ return ResourceManager.GetString("StartHpcCache", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Stopping HPC cache '{0}' ....
+ ///
+ internal static string StopHpcCache {
+ get {
+ return ResourceManager.GetString("StopHpcCache", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to The storage target '{0}' already exists for HPC cache '{0}'..
+ ///
+ internal static string StorageTargetAlreadyExist {
+ get {
+ return ResourceManager.GetString("StorageTargetAlreadyExist", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Updating HPC cache storage target '{0}' ....
+ ///
+ internal static string UpdateStorageTarget {
+ get {
+ return ResourceManager.GetString("UpdateStorageTarget", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Upgrading software for HPC cache '{0}' ....
+ ///
+ internal static string UpgradeHpcCache {
+ get {
+ return ResourceManager.GetString("UpgradeHpcCache", resourceCulture);
+ }
+ }
+ }
+}
diff --git a/src/HPCCache/HPCCache/Properties/Resources.resx b/src/HPCCache/HPCCache/Properties/Resources.resx
new file mode 100644
index 000000000000..165da598f94a
--- /dev/null
+++ b/src/HPCCache/HPCCache/Properties/Resources.resx
@@ -0,0 +1,183 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Are you sure you want to create HPC cache storage target '{0}'?
+
+
+ Are you sure you want to remove HPC cache '{0}'?
+
+
+ Are you sure you want to remove Storage Target '{0}'?
+
+
+ Are you sure you want to flush HPC cache '{0}'?
+
+
+ Are you sure you want to start HPC cache '{0}'?
+
+
+ Are you sure you want to stop HPC cache '{0}'?
+
+
+ Are you sure you want to update HPC cache storage target '{0}'?
+
+
+ Are you sure you want to upgrade software for the HPC cache {0}'?
+
+
+ Creating a new Cache in resource group '{0}' with name '{1}'.
+
+
+ Creating HPC cache '{0}' ...
+
+
+ Creating HPC cache storage target '{0}' ...
+
+
+ Deleting HPC cache '{0}' ...
+
+
+ Deleting Storage Target '{0}' ...
+
+
+ Flushing HPC cache '{0}' ...
+
+
+ The Resource '{0}' under resource group '{1}' was not found.
+
+
+ Updating cache: '{0}' in resource group '{1}'.
+
+
+ Starting HPC cache '{0}' ...
+
+
+ Stopping HPC cache '{0}' ...
+
+
+ The storage target '{0}' already exists for HPC cache '{0}'.
+
+
+ Updating HPC cache storage target '{0}' ...
+
+
+ Upgrading software for HPC cache '{0}' ...
+
+
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache/StartupScripts/sample.ps1 b/src/HPCCache/HPCCache/StartupScripts/sample.ps1
new file mode 100644
index 000000000000..1a3d1052f460
--- /dev/null
+++ b/src/HPCCache/HPCCache/StartupScripts/sample.ps1
@@ -0,0 +1 @@
+#Placeholder for future scripts: Please delete this file and uncomment Always within the block in the .csproj file.
\ No newline at end of file
diff --git a/src/HPCCache/HPCCache/help/Az.HPCCache.md b/src/HPCCache/HPCCache/help/Az.HPCCache.md
new file mode 100644
index 000000000000..434e4b22ec43
--- /dev/null
+++ b/src/HPCCache/HPCCache/help/Az.HPCCache.md
@@ -0,0 +1,52 @@
+---
+Module Name: Az.HPCCache
+Module Guid: 6470f56b-378e-48f4-b60f-954c01bf1822
+Download Help Link: https://docs.microsoft.com/en-us/powershell/module/az.hpccache
+Help Version: 1.0.0.0
+Locale: en-US
+---
+
+# Az.HPCCache Module
+## Description
+HPC Cache
+
+## Az.HPCCache Cmdlets
+### [Get-AzHpcCache](Get-AzHpcCache.md)
+Gets a cache(s).
+
+### [Get-AzHpcCacheSku](Get-AzHpcCacheSku.md)
+Gets all SKUs available in subscription.
+
+### [Get-AzHpcCacheStorageTarget](Get-AzHpcCacheStorageTarget.md)
+Get HPC cache storage target(s).
+
+### [Get-AzHpcCacheUsageModel](Get-AzHpcCacheUsageModel.md)
+Gets all usageModels for NFS Storage Target.
+
+### [New-AzHpcCache](New-AzHpcCache.md)
+Creates a HPC Cache.
+
+### [New-AzHpcCacheStorageTarget](New-AzHpcCacheStorageTarget.md)
+Creates a Storage Target.
+
+### [Remove-AzHpcCache](Remove-AzHpcCache.md)
+Removes a HPC Cache.
+
+### [Remove-AzHpcCacheStorageTarget](Remove-AzHpcCacheStorageTarget.md)
+Removes a Storage Target.
+
+### [Set-AzHpcCache](Set-AzHpcCache.md)
+Updates tags on a HPC Cache.
+
+### [Set-AzHpcCacheStorageTarget](Set-AzHpcCacheStorageTarget.md)
+Updates a Storage Target.
+
+### [Start-AzHpcCache](Start-AzHpcCache.md)
+Starts HPC cache.
+
+### [Stop-AzHpcCache](Stop-AzHpcCache.md)
+Stops HPC cache.
+
+### [Update-AzHpcCache](Update-AzHpcCache.md)
+Updates a HPC Cache.
+
diff --git a/src/HPCCache/HPCCache/help/Get-AzHpcCache.md b/src/HPCCache/HPCCache/help/Get-AzHpcCache.md
new file mode 100644
index 000000000000..b618907b96e1
--- /dev/null
+++ b/src/HPCCache/HPCCache/help/Get-AzHpcCache.md
@@ -0,0 +1,100 @@
+---
+external help file: Microsoft.Azure.PowerShell.Cmdlets.HPCCache.dll-Help.xml
+Module Name: Az.HPCCache
+online version: https://docs.microsoft.com/en-us/powershell/module/az.hpccache/get-azhpccache
+schema: 2.0.0
+---
+
+# Get-AzHpcCache
+
+## SYNOPSIS
+Gets a cache(s).
+
+## SYNTAX
+
+```
+Get-AzHpcCache [-ResourceGroupName ] [-Name ] [-DefaultProfile ]
+ []
+```
+
+## DESCRIPTION
+The **Get-AzHpcCache** cmdlet gets a single cache, cache(s) in a specific resource group, or subscription wide list of caches.
+
+## EXAMPLES
+
+### Example 1
+```powershell
+PS C:\> Get-AzHPCCache -ResourceGroupName rgtest -CacheName cachetest
+```
+
+### Example 2
+```powershell
+PS C:\> Get-AzHPCCache -ResourceGroupName rgtest
+```
+
+### Example 3
+```powershell
+PS C:\> Get-AzHPCCache
+```
+
+## PARAMETERS
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: Microsoft.Azure.Commands.Common.Authentication.Abstractions.Core.IAzureContextContainer
+Parameter Sets: (All)
+Aliases: AzContext, AzureRmContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Name
+Name of specific cache.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases: CacheName
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+Name of resource group under which you want to list cache(s).
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### System.String
+
+## OUTPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models.PSHPCCache
+
+## NOTES
+
+## RELATED LINKS
diff --git a/src/HPCCache/HPCCache/help/Get-AzHpcCacheSku.md b/src/HPCCache/HPCCache/help/Get-AzHpcCacheSku.md
new file mode 100644
index 000000000000..bbc7c5a8884a
--- /dev/null
+++ b/src/HPCCache/HPCCache/help/Get-AzHpcCacheSku.md
@@ -0,0 +1,59 @@
+---
+external help file: Microsoft.Azure.PowerShell.Cmdlets.HPCCache.dll-Help.xml
+Module Name: Az.HPCCache
+online version: https://docs.microsoft.com/en-us/powershell/module/az.hpccache/get-azhpccachesku
+schema: 2.0.0
+---
+
+# Get-AzHpcCacheSku
+
+## SYNOPSIS
+Gets all SKUs available in subscription.
+
+## SYNTAX
+
+```
+Get-AzHpcCacheSku [-DefaultProfile ] []
+```
+
+## DESCRIPTION
+The **Get-AzHpcCacheSku** cmdlet returns a list of SKUs available in subscription.
+
+## EXAMPLES
+
+### Example 1
+```powershell
+PS C:\> Get-AzHpcCacheSku
+```
+
+## PARAMETERS
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: Microsoft.Azure.Commands.Common.Authentication.Abstractions.Core.IAzureContextContainer
+Parameter Sets: (All)
+Aliases: AzContext, AzureRmContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### None
+
+## OUTPUTS
+
+### Microsoft.Azure.Commands.HPCCache.PSSku
+
+## NOTES
+
+## RELATED LINKS
diff --git a/src/HPCCache/HPCCache/help/Get-AzHpcCacheStorageTarget.md b/src/HPCCache/HPCCache/help/Get-AzHpcCacheStorageTarget.md
new file mode 100644
index 000000000000..9a49bbe033db
--- /dev/null
+++ b/src/HPCCache/HPCCache/help/Get-AzHpcCacheStorageTarget.md
@@ -0,0 +1,153 @@
+---
+external help file: Microsoft.Azure.PowerShell.Cmdlets.HPCCache.dll-Help.xml
+Module Name: Az.HPCCache
+online version: https://docs.microsoft.com/en-us/powershell/module/az.hpccache/get-azhpccachestoragetarget
+schema: 2.0.0
+---
+
+# Get-AzHpcCacheStorageTarget
+
+## SYNOPSIS
+Get HPC cache storage target(s).
+
+## SYNTAX
+
+### ByFieldsParameterSet (Default)
+```
+Get-AzHpcCacheStorageTarget -ResourceGroupName -CacheName [-Name ]
+ [-DefaultProfile ] []
+```
+
+### ByResourceIdParameterSet
+```
+Get-AzHpcCacheStorageTarget -CacheId [-DefaultProfile ] []
+```
+
+### ByObjectParameterSet
+```
+Get-AzHpcCacheStorageTarget -CacheObject [-DefaultProfile ]
+ []
+```
+
+## DESCRIPTION
+The **Get-AzHpcCacheStorageTarget** cmdlet gets storage target(s) that exist on cache.
+
+## EXAMPLES
+
+### Example 1
+```powershell
+PS C:\> Get-AzHpcCacheStorageTarget -ResourceGroupName rgTest -CacheName cacheTest
+```
+
+### Example 2
+```powershell
+PS C:\> Get-AzHpcCacheStorageTarget -ResourceGroupName rgTest -CacheName cacheTest -StorageTargetName stTest
+```
+
+## PARAMETERS
+
+### -CacheId
+The resource id of the Cache
+
+```yaml
+Type: System.String
+Parameter Sets: ByResourceIdParameterSet
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -CacheName
+Name of cache.
+
+```yaml
+Type: System.String
+Parameter Sets: ByFieldsParameterSet
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -CacheObject
+The cache object to start.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models.PSHPCCache
+Parameter Sets: ByObjectParameterSet
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByValue)
+Accept wildcard characters: False
+```
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: Microsoft.Azure.Commands.Common.Authentication.Abstractions.Core.IAzureContextContainer
+Parameter Sets: (All)
+Aliases: AzContext, AzureRmContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Name
+Name of storage target.
+
+```yaml
+Type: System.String
+Parameter Sets: ByFieldsParameterSet
+Aliases: StorageTargetName
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+Name of resource group cache is in.
+
+
+```yaml
+Type: System.String
+Parameter Sets: ByFieldsParameterSet
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### System.String
+
+## OUTPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models.PSHpcStorageTarget
+
+## NOTES
+
+## RELATED LINKS
diff --git a/src/HPCCache/HPCCache/help/Get-AzHpcCacheUsageModel.md b/src/HPCCache/HPCCache/help/Get-AzHpcCacheUsageModel.md
new file mode 100644
index 000000000000..91738cce3225
--- /dev/null
+++ b/src/HPCCache/HPCCache/help/Get-AzHpcCacheUsageModel.md
@@ -0,0 +1,60 @@
+---
+external help file: Microsoft.Azure.PowerShell.Cmdlets.HPCCache.dll-Help.xml
+Module Name: Az.HPCCache
+online version: https://docs.microsoft.com/en-us/powershell/module/az.hpccache/get-azhpccacheusagemodels
+schema: 2.0.0
+---
+
+# Get-AzHpcCacheUsageModel
+
+## SYNOPSIS
+Gets all usageModels for NFS Storage Target.
+
+## SYNTAX
+
+```
+Get-AzHpcCacheUsageModel [-DefaultProfile ] []
+```
+
+## DESCRIPTION
+The **Get-AzHpcCacheUsageModel** cmdlet returns a list of usage models for NFS Storage Target.
+
+## EXAMPLES
+
+### Example 1
+```powershell
+PS C:\> Get-AzHpcCacheUsageModel
+```
+
+## PARAMETERS
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: Microsoft.Azure.Commands.Common.Authentication.Abstractions.Core.IAzureContextContainer
+Parameter Sets: (All)
+Aliases: AzContext, AzureRmContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### None
+
+## OUTPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models.PSHpcUsageModels
+
+### System.Object
+## NOTES
+
+## RELATED LINKS
diff --git a/src/HPCCache/HPCCache/help/New-AzHpcCache.md b/src/HPCCache/HPCCache/help/New-AzHpcCache.md
new file mode 100644
index 000000000000..87802cce2856
--- /dev/null
+++ b/src/HPCCache/HPCCache/help/New-AzHpcCache.md
@@ -0,0 +1,213 @@
+---
+external help file: Microsoft.Azure.PowerShell.Cmdlets.HPCCache.dll-Help.xml
+Module Name: Az.HPCCache
+online version: https://docs.microsoft.com/en-us/powershell/module/az.hpccache/new-azhpccache
+schema: 2.0.0
+---
+
+# New-AzHpcCache
+
+## SYNOPSIS
+Creates a HPC Cache.
+
+## SYNTAX
+
+```
+New-AzHpcCache -ResourceGroupName -Name -Sku -SubnetUri -CacheSize
+ -Location [-Tag ] [-AsJob] [-DefaultProfile ] [-WhatIf] [-Confirm]
+ []
+```
+
+## DESCRIPTION
+The **New-AzHpcCache** cmdlet creates a Azure HPC Cache.
+
+## EXAMPLES
+
+### Example 1
+```powershell
+PS C:\> New-AzHpcCache -ResourceGroupName testRG -CacheName testCache -Sku Standard_2G -SubnetUri /subscriptions//resourceGroups/testRG/providers/Microsoft.Network/virtualNetworks/testvnet/subnets/defauly-tip1-test2 -cacheSize 3072 -Location eastus -Tag @{"tag1" = "value1"; "tag2" = "value2"}
+```
+
+## PARAMETERS
+
+### -AsJob
+Run cmdlet in the background
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -CacheSize
+CacheSize.
+
+```yaml
+Type: System.Int32
+Parameter Sets: (All)
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: Microsoft.Azure.Commands.Common.Authentication.Abstractions.Core.IAzureContextContainer
+Parameter Sets: (All)
+Aliases: AzContext, AzureRmContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Location
+Location.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -Name
+Name of cache.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases: CacheName
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+Name of resource group under which you want to create cache.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -Sku
+Sku.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -SubnetUri
+SubnetURI.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -Tag
+The tags to associate with HPC Cache.
+
+```yaml
+Type: System.Collections.Hashtable
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Confirm
+Prompts you for confirmation before running the cmdlet.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases: cf
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WhatIf
+Shows what would happen if the cmdlet runs. The cmdlet is not run.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases: wi
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### System.String
+
+### System.Int32
+
+## OUTPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models.PSHPCCache
+
+## NOTES
+
+## RELATED LINKS
diff --git a/src/HPCCache/HPCCache/help/New-AzHpcCacheStorageTarget.md b/src/HPCCache/HPCCache/help/New-AzHpcCacheStorageTarget.md
new file mode 100644
index 000000000000..6f2c3bb797f2
--- /dev/null
+++ b/src/HPCCache/HPCCache/help/New-AzHpcCacheStorageTarget.md
@@ -0,0 +1,269 @@
+---
+external help file: Microsoft.Azure.PowerShell.Cmdlets.HPCCache.dll-Help.xml
+Module Name: Az.HPCCache
+online version: https://docs.microsoft.com/en-us/powershell/module/az.hpccache/new-azhpccachestoragetarget
+schema: 2.0.0
+---
+
+# New-AzHpcCacheStorageTarget
+
+## SYNOPSIS
+Creates a Storage Target.
+
+## SYNTAX
+
+### ClfsParameterSet (Default)
+```
+New-AzHpcCacheStorageTarget -ResourceGroupName -CacheName -Name [-CLFS]
+ [-StorageContainerID ] [-Junction ] [-AsJob] [-Force]
+ [-DefaultProfile ] [-WhatIf] [-Confirm] []
+```
+
+### NfsParameterSet
+```
+New-AzHpcCacheStorageTarget -ResourceGroupName -CacheName -Name [-NFS]
+ [-HostName ] [-UsageModel ] [-Junction ] [-AsJob] [-Force]
+ [-DefaultProfile ] [-WhatIf] [-Confirm] []
+```
+
+## DESCRIPTION
+The **New-AzHpcCacheStorageTarget** cmdlet adds a Storage Target to Azure HPC Cache.
+
+## EXAMPLES
+
+### Example 1
+```powershell
+PS C:\> New-AzHpcCacheStorageTarget -ResourceGroupName testRG -CacheName testCache -StorageTargetName testST -CLFS -StorageContainerID "/subscriptions/testsub/resourceGroups/testRG/providers/Microsoft.Storage/storageAccounts/testdstorageaccount/blobServices/default/containers/testcontainer" -Junctions @(@{"namespacePath"="/msazure";"targetPath"="/";"nfsExport"="/"})
+```
+
+### Example 2
+```powershell
+PS C:\> New-AzHpcCacheStorageTarget -ResourceGroupName testRG -CacheName testCache -StorageTargetName testST -NFS -UsageModel "READ_HEAVY_INFREQ" -Junctions @(@{"namespacePath"="/msazure";"targetPath"="/";"nfsExport"="/"})
+```
+
+## PARAMETERS
+
+### -AsJob
+Run cmdlet in the background
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -CacheName
+Name of cache.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -CLFS
+Update CLFS Storage Target type.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: ClfsParameterSet
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: Microsoft.Azure.Commands.Common.Authentication.Abstractions.Core.IAzureContextContainer
+Parameter Sets: (All)
+Aliases: AzContext, AzureRmContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Force
+Indicates that the cmdlet does not prompt you for confirmation. By default, this cmdlet prompts you to confirm that you want to flush the cache.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -HostName
+NFS host name.
+
+```yaml
+Type: System.String
+Parameter Sets: NfsParameterSet
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Junction
+Junction.
+
+```yaml
+Type: System.Collections.Hashtable[]
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Name
+Name of storage target.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases: StorageTargetName
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -NFS
+Update NFS Storage Target type.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: NfsParameterSet
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+"Name of resource group under which you want to create storage target for given cache.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -StorageContainerID
+StorageContainerID
+
+```yaml
+Type: System.String
+Parameter Sets: ClfsParameterSet
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -UsageModel
+NFS usage model.
+
+```yaml
+Type: System.String
+Parameter Sets: NfsParameterSet
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Confirm
+Prompts you for confirmation before running the cmdlet.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases: cf
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WhatIf
+Shows what would happen if the cmdlet runs. The cmdlet is not run.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases: wi
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### System.String
+
+## OUTPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models.PsHpcStorageTarget
+
+## NOTES
+
+## RELATED LINKS
diff --git a/src/HPCCache/HPCCache/help/Remove-AzHpcCache.md b/src/HPCCache/HPCCache/help/Remove-AzHpcCache.md
new file mode 100644
index 000000000000..90a0fb6b9d54
--- /dev/null
+++ b/src/HPCCache/HPCCache/help/Remove-AzHpcCache.md
@@ -0,0 +1,164 @@
+---
+external help file: Microsoft.Azure.PowerShell.Cmdlets.HPCCache.dll-Help.xml
+Module Name: Az.HPCCache
+online version: https://docs.microsoft.com/en-us/powershell/module/az.hpccache/remove-azhpccache
+schema: 2.0.0
+---
+
+# Remove-AzHpcCache
+
+## SYNOPSIS
+Removes a HPC Cache.
+
+## SYNTAX
+
+```
+Remove-AzHpcCache -ResourceGroupName -Name [-Force] [-PassThru] [-AsJob]
+ [-DefaultProfile ] [-WhatIf] [-Confirm] []
+```
+
+## DESCRIPTION
+The **Remove-AzHpcCache** cmdlet removes a Azure HPC Cache.
+
+## EXAMPLES
+
+### Example 1
+```powershell
+PS C:\> Remove-AzHpcCache -ResourceGroupName testRG -CacheName testCache
+```
+
+## PARAMETERS
+
+### -AsJob
+Run cmdlet in the background
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: Microsoft.Azure.Commands.Common.Authentication.Abstractions.Core.IAzureContextContainer
+Parameter Sets: (All)
+Aliases: AzContext, AzureRmContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Force
+Indicates that the cmdlet does not prompt you for confirmation. By default, this cmdlet prompts you to confirm that you want to remove the cache.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Name
+Name of cache.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases: CacheName
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -PassThru
+Returns an object representing the item with which you are working.
+By default, this cmdlet does not generate any output.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+Name of resource group under which you want to remove cache.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -Confirm
+Prompts you for confirmation before running the cmdlet.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases: cf
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WhatIf
+Shows what would happen if the cmdlet runs. The cmdlet is not run.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases: wi
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### System.String
+
+## OUTPUTS
+
+## NOTES
+
+## RELATED LINKS
diff --git a/src/HPCCache/HPCCache/help/Remove-AzHpcCacheStorageTarget.md b/src/HPCCache/HPCCache/help/Remove-AzHpcCacheStorageTarget.md
new file mode 100644
index 000000000000..02f0e6d0ccf3
--- /dev/null
+++ b/src/HPCCache/HPCCache/help/Remove-AzHpcCacheStorageTarget.md
@@ -0,0 +1,179 @@
+---
+external help file: Microsoft.Azure.PowerShell.Cmdlets.HPCCache.dll-Help.xml
+Module Name: Az.HPCCache
+online version: https://docs.microsoft.com/en-us/powershell/module/az.hpccache/remove-azhpccachestoragetarget
+schema: 2.0.0
+---
+
+# Remove-AzHpcCacheStorageTarget
+
+## SYNOPSIS
+Removes a Storage Target.
+
+## SYNTAX
+
+```
+Remove-AzHpcCacheStorageTarget -ResourceGroupName -CacheName -Name [-Force]
+ [-PassThru] [-AsJob] [-DefaultProfile ] [-WhatIf] [-Confirm] []
+```
+
+## DESCRIPTION
+The **Remove-AzHpcCacheStorageTarget** cmdlet removes a Storage Target from Azure HPC Cache.
+
+## EXAMPLES
+
+### Example 1
+```powershell
+PS C:\> Remove-AzHpcCacheStorageTarget -ResourceGroupName testRG -CacheName testCache -StorageTargetName testST
+```
+
+## PARAMETERS
+
+### -AsJob
+Run cmdlet in the background
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -CacheName
+Name of cache.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: Microsoft.Azure.Commands.Common.Authentication.Abstractions.Core.IAzureContextContainer
+Parameter Sets: (All)
+Aliases: AzContext, AzureRmContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Force
+Indicates that the cmdlet does not prompt you for confirmation. By default, this cmdlet prompts you to confirm that you want to remove the storage target.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Name
+Name of storage target.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases: StorageTargetName
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -PassThru
+Returns an object representing the item with which you are working.
+By default, this cmdlet does not generate any output.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+Name of resource group under which you want to remove storage target from cache.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -Confirm
+Prompts you for confirmation before running the cmdlet.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases: cf
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WhatIf
+Shows what would happen if the cmdlet runs. The cmdlet is not run.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases: wi
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### System.String
+
+## OUTPUTS
+
+## NOTES
+
+## RELATED LINKS
diff --git a/src/HPCCache/HPCCache/help/Set-AzHpcCache.md b/src/HPCCache/HPCCache/help/Set-AzHpcCache.md
new file mode 100644
index 000000000000..111f884524a2
--- /dev/null
+++ b/src/HPCCache/HPCCache/help/Set-AzHpcCache.md
@@ -0,0 +1,174 @@
+---
+external help file: Microsoft.Azure.PowerShell.Cmdlets.HPCCache.dll-Help.xml
+Module Name: Az.HPCCache
+online version: https://docs.microsoft.com/en-us/powershell/module/az.hpccache/set-azhpccache
+schema: 2.0.0
+---
+
+# Set-AzHpcCache
+
+## SYNOPSIS
+Updates tags on a HPC Cache.
+
+## SYNTAX
+
+### ByFieldsParameterSet (Default)
+```
+Set-AzHpcCache -ResourceGroupName -Name [-Tag ] [-AsJob]
+ [-DefaultProfile ] [-WhatIf] [-Confirm] []
+```
+
+### ByObjectParameterSet
+```
+Set-AzHpcCache -InputObject [-AsJob] [-DefaultProfile ] [-WhatIf]
+ [-Confirm] []
+```
+
+## DESCRIPTION
+The **Set-AzHpcCache** cmdlet updates an Azure HPC Cache tags.
+
+## EXAMPLES
+
+### Example 1
+```powershell
+PS C:\> Set-AzHpcCache -ResourceGroupName testRG -CacheName testCache -Tag @{"tag3" = "value1"; "tag4" = "value2"}
+```
+
+## PARAMETERS
+
+### -AsJob
+Run cmdlet in the background
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: Microsoft.Azure.Commands.Common.Authentication.Abstractions.Core.IAzureContextContainer
+Parameter Sets: (All)
+Aliases: AzContext, AzureRmContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -InputObject
+The cache object to update.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models.PSHPCCache
+Parameter Sets: ByObjectParameterSet
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByValue)
+Accept wildcard characters: False
+```
+
+### -Name
+Name of cache.
+
+```yaml
+Type: System.String
+Parameter Sets: ByFieldsParameterSet
+Aliases: CacheName
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+Name of resource group under which you want to update cache.
+
+```yaml
+Type: System.String
+Parameter Sets: ByFieldsParameterSet
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -Tag
+The tags to associate with HPC Cache.
+
+```yaml
+Type: System.Collections.Hashtable
+Parameter Sets: ByFieldsParameterSet
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Confirm
+Prompts you for confirmation before running the cmdlet.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases: cf
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WhatIf
+Shows what would happen if the cmdlet runs. The cmdlet is not run.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases: wi
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### System.String
+
+### System.Int32
+
+## OUTPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models.PSHPCCache
+
+## NOTES
+
+## RELATED LINKS
diff --git a/src/HPCCache/HPCCache/help/Set-AzHpcCacheStorageTarget.md b/src/HPCCache/HPCCache/help/Set-AzHpcCacheStorageTarget.md
new file mode 100644
index 000000000000..c63d7e6fa3fa
--- /dev/null
+++ b/src/HPCCache/HPCCache/help/Set-AzHpcCacheStorageTarget.md
@@ -0,0 +1,224 @@
+---
+external help file: Microsoft.Azure.PowerShell.Cmdlets.HPCCache.dll-Help.xml
+Module Name: Az.HPCCache
+online version: https://docs.microsoft.com/en-us/powershell/module/az.hpccache/set-azhpccachestoragetarget
+schema: 2.0.0
+---
+
+# Set-AzHpcCacheStorageTarget
+
+## SYNOPSIS
+Updates a Storage Target.
+
+## SYNTAX
+
+### ClfsParameterSet (Default)
+```
+Set-AzHpcCacheStorageTarget -ResourceGroupName -CacheName -Name [-CLFS]
+ [-Junction ] [-AsJob] [-Force] [-DefaultProfile ] [-WhatIf] [-Confirm]
+ []
+```
+
+### NfsParameterSet
+```
+Set-AzHpcCacheStorageTarget -ResourceGroupName -CacheName -Name [-NFS]
+ [-Junction ] [-AsJob] [-Force] [-DefaultProfile ] [-WhatIf] [-Confirm]
+ []
+```
+
+## DESCRIPTION
+The **Set-AzHpcCacheStorageTarget** cmdlet updates a Storage Target attached to Azure HPC cache.
+
+## EXAMPLES
+
+### Example 1
+```powershell
+PS C:\> Set-AzHpcCacheStorageTarget -ResourceGroupName testRG -CacheName testCache -StorageTargetName testST -CLFS -Junctions @(@{"namespacePath"="/msazure";"targetPath"="/";"nfsExport"="/"})
+```
+
+### Example 2
+```powershell
+PS C:\> Set-AzHpcCacheStorageTarget -ResourceGroupName testRG -CacheName testCache -StorageTargetName testST -NFS -Junctions @(@{"namespacePath"="/msazure";"targetPath"="/";"nfsExport"="/export"})
+```
+
+## PARAMETERS
+
+### -AsJob
+Run cmdlet in the background
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -CacheName
+Name of cache.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -CLFS
+Update CLFS Storage Target type.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: ClfsParameterSet
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: Microsoft.Azure.Commands.Common.Authentication.Abstractions.Core.IAzureContextContainer
+Parameter Sets: (All)
+Aliases: AzContext, AzureRmContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Force
+Indicates that the cmdlet does not prompt you for confirmation. By default, this cmdlet prompts you to confirm that you want to flush the cache.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Junction
+Junction.
+
+```yaml
+Type: System.Collections.Hashtable[]
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Name
+Name of storage target.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases: StorageTargetName
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -NFS
+Update NFS Storage Target type.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: NfsParameterSet
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+Name of resource group under which you want to update storage target.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -Confirm
+Prompts you for confirmation before running the cmdlet.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases: cf
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WhatIf
+Shows what would happen if the cmdlet runs. The cmdlet is not run.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases: wi
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### System.String
+
+## OUTPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models.PsHpcStorageTarget
+
+## NOTES
+
+## RELATED LINKS
diff --git a/src/HPCCache/HPCCache/help/Start-AzHpcCache.md b/src/HPCCache/HPCCache/help/Start-AzHpcCache.md
new file mode 100644
index 000000000000..f3ee172bc666
--- /dev/null
+++ b/src/HPCCache/HPCCache/help/Start-AzHpcCache.md
@@ -0,0 +1,207 @@
+---
+external help file: Microsoft.Azure.PowerShell.Cmdlets.HPCCache.dll-Help.xml
+Module Name: Az.HPCCache
+online version: https://docs.microsoft.com/en-us/powershell/module/az.hpccache/start-azhpccache
+schema: 2.0.0
+---
+
+# Start-AzHpcCache
+
+## SYNOPSIS
+Starts HPC cache.
+
+## SYNTAX
+
+### ByFieldsParameterSet (Default)
+```
+Start-AzHpcCache -ResourceGroupName -Name [-Force] [-PassThru] [-AsJob]
+ [-DefaultProfile ] [-WhatIf] [-Confirm] []
+```
+
+### ByResourceIdParameterSet
+```
+Start-AzHpcCache -ResourceId [-Force] [-PassThru] [-AsJob] [-DefaultProfile ]
+ [-WhatIf] [-Confirm] []
+```
+
+### ByObjectParameterSet
+```
+Start-AzHpcCache -InputObject [-Force] [-PassThru] [-AsJob]
+ [-DefaultProfile ] [-WhatIf] [-Confirm] []
+```
+
+## DESCRIPTION
+The **Start-AzHpcCache** cmdlet starts a Azure HPC Cache.
+
+## EXAMPLES
+
+### Example 1
+```powershell
+PS C:\> Start-AzHpcCache -ResourceGroupName testRG -CacheName testCache
+```
+
+## PARAMETERS
+
+### -AsJob
+Run cmdlet in the background
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: Microsoft.Azure.Commands.Common.Authentication.Abstractions.Core.IAzureContextContainer
+Parameter Sets: (All)
+Aliases: AzContext, AzureRmContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Force
+Indicates that the cmdlet does not prompt you for confirmation. By default, this cmdlet prompts you to confirm that you want to start the cache.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -InputObject
+The cache object to start.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models.PSHPCCache
+Parameter Sets: ByObjectParameterSet
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByValue)
+Accept wildcard characters: False
+```
+
+### -Name
+Name of cache.
+
+```yaml
+Type: System.String
+Parameter Sets: ByFieldsParameterSet
+Aliases: CacheName
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -PassThru
+Returns an object representing the item with which you are working.
+By default, this cmdlet does not generate any output.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+Name of resource group under which you want to start cache.
+
+```yaml
+Type: System.String
+Parameter Sets: ByFieldsParameterSet
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -ResourceId
+The resource id of the Cache
+
+```yaml
+Type: System.String
+Parameter Sets: ByResourceIdParameterSet
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -Confirm
+Prompts you for confirmation before running the cmdlet.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases: cf
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WhatIf
+Shows what would happen if the cmdlet runs. The cmdlet is not run.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases: wi
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### System.String
+
+## OUTPUTS
+
+## NOTES
+
+## RELATED LINKS
diff --git a/src/HPCCache/HPCCache/help/Stop-AzHpcCache.md b/src/HPCCache/HPCCache/help/Stop-AzHpcCache.md
new file mode 100644
index 000000000000..81c661396ac9
--- /dev/null
+++ b/src/HPCCache/HPCCache/help/Stop-AzHpcCache.md
@@ -0,0 +1,192 @@
+---
+external help file: Microsoft.Azure.PowerShell.Cmdlets.HPCCache.dll-Help.xml
+Module Name: Az.HPCCache
+online version: https://docs.microsoft.com/en-us/powershell/module/az.hpccache/stop-azhpccache
+schema: 2.0.0
+---
+
+# Stop-AzHpcCache
+
+## SYNOPSIS
+Stops HPC cache.
+
+## SYNTAX
+
+### ByFieldsParameterSet (Default)
+```
+Stop-AzHpcCache -ResourceGroupName -Name [-Force] [-PassThru]
+ [-DefaultProfile ] [-WhatIf] [-Confirm] []
+```
+
+### ByResourceIdParameterSet
+```
+Stop-AzHpcCache -ResourceId [-Force] [-PassThru] [-DefaultProfile ] [-WhatIf]
+ [-Confirm] []
+```
+
+### ByObjectParameterSet
+```
+Stop-AzHpcCache -InputObject [-Force] [-PassThru] [-DefaultProfile ]
+ [-WhatIf] [-Confirm] []
+```
+
+## DESCRIPTION
+The **Stop-AzHpcCache** cmdlet stops a Azure HPC Cache.
+
+## EXAMPLES
+
+### Example 1
+```powershell
+PS C:\> Stop-AzHpcCache -ResourceGroupName testRG -CacheName testCache
+```
+
+## PARAMETERS
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: Microsoft.Azure.Commands.Common.Authentication.Abstractions.Core.IAzureContextContainer
+Parameter Sets: (All)
+Aliases: AzContext, AzureRmContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Force
+Indicates that the cmdlet does not prompt you for confirmation. By default, this cmdlet prompts you to confirm that you want to stop the cache.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -InputObject
+The cache object to stop.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models.PSHPCCache
+Parameter Sets: ByObjectParameterSet
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByValue)
+Accept wildcard characters: False
+```
+
+### -Name
+Name of cache.
+
+```yaml
+Type: System.String
+Parameter Sets: ByFieldsParameterSet
+Aliases: CacheName
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -PassThru
+Returns an object representing the item with which you are working.
+By default, this cmdlet does not generate any output.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+Name of resource group under which you want to stop cache.
+
+```yaml
+Type: System.String
+Parameter Sets: ByFieldsParameterSet
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -ResourceId
+The resource id of the Cache
+
+```yaml
+Type: System.String
+Parameter Sets: ByResourceIdParameterSet
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -Confirm
+Prompts you for confirmation before running the cmdlet.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases: cf
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WhatIf
+Shows what would happen if the cmdlet runs. The cmdlet is not run.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases: wi
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### System.String
+
+## OUTPUTS
+
+## NOTES
+
+## RELATED LINKS
diff --git a/src/HPCCache/HPCCache/help/Update-AzHpcCache.md b/src/HPCCache/HPCCache/help/Update-AzHpcCache.md
new file mode 100644
index 000000000000..cd0e7a1769a4
--- /dev/null
+++ b/src/HPCCache/HPCCache/help/Update-AzHpcCache.md
@@ -0,0 +1,243 @@
+---
+external help file: Microsoft.Azure.PowerShell.Cmdlets.HPCCache.dll-Help.xml
+Module Name: Az.HPCCache
+online version: https://docs.microsoft.com/en-us/powershell/module/az.hpccache/update-azhpccache
+schema: 2.0.0
+---
+
+# Update-AzHpcCache
+
+## SYNOPSIS
+Updates a HPC Cache.
+
+## SYNTAX
+
+### FlushParameterSet (Default)
+```
+Update-AzHpcCache -ResourceGroupName -Name [-Flush] [-Force] [-PassThru] [-AsJob]
+ [-DefaultProfile ] [-WhatIf] [-Confirm] []
+```
+
+### ByResourceIdParameterSet
+```
+Update-AzHpcCache -ResourceGroupName -Name -ResourceId [-Force] [-PassThru] [-AsJob]
+ [-DefaultProfile ] [-WhatIf] [-Confirm] []
+```
+
+### UpgradeParameterSet
+```
+Update-AzHpcCache -ResourceGroupName -Name [-Upgrade] [-Force] [-PassThru] [-AsJob]
+ [-DefaultProfile ] [-WhatIf] [-Confirm] []
+```
+
+### ByObjectParameterSet
+```
+Update-AzHpcCache -ResourceGroupName -Name -InputObject [-Force] [-PassThru]
+ [-AsJob] [-DefaultProfile ] [-WhatIf] [-Confirm] []
+```
+
+## DESCRIPTION
+The **Update-AzHpcCache** cmdlet updates a Azure HPC Cache.
+
+## EXAMPLES
+
+### Example 1
+```powershell
+PS C:\> Update-AzHpcCache -ResourceGroupName testRG -CacheName testCache
+```
+
+## PARAMETERS
+
+### -AsJob
+Run cmdlet in the background
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: Microsoft.Azure.Commands.Common.Authentication.Abstractions.Core.IAzureContextContainer
+Parameter Sets: (All)
+Aliases: AzContext, AzureRmContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Flush
+Flushes HPC Cache.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: FlushParameterSet
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Force
+Indicates that the cmdlet does not prompt you for confirmation. By default, this cmdlet prompts you to confirm that you want to update the cache.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -InputObject
+The cache object to update.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.HPCCache.Models.PSHPCCache
+Parameter Sets: ByObjectParameterSet
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByValue)
+Accept wildcard characters: False
+```
+
+### -Name
+Name of cache.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases: CacheName
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -PassThru
+Returns an object representing the item with which you are working.
+By default, this cmdlet does not generate any output.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+Name of resource group under which you want to update cache.
+
+```yaml
+Type: System.String
+Parameter Sets: (All)
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -ResourceId
+The resource id of the Cache
+
+```yaml
+Type: System.String
+Parameter Sets: ByResourceIdParameterSet
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByPropertyName)
+Accept wildcard characters: False
+```
+
+### -Upgrade
+Upgrade HpcCache.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: UpgradeParameterSet
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Confirm
+Prompts you for confirmation before running the cmdlet.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases: cf
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WhatIf
+Shows what would happen if the cmdlet runs. The cmdlet is not run.
+
+```yaml
+Type: System.Management.Automation.SwitchParameter
+Parameter Sets: (All)
+Aliases: wi
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### System.String
+
+## OUTPUTS
+
+## NOTES
+
+## RELATED LINKS
diff --git a/src/HPCCache/documentation/current-breaking-changes.md b/src/HPCCache/documentation/current-breaking-changes.md
new file mode 100644
index 000000000000..296d9c35a10a
--- /dev/null
+++ b/src/HPCCache/documentation/current-breaking-changes.md
@@ -0,0 +1,41 @@
+
+
+## Current Breaking Changes
diff --git a/src/HPCCache/documentation/upcoming-breaking-changes.md b/src/HPCCache/documentation/upcoming-breaking-changes.md
new file mode 100644
index 000000000000..e01c405de7a3
--- /dev/null
+++ b/src/HPCCache/documentation/upcoming-breaking-changes.md
@@ -0,0 +1,28 @@
+
+
+# Upcoming Breaking Changes
\ No newline at end of file
diff --git a/tools/CreateMappings_rules.json b/tools/CreateMappings_rules.json
index 7ed504df8076..6a5bc9a6b1f9 100644
--- a/tools/CreateMappings_rules.json
+++ b/tools/CreateMappings_rules.json
@@ -85,6 +85,8 @@
{ "regex": "HDInsight", "alias": "HDInsight" },
+ { "regex": "HPCCache", "alias": "HPCCache" },
+
{ "regex": "LogicApp", "alias": "Logic Apps" },
{ "regex": "NotificationHubs", "alias": "Notification Hubs" },