コード例 #1
0
        public override void ExecuteCmdlet()
        {
            base.ExecuteCmdlet();

            var parameters = new VirtualMachineImageListParameters
            {
                Location = Location.Canonicalize(),
                Offer = Offer,
                PublisherName = PublisherName,
                Skus = Skus,
                FilterExpression = FilterExpression
            };

            VirtualMachineImageResourceList result = this.VirtualMachineImageClient.List(parameters);

            var images = from r in result.Resources
                         select new PSVirtualMachineImage
                         {
                             RequestId = result.RequestId,
                             StatusCode = result.StatusCode,
                             Id = r.Id,
                             Location = r.Location,
                             Version = r.Name,
                             PublisherName = this.PublisherName,
                             Offer = this.Offer,
                             Skus = this.Skus,
                             FilterExpression = this.FilterExpression
                         };

            WriteObject(images, true);
        }
コード例 #2
0
        private void Initialize()
        {
            ImageReference imageRef = GetPlatformVMImage(useWindowsImage: true);

            parameters = new VirtualMachineImageGetParameters()
            {
                Location = ComputeManagementTestUtilities.DefaultLocation,
                PublisherName = imageRef.Publisher,
                Offer = imageRef.Offer,
                Skus = imageRef.Sku,
                Version = imageRef.Version
            };

            listParameters = new VirtualMachineImageListParameters()
            {
                Location = ComputeManagementTestUtilities.DefaultLocation,
                PublisherName = imageRef.Publisher,
                Offer = imageRef.Offer,
                Skus = imageRef.Sku
            };
        }
コード例 #3
0
        public void TestVMImageListFilters()
        {
            using (var context = UndoContext.Current)
            {
                context.Start();
                ComputeManagementClient _pirClient = ComputeManagementTestUtilities.GetComputeManagementClient();

                VirtualMachineImageListParameters listParametersWithFilter = new VirtualMachineImageListParameters()
                {
                    Location = listParameters.Location,
                    PublisherName = listParameters.PublisherName,
                    Offer = listParameters.Offer,
                    Skus = listParameters.Skus,
                };

                // Filter: top - Negative Test
                listParametersWithFilter.FilterExpression = "$top=0";
                var vmimages = _pirClient.VirtualMachineImages.List(listParametersWithFilter);
                Assert.True(vmimages.Resources.Count == 0);

                // Filter: top - Positive Test
                listParametersWithFilter.FilterExpression = "$top=1";
                vmimages = _pirClient.VirtualMachineImages.List(listParametersWithFilter);
                Assert.True(vmimages.Resources.Count == 1);

                // Filter: top - Positive Test
                listParametersWithFilter.FilterExpression = "$top=2";
                vmimages = _pirClient.VirtualMachineImages.List(listParametersWithFilter);
                Assert.True(vmimages.Resources.Count == 2);
                Assert.True(vmimages.Resources.Count(vmi => vmi.Name == AvailableWindowsServerImageVersions[1]) != 0);

                // Filter: orderby - Positive Test
                listParametersWithFilter.FilterExpression = "$orderby=name desc";
                vmimages = _pirClient.VirtualMachineImages.List(listParametersWithFilter);
                Assert.Equal(AvailableWindowsServerImageVersions.Length, vmimages.Resources.Count);
                for (int i = 0; i < AvailableWindowsServerImageVersions.Length; i++)
                {
                    Assert.Equal(AvailableWindowsServerImageVersions[i], vmimages.Resources[i].Name);
                }

                // Filter: orderby - Positive Test
                listParametersWithFilter.FilterExpression = "$top=2&$orderby=name asc";
                vmimages = _pirClient.VirtualMachineImages.List(listParametersWithFilter);
                Assert.True(vmimages.Resources.Count == 2);
                Assert.True(vmimages.Resources[0].Name == AvailableWindowsServerImageVersions.Last());
                Assert.True(vmimages.Resources[1].Name == AvailableWindowsServerImageVersions.Reverse().Skip(1).First());

                // Filter: top orderby - Positive Test
                listParametersWithFilter.FilterExpression = "$top=1&$orderby=name desc";
                vmimages = _pirClient.VirtualMachineImages.List(listParametersWithFilter);
                Assert.True(vmimages.Resources.Count == 1);
                Assert.True(vmimages.Resources[0].Name == AvailableWindowsServerImageVersions[0]);

                // Filter: top orderby - Positive Test
                listParametersWithFilter.FilterExpression = "$top=1&$orderby=name asc";
                vmimages = _pirClient.VirtualMachineImages.List(listParametersWithFilter);
                Assert.True(vmimages.Resources.Count == 1);
                Assert.True(vmimages.Resources[0].Name == AvailableWindowsServerImageVersions.Last());
            }
        }
コード例 #4
0
        public void TestVMImageListFilters()
        {
            using (var context = UndoContext.Current)
            {
                context.Start();
                ComputeManagementClient _pirClient =
                    ComputeManagementTestUtilities.GetComputeManagementClient(new RDFETestEnvironmentFactory(),
                        new RecordedDelegatingHandler { StatusCodeToReturn = HttpStatusCode.OK });

                VirtualMachineImageListParameters listParametersWithFilter = new VirtualMachineImageListParameters()
                {
                    Location = listParameters.Location,
                    PublisherName = listParameters.PublisherName,
                    Offer = listParameters.Offer,
                    Skus = listParameters.Skus,
                };

                // Filter: top - Negative Test
                listParametersWithFilter.FilterExpression = "$top=0";
                var vmimages = _pirClient.VirtualMachineImages.List(listParametersWithFilter);
                Assert.True(vmimages.Resources.Count == 0);

                // Filter: top - Positive Test
                listParametersWithFilter.FilterExpression = "$top=1";
                vmimages = _pirClient.VirtualMachineImages.List(listParametersWithFilter);
                Assert.True(vmimages.Resources.Count == 1);

                // Filter: top - Positive Test
                listParametersWithFilter.FilterExpression = "$top=2";
                vmimages = _pirClient.VirtualMachineImages.List(listParametersWithFilter);
                Assert.True(vmimages.Resources.Count == 2);
                Assert.True(vmimages.Resources.Count(vmi => vmi.Name == "1.0.0") != 0);
                Assert.True(vmimages.Resources.Count(vmi => vmi.Name == "1.1.0") != 0);

                // Filter: orderby - Positive Test
                listParametersWithFilter.FilterExpression = "$orderby=name desc";
                vmimages = _pirClient.VirtualMachineImages.List(listParametersWithFilter);
                Assert.True(vmimages.Resources.Count == 2);
                Assert.True(vmimages.Resources[0].Name == "1.1.0");
                Assert.True(vmimages.Resources[1].Name == "1.0.0");

                // Filter: orderby - Positive Test
                listParametersWithFilter.FilterExpression = "$orderby=name asc";
                vmimages = _pirClient.VirtualMachineImages.List(listParametersWithFilter);
                Assert.True(vmimages.Resources.Count == 2);
                Assert.True(vmimages.Resources[0].Name == "1.0.0");
                Assert.True(vmimages.Resources[1].Name == "1.1.0");

                // Filter: top orderby - Positive Test
                listParametersWithFilter.FilterExpression = "$top=1&$orderby=name desc";
                vmimages = _pirClient.VirtualMachineImages.List(listParametersWithFilter);
                Assert.True(vmimages.Resources.Count == 1);
                Assert.True(vmimages.Resources[0].Name == "1.1.0");

                // Filter: top orderby - Positive Test
                listParametersWithFilter.FilterExpression = "$top=1&$orderby=name asc";
                vmimages = _pirClient.VirtualMachineImages.List(listParametersWithFilter);
                Assert.True(vmimages.Resources.Count == 1);
                Assert.True(vmimages.Resources[0].Name == "1.0.0");
            }
        }
コード例 #5
0
        protected override void ProcessRecord()
        {
            base.ProcessRecord();

            ExecuteClientAction(() =>
            {
                if (this.ParameterSetName.Equals(ListVMImageParamSetName))
                {
                    var parameters = new VirtualMachineImageListParameters
                    {
                        Location = Location.Canonicalize(),
                        Offer = Offer,
                        PublisherName = PublisherName,
                        Skus = Skus,
                        FilterExpression = FilterExpression
                    };

                    VirtualMachineImageResourceList result = this.VirtualMachineImageClient.List(parameters);

                    var images = from r in result.Resources
                                 select new PSVirtualMachineImage
                                 {
                                     RequestId = result.RequestId,
                                     StatusCode = result.StatusCode,
                                     Id = r.Id,
                                     Location = r.Location,
                                     Version = r.Name,
                                     PublisherName = this.PublisherName,
                                     Offer = this.Offer,
                                     Skus = this.Skus,
                                     FilterExpression = this.FilterExpression
                                 };

                    WriteObject(images, true);
                }
                else
                {
                    var parameters = new VirtualMachineImageGetParameters
                    {
                        Location = Location.Canonicalize(),
                        PublisherName = PublisherName,
                        Offer = Offer,
                        Skus = Skus,
                        Version = Version
                    };

                    VirtualMachineImageGetResponse response = this.VirtualMachineImageClient.Get(parameters);

                    var image = new PSVirtualMachineImageDetail
                    {
                        RequestId = response.RequestId,
                        StatusCode = response.StatusCode,
                        Id = response.VirtualMachineImage.Id,
                        Location = response.VirtualMachineImage.Location,
                        Name = response.VirtualMachineImage.Name,
                        Version = response.VirtualMachineImage.Name,
                        PublisherName = this.PublisherName,
                        Offer = this.Offer,
                        Skus = this.Skus,
                        OSDiskImage = response.VirtualMachineImage.OSDiskImage,
                        DataDiskImages = response.VirtualMachineImage.DataDiskImages,
                        PurchasePlan = response.VirtualMachineImage.PurchasePlan,
                    };

                    WriteObject(image);
                }
            });
        }
 /// <summary>
 /// Gets a list of virtual machine images.
 /// </summary>
 /// <param name='operations'>
 /// Reference to the
 /// Microsoft.Azure.Management.Compute.IVirtualMachineImageOperations.
 /// </param>
 /// <param name='parameters'>
 /// Optional.
 /// </param>
 /// <returns>
 /// A list of virtual machine image resource information.
 /// </returns>
 public static VirtualMachineImageResourceList List(this IVirtualMachineImageOperations operations, VirtualMachineImageListParameters parameters)
 {
     return Task.Factory.StartNew((object s) => 
     {
         return ((IVirtualMachineImageOperations)s).ListAsync(parameters);
     }
     , operations, CancellationToken.None, TaskCreationOptions.None, TaskScheduler.Default).Unwrap().GetAwaiter().GetResult();
 }
 /// <summary>
 /// Gets a list of virtual machine images.
 /// </summary>
 /// <param name='operations'>
 /// Reference to the
 /// Microsoft.Azure.Management.Compute.IVirtualMachineImageOperations.
 /// </param>
 /// <param name='parameters'>
 /// Optional.
 /// </param>
 /// <returns>
 /// A list of virtual machine image resource information.
 /// </returns>
 public static Task<VirtualMachineImageResourceList> ListAsync(this IVirtualMachineImageOperations operations, VirtualMachineImageListParameters parameters)
 {
     return operations.ListAsync(parameters, CancellationToken.None);
 }