Add support for QCow2 file format in web ui
	
		
			
	
		
	
	
		
	
		
			All checks were successful
		
		
	
	
		
			
				
	
				continuous-integration/drone/push Build is passing
				
			
		
		
	
	
				
					
				
			
		
			All checks were successful
		
		
	
	continuous-integration/drone/push Build is passing
				
			This commit is contained in:
		@@ -77,8 +77,8 @@ pub struct VMInfo {
 | 
			
		||||
    pub vnc_access: bool,
 | 
			
		||||
    /// Attach ISO file(s)
 | 
			
		||||
    pub iso_files: Vec<String>,
 | 
			
		||||
    /// Storage - https://access.redhat.com/documentation/fr-fr/red_hat_enterprise_linux/6/html/virtualization_administration_guide/sect-virtualization-virtualized_block_devices-adding_storage_devices_to_guests#sect-Virtualization-Adding_storage_devices_to_guests-Adding_file_based_storage_to_a_guest
 | 
			
		||||
    pub disks: Vec<FileDisk>,
 | 
			
		||||
    /// File Storage - https://access.redhat.com/documentation/fr-fr/red_hat_enterprise_linux/6/html/virtualization_administration_guide/sect-virtualization-virtualized_block_devices-adding_storage_devices_to_guests#sect-Virtualization-Adding_storage_devices_to_guests-Adding_file_based_storage_to_a_guest
 | 
			
		||||
    pub file_disks: Vec<FileDisk>,
 | 
			
		||||
    /// Network cards
 | 
			
		||||
    pub networks: Vec<Network>,
 | 
			
		||||
    /// Add a TPM v2.0 module
 | 
			
		||||
@@ -247,15 +247,21 @@ impl VMInfo {
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        // Check disks name for duplicates
 | 
			
		||||
        for disk in &self.disks {
 | 
			
		||||
            if self.disks.iter().filter(|d| d.name == disk.name).count() > 1 {
 | 
			
		||||
        for disk in &self.file_disks {
 | 
			
		||||
            if self
 | 
			
		||||
                .file_disks
 | 
			
		||||
                .iter()
 | 
			
		||||
                .filter(|d| d.name == disk.name)
 | 
			
		||||
                .count()
 | 
			
		||||
                > 1
 | 
			
		||||
            {
 | 
			
		||||
                return Err(StructureExtraction("Two different disks have the same name!").into());
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        // Apply disks configuration. Starting from now, the function should ideally never fail due to
 | 
			
		||||
        // bad user input
 | 
			
		||||
        for disk in &self.disks {
 | 
			
		||||
        for disk in &self.file_disks {
 | 
			
		||||
            disk.check_config()?;
 | 
			
		||||
            disk.apply_config(uuid)?;
 | 
			
		||||
 | 
			
		||||
@@ -428,7 +434,7 @@ impl VMInfo {
 | 
			
		||||
                .map(|d| d.source.file.rsplit_once('/').unwrap().1.to_string())
 | 
			
		||||
                .collect(),
 | 
			
		||||
 | 
			
		||||
            disks: domain
 | 
			
		||||
            file_disks: domain
 | 
			
		||||
                .devices
 | 
			
		||||
                .disks
 | 
			
		||||
                .iter()
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user