This repository was archived by the owner on Nov 4, 2024. It is now read-only.
File tree Expand file tree Collapse file tree 2 files changed +28
-6
lines changed
Expand file tree Collapse file tree 2 files changed +28
-6
lines changed Original file line number Diff line number Diff line change @@ -11,7 +11,7 @@ FROM quay.io/fedora/fedora-minimal:39
1111RUN cd /usr/bin && \
1212 curl -L https://github.com/kubevirt/kubevirt/releases/download/v1.0.0/virtctl-v1.0.0-linux-amd64 --output virtctl && \
1313 chmod +x virtctl && \
14- microdnf install -y gzip qemu-img libguestfs-tools-c && \
14+ microdnf install -y qemu-img libguestfs-tools-c && \
1515 microdnf clean all -y
1616COPY --from=builder /app/kubevirt-disk-uploader /usr/local/bin/kubevirt-disk-uploader
1717
Original file line number Diff line number Diff line change 11package main
22
33import (
4+ "compress/gzip"
45 "context"
56 "fmt"
7+ "io"
68 "log"
79 "os"
810 "os/exec"
@@ -88,15 +90,35 @@ func downloadVirtualMachineDiskImage(vmName, volumeName string) error {
8890func decompressVirtualMachineDiskImage () error {
8991 log .Println ("Decompressing downloaded disk image..." )
9092
91- cmd := exec .Command ("gunzip" , diskPath )
92- cmd .Stdout = os .Stdout
93- cmd .Stderr = os .Stderr
93+ diskImg , err := os .Open (diskPath )
94+ if err != nil {
95+ return err
96+ }
97+ defer diskImg .Close ()
9498
95- if err := cmd .Run (); err != nil {
99+ gzipReader , err := gzip .NewReader (diskImg )
100+ if err != nil {
101+ return err
102+ }
103+ defer gzipReader .Close ()
104+
105+ newDiskImg , err := os .Create (diskPathDecompressed )
106+ if err != nil {
107+ return err
108+ }
109+ defer newDiskImg .Close ()
110+
111+ _ , err = io .Copy (newDiskImg , gzipReader )
112+ if err != nil {
113+ return err
114+ }
115+
116+ err = os .Chmod (diskPathDecompressed , 0666 ) // Grants read and write permission to everyone.
117+ if err != nil {
96118 return err
97119 }
98120
99- log .Println ("Decompressed completed successfully." )
121+ log .Println ("Decompression completed successfully." )
100122 return nil
101123}
102124
You can’t perform that action at this time.
0 commit comments