mirror of
				https://github.com/containers/podman.git
				synced 2025-11-01 02:42:11 +08:00 
			
		
		
		
	 f5a986f4ee
			
		
	
	f5a986f4ee
	
	
	
		
			
			Podman 5 will not support QEMU on darwin anymore. This PR only changes the default from `qemu` to `applehv`. Code changes to enforce not supporting qemu will come later. [NO NEW TESTS NEEDED] Signed-off-by: Brent Baude <baude@redhat.com>
		
			
				
	
	
		
			38 lines
		
	
	
		
			1022 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			38 lines
		
	
	
		
			1022 B
		
	
	
	
		
			Go
		
	
	
	
	
	
| package provider
 | |
| 
 | |
| import (
 | |
| 	"fmt"
 | |
| 	"os"
 | |
| 
 | |
| 	"github.com/containers/common/pkg/config"
 | |
| 	"github.com/containers/podman/v4/pkg/machine"
 | |
| 	"github.com/containers/podman/v4/pkg/machine/applehv"
 | |
| 	"github.com/containers/podman/v4/pkg/machine/qemu"
 | |
| 	"github.com/sirupsen/logrus"
 | |
| )
 | |
| 
 | |
| func Get() (machine.VirtProvider, error) {
 | |
| 	cfg, err := config.Default()
 | |
| 	if err != nil {
 | |
| 		return nil, err
 | |
| 	}
 | |
| 	provider := cfg.Machine.Provider
 | |
| 	if providerOverride, found := os.LookupEnv("CONTAINERS_MACHINE_PROVIDER"); found {
 | |
| 		provider = providerOverride
 | |
| 	}
 | |
| 	resolvedVMType, err := machine.ParseVMType(provider, machine.AppleHvVirt)
 | |
| 	if err != nil {
 | |
| 		return nil, err
 | |
| 	}
 | |
| 
 | |
| 	logrus.Debugf("Using Podman machine with `%s` virtualization provider", resolvedVMType.String())
 | |
| 	switch resolvedVMType {
 | |
| 	case machine.QemuVirt:
 | |
| 		return qemu.VirtualizationProvider(), nil
 | |
| 	case machine.AppleHvVirt:
 | |
| 		return applehv.VirtualizationProvider(), nil
 | |
| 	default:
 | |
| 		return nil, fmt.Errorf("unsupported virtualization provider: `%s`", resolvedVMType.String())
 | |
| 	}
 | |
| }
 |