mirror of
				https://github.com/containers/podman.git
				synced 2025-11-04 00:50:15 +08:00 
			
		
		
		
	Moving from Go module v4 to v5 prepares us for public releases. Move done using gomove [1] as with the v3 and v4 moves. [1] https://github.com/KSubedi/gomove Signed-off-by: Matt Heon <mheon@redhat.com>
		
			
				
	
	
		
			32 lines
		
	
	
		
			806 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			32 lines
		
	
	
		
			806 B
		
	
	
	
		
			Go
		
	
	
	
	
	
package stdpull
 | 
						|
 | 
						|
import (
 | 
						|
	"os"
 | 
						|
 | 
						|
	"github.com/containers/podman/v5/pkg/machine/compression"
 | 
						|
	"github.com/containers/podman/v5/pkg/machine/define"
 | 
						|
	"github.com/sirupsen/logrus"
 | 
						|
)
 | 
						|
 | 
						|
type StdDiskPull struct {
 | 
						|
	finalPath *define.VMFile
 | 
						|
	inputPath *define.VMFile
 | 
						|
}
 | 
						|
 | 
						|
func NewStdDiskPull(inputPath string, finalpath *define.VMFile) (*StdDiskPull, error) {
 | 
						|
	ip, err := define.NewMachineFile(inputPath, nil)
 | 
						|
	if err != nil {
 | 
						|
		return nil, err
 | 
						|
	}
 | 
						|
	return &StdDiskPull{inputPath: ip, finalPath: finalpath}, nil
 | 
						|
}
 | 
						|
 | 
						|
func (s *StdDiskPull) Get() error {
 | 
						|
	if _, err := os.Stat(s.inputPath.GetPath()); err != nil {
 | 
						|
		// could not find disk
 | 
						|
		return err
 | 
						|
	}
 | 
						|
	logrus.Debugf("decompressing (if needed) %s to %s", s.inputPath.GetPath(), s.finalPath.GetPath())
 | 
						|
	return compression.Decompress(s.inputPath, s.finalPath.GetPath())
 | 
						|
}
 |