diff options
author | Simon Rettberg | 2015-09-11 14:04:22 +0200 |
---|---|---|
committer | Simon Rettberg | 2015-09-11 14:04:22 +0200 |
commit | d2f840b5d8eaa4695da3293056893bba78eb8011 (patch) | |
tree | b278e17979dbf7c8388630dcdcb78e6e9857f941 | |
parent | vmware: Add methods for adding nics (diff) | |
download | master-sync-shared-d2f840b5d8eaa4695da3293056893bba78eb8011.tar.gz master-sync-shared-d2f840b5d8eaa4695da3293056893bba78eb8011.tar.xz master-sync-shared-d2f840b5d8eaa4695da3293056893bba78eb8011.zip |
[vmware] Allow setting disk mode when adding HDD
-rw-r--r-- | src/main/java/org/openslx/util/vm/VmwareMetaData.java | 24 |
1 files changed, 15 insertions, 9 deletions
diff --git a/src/main/java/org/openslx/util/vm/VmwareMetaData.java b/src/main/java/org/openslx/util/vm/VmwareMetaData.java index 25c052b..5ea806f 100644 --- a/src/main/java/org/openslx/util/vm/VmwareMetaData.java +++ b/src/main/java/org/openslx/util/vm/VmwareMetaData.java @@ -156,7 +156,7 @@ public class VmwareMetaData extends VmMetaData } } - public boolean addHddTemplate( String diskImagePath ) + public boolean addHddTemplate( String diskImagePath, String hddMode, String redoFile ) { DriveBusType bus; try { @@ -166,28 +166,34 @@ public class VmwareMetaData extends VmMetaData return false; } String chipset = config.get( "#SLX_HDD_CHIP" ); + String prefix; switch ( bus ) { case IDE: + prefix = "ide0:0"; addFiltered( "ide0.present", "TRUE" ); - addFiltered( "ide0:0.present", "TRUE" ); - addFiltered( "ide0:0.deviceType", "disk" ); - addFiltered( "ide0:0.fileName", diskImagePath ); - return true; + break; case SATA: // Cannot happen?... use lsisas1068 case SCSI: + prefix = "scsi0:0"; addFiltered( "scsi0.present", "TRUE" ); - addFiltered( "scsi0:0.present", "TRUE" ); - addFiltered( "scsi0:0.deviceType", "disk" ); - addFiltered( "scsi0:0.fileName", diskImagePath ); if ( chipset != null ) { addFiltered( "scsi0.virtualDev", chipset ); } - return true; + break; default: LOGGER.warn( "Unknown HDD bus type: " + bus.toString() ); return false; } + // Gen + addFiltered( prefix + ".present", "TRUE" ); + addFiltered( prefix + ".deviceType", "disk" ); + addFiltered( prefix + ".fileName", diskImagePath ); + if ( hddMode != null ) { + addFiltered( prefix + ".mode", hddMode ); + addFiltered( prefix + ".redo", redoFile ); + } + return true; } public boolean addDefaultNat() |