コード例 #1
0
        public async Task CreateDisk()
        {
            #region Snippet:Managing_Disks_CreateADisk
            ArmClient            armClient    = new ArmClient(new DefaultAzureCredential());
            SubscriptionResource subscription = await armClient.GetDefaultSubscriptionAsync();

            // first we need to get the resource group
            string rgName = "myRgName";
            ResourceGroupResource resourceGroup = await subscription.GetResourceGroups().GetAsync(rgName);

            // Now we get the disk collection from the resource group
            DiskCollection diskCollection = resourceGroup.GetDisks();
            // Use the same location as the resource group
            string diskName = "myDisk";
            var    input    = new DiskData(resourceGroup.Data.Location)
            {
                Sku = new DiskSku()
                {
                    Name = DiskStorageAccountTypes.StandardLRS
                },
                CreationData = new CreationData(DiskCreateOption.Empty),
                DiskSizeGB   = 1,
            };
            ArmOperation <DiskResource> lro = await diskCollection.CreateOrUpdateAsync(WaitUntil.Completed, diskName, input);

            DiskResource disk = lro.Value;
            #endregion Snippet:Managing_Disks_CreateADisk
        }
コード例 #2
0
        public async Task GetAllInSubscription()
        {
            var collection = await GetDiskCollectionAsync();

            var diskName1 = Recording.GenerateAssetName("testDisk-");
            var diskName2 = Recording.GenerateAssetName("testDisk-");
            var input     = ResourceDataHelper.GetEmptyDiskData(DefaultLocation, new Dictionary <string, string>()
            {
                { "key", "value" }
            });

            _ = await collection.CreateOrUpdateAsync(WaitUntil.Completed, diskName1, input);

            _ = await collection.CreateOrUpdateAsync(WaitUntil.Completed, diskName2, input);

            DiskResource disk1 = null, disk2 = null;

            await foreach (var disk in DefaultSubscription.GetDisksAsync())
            {
                if (disk.Data.Name == diskName1)
                {
                    disk1 = disk;
                }
                if (disk.Data.Name == diskName2)
                {
                    disk2 = disk;
                }
            }

            Assert.NotNull(disk1);
            Assert.NotNull(disk2);
        }
コード例 #3
0
        public async Task Get()
        {
            var diskName = Recording.GenerateAssetName("testDisk-");
            var disk1    = await CreateDiskAsync(diskName);

            DiskResource disk2 = await disk1.GetAsync();

            ResourceDataHelper.AssertDisk(disk1.Data, disk2.Data);
        }
コード例 #4
0
 public static DiskLocal ToLocal(this DiskResource disk)
 {
     return(new DiskLocal()
     {
         Name = disk.Name,
         TotalSpaceInGigaBytes = disk.TotalSpaceInGigaBytes,
         Letter = disk.Letter,
         FreeSpaceInGigaBytes = disk.FreeSpaceInGigaBytes,
         DiskId = disk.DiskId,
         Synced = true
     });
 }
コード例 #5
0
        public async Task CreateOrUpdate()
        {
            var collection = await GetDiskCollectionAsync();

            var diskName = Recording.GenerateAssetName("testDisk-");
            var input    = ResourceDataHelper.GetEmptyDiskData(DefaultLocation);
            var lro      = await collection.CreateOrUpdateAsync(WaitUntil.Completed, diskName, input);

            DiskResource disk = lro.Value;

            Assert.AreEqual(diskName, disk.Data.Name);
        }
コード例 #6
0
 public static Disk ToModel(this DiskResource disk)
 {
     return(new Disk()
     {
         Name = disk.Name,
         TotalSpaceInGigaBytes = disk.TotalSpaceInGigaBytes,
         Letter = disk.Letter,
         FreeSpaceInGigaBytes = disk.FreeSpaceInGigaBytes,
         ComputerId = disk.ComputerId,
         DiskId = disk.DiskId,
         Removed = false
     });
 }
コード例 #7
0
        private async Task <SnapshotResource> CreateSnapshot(DiskResource disk, string name)
        {
            var snapshotCreateOperation = await _resourceGroup.GetSnapshots().CreateOrUpdateAsync(WaitUntil.Completed, name,
                                                                                                  new SnapshotData(_config.Location)
            {
                CreationData = new CreationData(DiskCreateOption.Copy)
                {
                    SourceResourceId = disk.Id
                },
                Incremental = true,
            });

            return(await snapshotCreateOperation.WaitForCompletionAsync());
        }
コード例 #8
0
        public async Task Update()
        {
            var diskName = Recording.GenerateAssetName("testDisk-");
            var disk     = await CreateDiskAsync(diskName);

            var newDiskSize = 20;
            var update      = new PatchableDiskData()
            {
                DiskSizeGB = newDiskSize
            };
            var lro = await disk.UpdateAsync(WaitUntil.Completed, update);

            DiskResource updatedDisk = lro.Value;

            Assert.AreEqual(newDiskSize, updatedDisk.Data.DiskSizeGB);
        }
コード例 #9
0
        public async Task Get()
        {
            var collection = await GetDiskCollectionAsync();

            var diskName = Recording.GenerateAssetName("testDisk-");
            var input    = ResourceDataHelper.GetEmptyDiskData(DefaultLocation, new Dictionary <string, string>()
            {
                { "key", "value" }
            });
            var lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, diskName, input);

            DiskResource disk1 = lro.Value;
            DiskResource disk2 = await collection.GetAsync(diskName);

            ResourceDataHelper.AssertDisk(disk1.Data, disk2.Data);
        }
コード例 #10
0
        public async Task Exists()
        {
            var collection = await GetDiskCollectionAsync();

            var diskName = Recording.GenerateAssetName("testDisk-");
            var input    = ResourceDataHelper.GetEmptyDiskData(DefaultLocation, new Dictionary <string, string>()
            {
                { "key", "value" }
            });
            var lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, diskName, input);

            DiskResource disk = lro.Value;

            Assert.IsTrue(await collection.ExistsAsync(diskName));
            Assert.IsFalse(await collection.ExistsAsync(diskName + "1"));

            Assert.ThrowsAsync <ArgumentNullException>(async() => _ = await collection.ExistsAsync(null));
        }
コード例 #11
0
        public async Task DeleteDisk()
        {
            #region Snippet:Managing_Disks_DeleteDisk
            ArmClient            armClient    = new ArmClient(new DefaultAzureCredential());
            SubscriptionResource subscription = await armClient.GetDefaultSubscriptionAsync();

            // first we need to get the resource group
            string rgName = "myRgName";
            ResourceGroupResource resourceGroup = await subscription.GetResourceGroups().GetAsync(rgName);

            // Now we get the disk collection from the resource group
            DiskCollection diskCollection = resourceGroup.GetDisks();
            string         diskName       = "myDisk";
            DiskResource   disk           = await diskCollection.GetAsync(diskName);

            await disk.DeleteAsync(WaitUntil.Completed);

            #endregion Snippet:Managing_Disks_DeleteDisk
        }
コード例 #12
0
ファイル: Config.cs プロジェクト: LeonBlade/Storm
 public static string GetBasePath(DiskResource theMod)
 {
     return(theMod.PathOnDisk + "\\config.json");
 }