diff options
author | ralph isenmann | 2021-10-15 15:01:34 +0200 |
---|---|---|
committer | ralph isenmann | 2021-10-15 15:01:34 +0200 |
commit | a7c5fb30d95043306d31ec867966005893a346f8 (patch) | |
tree | b1b2d98bbe3757ae89be4974db5b1707e989dfef /dozentenmodul/src/main/java/org/openslx/dozmod/util/ImageWrapper.java | |
parent | [client] allow users to upload new versions of container images. (diff) | |
download | tutor-module-a7c5fb30d95043306d31ec867966005893a346f8.tar.gz tutor-module-a7c5fb30d95043306d31ec867966005893a346f8.tar.xz tutor-module-a7c5fb30d95043306d31ec867966005893a346f8.zip |
[client] Update process of the download for container images
- show some info to user what was actually downloaded und what to do with it.
Diffstat (limited to 'dozentenmodul/src/main/java/org/openslx/dozmod/util/ImageWrapper.java')
-rw-r--r-- | dozentenmodul/src/main/java/org/openslx/dozmod/util/ImageWrapper.java | 25 |
1 files changed, 5 insertions, 20 deletions
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/util/ImageWrapper.java b/dozentenmodul/src/main/java/org/openslx/dozmod/util/ImageWrapper.java index fe884a15..3c3a5f1c 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/util/ImageWrapper.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/util/ImageWrapper.java @@ -7,22 +7,16 @@ import org.openslx.dozmod.gui.helper.I18n; import org.openslx.dozmod.gui.helper.MessageType; import org.openslx.thrifthelper.TConst; import org.openslx.virtualization.configuration.VirtualizationConfigurationException; -import org.openslx.virtualization.configuration.container.ContainerDefinition; import org.openslx.virtualization.disk.DiskImage; import org.openslx.virtualization.disk.DiskImage.ImageFormat; import org.openslx.virtualization.disk.DiskImageException; import java.io.File; import java.io.IOException; -import java.nio.file.Files; /** * This Class handle the unpacking of Images downloaded from * the server individually (VM-Images, Docker-Images (Container Images)). - * - * In case of Container-Images the Image-Blob is not important because it can be recreated with the - * recipe (e.g. dockerfile). - * TODO Do not download the Image-Blob of a Container-Image. */ public class ImageWrapper { @@ -47,20 +41,10 @@ public class ImageWrapper { boolean imageIsCompressed = false; ImageFormat imageFormat = null; - // unwrap each image individually - // TODO In future maybe this is a check to distinguish between VM-Image and Container Image + // unwrap container image individually if (virtualizerId.equals(TConst.VIRT_DOCKER)) { - ContainerDefinition conDef = ContainerDefinition.fromByteArray(virtualizerConfig); - conDef.saveLocal(destDir); - - try { - // delete image file, unused in container Context. - Files.delete(tmpDiskFile.toPath()); - } catch (IOException e) { - Gui.asyncMessageBox("Konnte temporäre Download Datei nicht löschen", MessageType.WARNING, - LOGGER, e); - } + ContainerWrapper.unwrapContainer(tmpDiskFile, imageName, destDir, virtualizerConfig); } else { @@ -73,8 +57,9 @@ public class ImageWrapper { } if (imageIsCompressed && imageFormat != ImageFormat.QCOW2) { - Gui.asyncMessageBox(I18n.THRIFT.getString("ThriftActions.Message.warning.diskImageCompressed", - imageName, Branding.getServiceFAQWebsite()), MessageType.WARNING, null, null); + Gui.asyncMessageBox( + I18n.THRIFT.getString("ThriftActions.Message.warning.diskImageCompressed", imageName, + Branding.getServiceFAQWebsite()), MessageType.WARNING, null, null); } File destImage = new File(destDir.getAbsolutePath(), VmWrapper.generateFilename(imageName, ext)); destImage.delete(); |