summaryrefslogtreecommitdiffstats
path: root/src/main/java/org/openslx/virtualization/configuration/VirtualizationConfigurationQemu.java
diff options
context:
space:
mode:
authorManuel Bentele2021-05-06 11:30:01 +0200
committerManuel Bentele2021-05-06 11:30:01 +0200
commit1e42460bde25ccabf5cb7e4d3149a9e50ce2b03c (patch)
treed7578062cbbc6b8461237e11fe5e6cd0bb35c0b5 /src/main/java/org/openslx/virtualization/configuration/VirtualizationConfigurationQemu.java
parentUpdate XML schema for VirtualBox virtualization configurations (diff)
downloadmaster-sync-shared-1e42460bde25ccabf5cb7e4d3149a9e50ce2b03c.tar.gz
master-sync-shared-1e42460bde25ccabf5cb7e4d3149a9e50ce2b03c.tar.xz
master-sync-shared-1e42460bde25ccabf5cb7e4d3149a9e50ce2b03c.zip
Optimize OS detection for Libvirt/QEMU virtualization configurations
Diffstat (limited to 'src/main/java/org/openslx/virtualization/configuration/VirtualizationConfigurationQemu.java')
-rw-r--r--src/main/java/org/openslx/virtualization/configuration/VirtualizationConfigurationQemu.java10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/main/java/org/openslx/virtualization/configuration/VirtualizationConfigurationQemu.java b/src/main/java/org/openslx/virtualization/configuration/VirtualizationConfigurationQemu.java
index e844e4e..b4bc0ba 100644
--- a/src/main/java/org/openslx/virtualization/configuration/VirtualizationConfigurationQemu.java
+++ b/src/main/java/org/openslx/virtualization/configuration/VirtualizationConfigurationQemu.java
@@ -325,11 +325,17 @@ public class VirtualizationConfigurationQemu extends
if ( osLookup != null ) {
// operating system entry was found
// so determine OpenSLX OS name with the smallest distance to the libosinfo OS name
- final LevenshteinDistance distance = new LevenshteinDistance( 1, 1, 1 );
+ final LevenshteinDistance distance = new LevenshteinDistance( 2, 1, 1 );
int smallestDistance = Integer.MAX_VALUE;
// get name of the OS and combine it with the optional available architecture
- final String osLookupOsName = osLookup.getName() + " " + this.vmConfig.getOsArch();
+ String osLookupOsName = osLookup.getName();
+ final int osArchSize = VirtualizationConfigurationQemuUtils.getOsArchSize( this.vmConfig.getOsArch() );
+
+ if ( osArchSize > 0 ) {
+ // append architecture size in bit if information is available from the specified architecture
+ osLookupOsName += " (" + osArchSize + " Bit)";
+ }
for ( final OperatingSystem osCandidate : this.osList ) {
final int currentDistance = distance.calculateDistance( osLookupOsName, osCandidate.getOsName() );