Support Docker VM manager and provider (#75)
* Add docker provider framework * Update VM download link * Add stop container * Update docker manager & provider * Update * Update * Update provider
This commit is contained in:
@@ -1,12 +1,4 @@
|
||||
from desktop_env.providers.base import VMManager, Provider
|
||||
from desktop_env.providers.vmware.manager import VMwareVMManager
|
||||
from desktop_env.providers.vmware.provider import VMwareProvider
|
||||
from desktop_env.providers.aws.manager import AWSVMManager
|
||||
from desktop_env.providers.aws.provider import AWSProvider
|
||||
from desktop_env.providers.azure.manager import AzureVMManager
|
||||
from desktop_env.providers.azure.provider import AzureProvider
|
||||
from desktop_env.providers.virtualbox.manager import VirtualBoxVMManager
|
||||
from desktop_env.providers.virtualbox.provider import VirtualBoxProvider
|
||||
|
||||
def create_vm_manager_and_provider(provider_name: str, region: str):
|
||||
"""
|
||||
@@ -14,12 +6,24 @@ def create_vm_manager_and_provider(provider_name: str, region: str):
|
||||
"""
|
||||
provider_name = provider_name.lower().strip()
|
||||
if provider_name == "vmware":
|
||||
from desktop_env.providers.vmware.manager import VMwareVMManager
|
||||
from desktop_env.providers.vmware.provider import VMwareProvider
|
||||
return VMwareVMManager(), VMwareProvider(region)
|
||||
elif provider_name == "virtualbox":
|
||||
from desktop_env.providers.virtualbox.manager import VirtualBoxVMManager
|
||||
from desktop_env.providers.virtualbox.provider import VirtualBoxProvider
|
||||
return VirtualBoxVMManager(), VirtualBoxProvider(region)
|
||||
elif provider_name in ["aws", "amazon web services"]:
|
||||
from desktop_env.providers.aws.manager import AWSVMManager
|
||||
from desktop_env.providers.aws.provider import AWSProvider
|
||||
return AWSVMManager(), AWSProvider(region)
|
||||
elif provider_name == "azure":
|
||||
from desktop_env.providers.azure.manager import AzureVMManager
|
||||
from desktop_env.providers.azure.provider import AzureProvider
|
||||
return AzureVMManager(), AzureProvider(region)
|
||||
elif provider_name == "docker":
|
||||
from desktop_env.providers.docker.manager import DockerVMManager
|
||||
from desktop_env.providers.docker.provider import DockerProvider
|
||||
return DockerVMManager(), DockerProvider(region)
|
||||
else:
|
||||
raise NotImplementedError(f"{provider_name} not implemented!")
|
||||
|
||||
Reference in New Issue
Block a user