private AzureVirtualMachines(IVirtualMachine vm, IAzure azure)
        {
            Name              = vm.Name;
            AdminUser         = vm.OSProfile?.AdminUsername;
            ResourceGroupName = vm.ResourceGroupName;
            ResourceId        = vm.Id;
            State             = vm.PowerState?.Value;
            OsType            = vm.StorageProfile?.ImageReference?.Sku;

            var availableSizes = vm.AvailableSizes();
            var size           = availableSizes.FirstOrDefault(a => a.Name == vm.Size.Value);

            Size = size == null ? null : new VMSize
            {
                MemoryInMB       = size.MemoryInMB,
                MaxDataDiskCount = size.MaxDataDiskCount,
                NumberOfCores    = size.NumberOfCores,
                OSDiskSizeInMB   = size.OSDiskSizeInMB
            };
        }