diff --git a/gns3server/compute/docker/__init__.py b/gns3server/compute/docker/__init__.py
index a6b1d4dae..bc643ee67 100644
--- a/gns3server/compute/docker/__init__.py
+++ b/gns3server/compute/docker/__init__.py
@@ -18,28 +18,29 @@
Docker server module.
"""
-import os
-import sys
-import json
import asyncio
+import json
import logging
-import aiohttp
+import os
import shutil
+import sys
+
+import aiohttp
import platformdirs
-from gns3server.utils import parse_version
-from gns3server.config import Config
-from gns3server.utils.asyncio import locking
from gns3server.compute.base_manager import BaseManager
-from gns3server.compute.docker.docker_vm import DockerVM
-from gns3server.compute.docker.vendor_docker_vm import VendorDockerVM
-from gns3server.compute.docker.iol_docker_vm import IOLDockerVM
from gns3server.compute.docker.docker_error import (
DockerError,
DockerHttp304Error,
DockerHttp404Error,
DockerHttp409Error,
)
+from gns3server.compute.docker.docker_vm import DockerVM
+from gns3server.compute.docker.iol_docker_vm import IOLDockerVM
+from gns3server.compute.docker.vendor_docker_vm import VendorDockerVM
+from gns3server.config import Config
+from gns3server.utils import parse_version
+from gns3server.utils.asyncio import locking
log = logging.getLogger(__name__)
diff --git a/gns3server/compute/docker/docker_vm.py b/gns3server/compute/docker/docker_vm.py
index 4837a8693..4c33c311f 100644
--- a/gns3server/compute/docker/docker_vm.py
+++ b/gns3server/compute/docker/docker_vm.py
@@ -18,38 +18,35 @@
Docker container instance.
"""
-import sys
import asyncio
import contextlib
import json
-import shutil
-import psutil
-import shlex
-import aiohttp
-import subprocess
+import logging
import os
import re
+import shlex
+import shutil
+import subprocess
+import sys
+import aiohttp
+import psutil
+
+from gns3server.compute.compute_error import ComputeError
+from gns3server.compute.ubridge.ubridge_error import UbridgeError, UbridgeNamespaceError
+from gns3server.utils import int_to_macaddress, macaddress_to_int
+from gns3server.utils.asyncio import monitor_process, wait_for_file_creation, wait_run_in_executor
+from gns3server.utils.asyncio.raw_command_server import AsyncioRawCommandServer
from gns3server.utils.asyncio.ssh_server import AsyncioSSHServer
from gns3server.utils.asyncio.telnet_server import AsyncioTelnetServer
-from gns3server.utils.asyncio.raw_command_server import AsyncioRawCommandServer
-from gns3server.utils.asyncio import wait_for_file_creation
-from gns3server.utils.asyncio import monitor_process
-from gns3server.utils.asyncio import wait_run_in_executor
from gns3server.utils.get_resource import get_resource
from gns3server.utils.hostname import is_rfc1123_hostname_valid
-from gns3server.utils import macaddress_to_int, int_to_macaddress
-
-from gns3server.compute.ubridge.ubridge_error import UbridgeError, UbridgeNamespaceError
-from gns3server.compute.compute_error import ComputeError
-from ..base_node import BaseNode
from ..adapters.ethernet_adapter import EthernetAdapter
+from ..base_node import BaseNode
+from ..error import ImageMissingError
from ..nios.nio_udp import NIOUDP
from .docker_error import DockerError, DockerHttp304Error, DockerHttp404Error, DockerHttp409Error
-from ..error import ImageMissingError
-
-import logging
log = logging.getLogger(__name__)
diff --git a/gns3server/compute/docker/vendor_docker_vm.py b/gns3server/compute/docker/vendor_docker_vm.py
index 1adb5a951..33af64e15 100644
--- a/gns3server/compute/docker/vendor_docker_vm.py
+++ b/gns3server/compute/docker/vendor_docker_vm.py
@@ -34,10 +34,10 @@ import os
import shutil
import tempfile
+from gns3server.compute.docker.docker_error import DockerError, DockerHttp304Error, DockerHttp404Error
+from gns3server.compute.docker.docker_vm import DockerVM
from gns3server.utils.asyncio import wait_for_file_creation
from gns3server.utils.asyncio.telnet_server import AsyncioTelnetServer
-from gns3server.compute.docker.docker_vm import DockerVM
-from gns3server.compute.docker.docker_error import DockerError, DockerHttp304Error, DockerHttp404Error
log = logging.getLogger(__name__)
diff --git a/gns3server/compute/dynamips/__init__.py b/gns3server/compute/dynamips/__init__.py
index cbedaa6ad..ec2cdacc1 100644
--- a/gns3server/compute/dynamips/__init__.py
+++ b/gns3server/compute/dynamips/__init__.py
@@ -18,49 +18,38 @@
Dynamips server module.
"""
-import sys
+import asyncio
+import glob
+import logging
import os
+import re
import shutil
import socket
-import time
-import asyncio
-import tempfile
-import logging
import subprocess
-import glob
-import re
+import sys
+import tempfile
+import time
log = logging.getLogger(__name__)
-from gns3server.utils.interfaces import is_interface_up
-from gns3server.utils.asyncio import wait_run_in_executor, subprocess_check_output
-from gns3server.utils import parse_version
from uuid import uuid4
+
+from gns3server.utils import parse_version
+from gns3server.utils.asyncio import subprocess_check_output, wait_run_in_executor
+from gns3server.utils.interfaces import is_interface_up
+
from ..base_manager import BaseManager
from ..port_manager import PortManager
-from .dynamips_error import DynamipsError
-from .hypervisor import Hypervisor
-from .nodes.router import Router
-from .dynamips_factory import DynamipsFactory
-
-# NIOs
-from .nios.nio_udp import NIOUDP
-from .nios.nio_unix import NIOUNIX
-from .nios.nio_vde import NIOVDE
-from .nios.nio_tap import NIOTAP
-from .nios.nio_generic_ethernet import NIOGenericEthernet
-from .nios.nio_linux_ethernet import NIOLinuxEthernet
-from .nios.nio_null import NIONull
# Adapters
from .adapters.c7200_io_2fe import C7200_IO_2FE
from .adapters.c7200_io_fe import C7200_IO_FE
from .adapters.c7200_io_ge_e import C7200_IO_GE_E
-from .adapters.nm_16esw import NM_16ESW
from .adapters.nm_1e import NM_1E
from .adapters.nm_1fe_tx import NM_1FE_TX
from .adapters.nm_4e import NM_4E
from .adapters.nm_4t import NM_4T
+from .adapters.nm_16esw import NM_16ESW
from .adapters.pa_2fe_tx import PA_2FE_TX
from .adapters.pa_4e import PA_4E
from .adapters.pa_4t import PA_4T
@@ -73,7 +62,19 @@ from .adapters.pa_pos_oc3 import PA_POS_OC3
from .adapters.wic_1enet import WIC_1ENET
from .adapters.wic_1t import WIC_1T
from .adapters.wic_2t import WIC_2T
+from .dynamips_error import DynamipsError
+from .dynamips_factory import DynamipsFactory
+from .hypervisor import Hypervisor
+from .nios.nio_generic_ethernet import NIOGenericEthernet
+from .nios.nio_linux_ethernet import NIOLinuxEthernet
+from .nios.nio_null import NIONull
+from .nios.nio_tap import NIOTAP
+# NIOs
+from .nios.nio_udp import NIOUDP
+from .nios.nio_unix import NIOUNIX
+from .nios.nio_vde import NIOVDE
+from .nodes.router import Router
ADAPTER_MATRIX = {
"C7200-IO-2FE": C7200_IO_2FE,
diff --git a/gns3server/compute/dynamips/dynamips_factory.py b/gns3server/compute/dynamips/dynamips_factory.py
index cbafc4934..4febe9b7d 100644
--- a/gns3server/compute/dynamips/dynamips_factory.py
+++ b/gns3server/compute/dynamips/dynamips_factory.py
@@ -15,7 +15,10 @@
# along with this program. If not, see .
+import logging
+
from .dynamips_error import DynamipsError
+from .nodes.atm_switch import ATMSwitch
from .nodes.c1700 import C1700
from .nodes.c2600 import C2600
from .nodes.c2691 import C2691
@@ -23,13 +26,10 @@ from .nodes.c3600 import C3600
from .nodes.c3725 import C3725
from .nodes.c3745 import C3745
from .nodes.c7200 import C7200
-from .nodes.atm_switch import ATMSwitch
-from .nodes.ethernet_switch import EthernetSwitch
from .nodes.ethernet_hub import EthernetHub
+from .nodes.ethernet_switch import EthernetSwitch
from .nodes.frame_relay_switch import FrameRelaySwitch
-import logging
-
log = logging.getLogger(__name__)
PLATFORMS = {
diff --git a/gns3server/compute/dynamips/dynamips_hypervisor.py b/gns3server/compute/dynamips/dynamips_hypervisor.py
index 514e75360..b2c1f7640 100644
--- a/gns3server/compute/dynamips/dynamips_hypervisor.py
+++ b/gns3server/compute/dynamips/dynamips_hypervisor.py
@@ -19,10 +19,10 @@ Interface for Dynamips hypervisor management module ("hypervisor")
http://github.com/GNS3/dynamips/blob/master/README.hypervisor#L46
"""
+import asyncio
+import logging
import re
import time
-import logging
-import asyncio
from .dynamips_error import DynamipsError
diff --git a/gns3server/compute/dynamips/hypervisor.py b/gns3server/compute/dynamips/hypervisor.py
index 403c38c7e..c528c3e6f 100644
--- a/gns3server/compute/dynamips/hypervisor.py
+++ b/gns3server/compute/dynamips/hypervisor.py
@@ -18,16 +18,16 @@
Represents a Dynamips hypervisor and starts/stops the associated Dynamips process.
"""
-import sys
+import asyncio
+import logging
import os
import subprocess
-import asyncio
+import sys
from gns3server.utils.asyncio import wait_for_process_termination
-from .dynamips_hypervisor import DynamipsHypervisor
-from .dynamips_error import DynamipsError
-import logging
+from .dynamips_error import DynamipsError
+from .dynamips_hypervisor import DynamipsHypervisor
log = logging.getLogger(__name__)
diff --git a/gns3server/compute/dynamips/nios/nio.py b/gns3server/compute/dynamips/nios/nio.py
index 512a10699..3b4c74969 100644
--- a/gns3server/compute/dynamips/nios/nio.py
+++ b/gns3server/compute/dynamips/nios/nio.py
@@ -20,10 +20,10 @@ http://github.com/GNS3/dynamips/blob/master/README.hypervisor#L451
"""
import asyncio
-from ..dynamips_error import DynamipsError
-
import logging
+from ..dynamips_error import DynamipsError
+
log = logging.getLogger(__name__)
diff --git a/gns3server/compute/dynamips/nios/nio_generic_ethernet.py b/gns3server/compute/dynamips/nios/nio_generic_ethernet.py
index 1407c6694..679c8bc60 100644
--- a/gns3server/compute/dynamips/nios/nio_generic_ethernet.py
+++ b/gns3server/compute/dynamips/nios/nio_generic_ethernet.py
@@ -19,10 +19,10 @@ Interface for generic Ethernet NIOs (PCAP library).
"""
import asyncio
-import uuid
-from .nio import NIO
-
import logging
+import uuid
+
+from .nio import NIO
log = logging.getLogger(__name__)
diff --git a/gns3server/compute/dynamips/nios/nio_linux_ethernet.py b/gns3server/compute/dynamips/nios/nio_linux_ethernet.py
index c11039a5c..b85eb4b81 100644
--- a/gns3server/compute/dynamips/nios/nio_linux_ethernet.py
+++ b/gns3server/compute/dynamips/nios/nio_linux_ethernet.py
@@ -19,10 +19,10 @@ Interface for Linux Ethernet NIOs (Linux only).
"""
import asyncio
-import uuid
-from .nio import NIO
-
import logging
+import uuid
+
+from .nio import NIO
log = logging.getLogger(__name__)
diff --git a/gns3server/compute/dynamips/nios/nio_null.py b/gns3server/compute/dynamips/nios/nio_null.py
index 1f56a12e8..d47170329 100644
--- a/gns3server/compute/dynamips/nios/nio_null.py
+++ b/gns3server/compute/dynamips/nios/nio_null.py
@@ -19,10 +19,10 @@ Interface for dummy NIOs (mostly for tests).
"""
import asyncio
-import uuid
-from .nio import NIO
-
import logging
+import uuid
+
+from .nio import NIO
log = logging.getLogger(__name__)
diff --git a/gns3server/compute/dynamips/nios/nio_tap.py b/gns3server/compute/dynamips/nios/nio_tap.py
index acd3a864e..47ac30494 100644
--- a/gns3server/compute/dynamips/nios/nio_tap.py
+++ b/gns3server/compute/dynamips/nios/nio_tap.py
@@ -19,10 +19,10 @@ Interface for TAP NIOs (UNIX based OSes only).
"""
import asyncio
-import uuid
-from .nio import NIO
-
import logging
+import uuid
+
+from .nio import NIO
log = logging.getLogger(__name__)
diff --git a/gns3server/compute/dynamips/nios/nio_udp.py b/gns3server/compute/dynamips/nios/nio_udp.py
index c811858d9..4419bf71f 100644
--- a/gns3server/compute/dynamips/nios/nio_udp.py
+++ b/gns3server/compute/dynamips/nios/nio_udp.py
@@ -19,14 +19,13 @@ Interface for UDP NIOs.
"""
import asyncio
+import logging
import uuid
from gns3server.compute.nios import nio_udp
+
from .nio import NIO
-
-import logging
-
log = logging.getLogger(__name__)
diff --git a/gns3server/compute/dynamips/nios/nio_unix.py b/gns3server/compute/dynamips/nios/nio_unix.py
index bab9ee06e..37fbc0858 100644
--- a/gns3server/compute/dynamips/nios/nio_unix.py
+++ b/gns3server/compute/dynamips/nios/nio_unix.py
@@ -19,10 +19,10 @@ Interface for UNIX NIOs (Unix based OSes only).
"""
import asyncio
-import uuid
-from .nio import NIO
-
import logging
+import uuid
+
+from .nio import NIO
log = logging.getLogger(__name__)
diff --git a/gns3server/compute/dynamips/nios/nio_vde.py b/gns3server/compute/dynamips/nios/nio_vde.py
index 7218179ce..c44787a46 100644
--- a/gns3server/compute/dynamips/nios/nio_vde.py
+++ b/gns3server/compute/dynamips/nios/nio_vde.py
@@ -19,10 +19,10 @@ Interface for VDE (Virtual Distributed Ethernet) NIOs (Unix based OSes only).
"""
import asyncio
-import uuid
-from .nio import NIO
-
import logging
+import uuid
+
+from .nio import NIO
log = logging.getLogger(__name__)
diff --git a/gns3server/compute/dynamips/nodes/atm_switch.py b/gns3server/compute/dynamips/nodes/atm_switch.py
index 38e9d4ecb..0c4591399 100644
--- a/gns3server/compute/dynamips/nodes/atm_switch.py
+++ b/gns3server/compute/dynamips/nodes/atm_switch.py
@@ -20,13 +20,12 @@ http://github.com/GNS3/dynamips/blob/master/README.hypervisor#L593
"""
import asyncio
+import logging
import re
-from .device import Device
-from ..nios.nio_udp import NIOUDP
from ..dynamips_error import DynamipsError
-
-import logging
+from ..nios.nio_udp import NIOUDP
+from .device import Device
log = logging.getLogger(__name__)
diff --git a/gns3server/compute/dynamips/nodes/bridge.py b/gns3server/compute/dynamips/nodes/bridge.py
index 04c1651f8..57b74e5e2 100644
--- a/gns3server/compute/dynamips/nodes/bridge.py
+++ b/gns3server/compute/dynamips/nodes/bridge.py
@@ -20,6 +20,7 @@ http://github.com/GNS3/dynamips/blob/master/README.hypervisor#L538
"""
import asyncio
+
from .device import Device
diff --git a/gns3server/compute/dynamips/nodes/c1700.py b/gns3server/compute/dynamips/nodes/c1700.py
index b2d24b25b..7ead2f8df 100644
--- a/gns3server/compute/dynamips/nodes/c1700.py
+++ b/gns3server/compute/dynamips/nodes/c1700.py
@@ -20,11 +20,11 @@ http://github.com/GNS3/dynamips/blob/master/README.hypervisor#L428
"""
import asyncio
-from .router import Router
+import logging
+
from ..adapters.c1700_mb_1fe import C1700_MB_1FE
from ..adapters.c1700_mb_wic1 import C1700_MB_WIC1
-
-import logging
+from .router import Router
log = logging.getLogger(__name__)
diff --git a/gns3server/compute/dynamips/nodes/c2600.py b/gns3server/compute/dynamips/nodes/c2600.py
index 774d67e54..89159f57d 100644
--- a/gns3server/compute/dynamips/nodes/c2600.py
+++ b/gns3server/compute/dynamips/nodes/c2600.py
@@ -20,14 +20,14 @@ http://github.com/GNS3/dynamips/blob/master/README.hypervisor#L404
"""
import asyncio
-from .router import Router
-from ..adapters.c2600_mb_1e import C2600_MB_1E
-from ..adapters.c2600_mb_2e import C2600_MB_2E
-from ..adapters.c2600_mb_1fe import C2600_MB_1FE
-from ..adapters.c2600_mb_2fe import C2600_MB_2FE
-
import logging
+from ..adapters.c2600_mb_1e import C2600_MB_1E
+from ..adapters.c2600_mb_1fe import C2600_MB_1FE
+from ..adapters.c2600_mb_2e import C2600_MB_2E
+from ..adapters.c2600_mb_2fe import C2600_MB_2FE
+from .router import Router
+
log = logging.getLogger(__name__)
diff --git a/gns3server/compute/dynamips/nodes/c2691.py b/gns3server/compute/dynamips/nodes/c2691.py
index c28d1c161..94a6bc499 100644
--- a/gns3server/compute/dynamips/nodes/c2691.py
+++ b/gns3server/compute/dynamips/nodes/c2691.py
@@ -20,11 +20,11 @@ http://github.com/GNS3/dynamips/blob/master/README.hypervisor#L387
"""
import asyncio
-from .router import Router
+import logging
+
from ..adapters.gt96100_fe import GT96100_FE
from ..dynamips_error import DynamipsError
-
-import logging
+from .router import Router
log = logging.getLogger(__name__)
diff --git a/gns3server/compute/dynamips/nodes/c3600.py b/gns3server/compute/dynamips/nodes/c3600.py
index d4d5f7235..87f4bc55f 100644
--- a/gns3server/compute/dynamips/nodes/c3600.py
+++ b/gns3server/compute/dynamips/nodes/c3600.py
@@ -20,11 +20,11 @@ http://github.com/GNS3/dynamips/blob/master/README.hypervisor#L366
"""
import asyncio
-from .router import Router
-from ..adapters.leopard_2fe import Leopard_2FE
-
import logging
+from ..adapters.leopard_2fe import Leopard_2FE
+from .router import Router
+
log = logging.getLogger(__name__)
diff --git a/gns3server/compute/dynamips/nodes/c3725.py b/gns3server/compute/dynamips/nodes/c3725.py
index 3f9c22e1d..73f73831e 100644
--- a/gns3server/compute/dynamips/nodes/c3725.py
+++ b/gns3server/compute/dynamips/nodes/c3725.py
@@ -20,11 +20,11 @@ http://github.com/GNS3/dynamips/blob/master/README.hypervisor#L346
"""
import asyncio
-from .router import Router
+import logging
+
from ..adapters.gt96100_fe import GT96100_FE
from ..dynamips_error import DynamipsError
-
-import logging
+from .router import Router
log = logging.getLogger(__name__)
diff --git a/gns3server/compute/dynamips/nodes/c3745.py b/gns3server/compute/dynamips/nodes/c3745.py
index 36eac087d..74ed2d1b7 100644
--- a/gns3server/compute/dynamips/nodes/c3745.py
+++ b/gns3server/compute/dynamips/nodes/c3745.py
@@ -20,11 +20,11 @@ http://github.com/GNS3/dynamips/blob/master/README.hypervisor#L326
"""
import asyncio
-from .router import Router
+import logging
+
from ..adapters.gt96100_fe import GT96100_FE
from ..dynamips_error import DynamipsError
-
-import logging
+from .router import Router
log = logging.getLogger(__name__)
diff --git a/gns3server/compute/dynamips/nodes/c7200.py b/gns3server/compute/dynamips/nodes/c7200.py
index 98541b87f..3cf37b44c 100644
--- a/gns3server/compute/dynamips/nodes/c7200.py
+++ b/gns3server/compute/dynamips/nodes/c7200.py
@@ -20,13 +20,12 @@ http://github.com/GNS3/dynamips/blob/master/README.hypervisor#L294
"""
import asyncio
+import logging
-from .router import Router
from ..adapters.c7200_io_fe import C7200_IO_FE
from ..adapters.c7200_io_ge_e import C7200_IO_GE_E
from ..dynamips_error import DynamipsError
-
-import logging
+from .router import Router
log = logging.getLogger(__name__)
diff --git a/gns3server/compute/dynamips/nodes/ethernet_hub.py b/gns3server/compute/dynamips/nodes/ethernet_hub.py
index e8ea75062..e093fff2e 100644
--- a/gns3server/compute/dynamips/nodes/ethernet_hub.py
+++ b/gns3server/compute/dynamips/nodes/ethernet_hub.py
@@ -18,13 +18,13 @@
Hub object that uses the Bridge interface to create a hub with ports.
"""
-from .bridge import Bridge
-from ..nios.nio_udp import NIOUDP
-from ..dynamips_error import DynamipsError
-from ...error import NodeError
-
import logging
+from ...error import NodeError
+from ..dynamips_error import DynamipsError
+from ..nios.nio_udp import NIOUDP
+from .bridge import Bridge
+
log = logging.getLogger(__name__)
diff --git a/gns3server/compute/dynamips/nodes/ethernet_switch.py b/gns3server/compute/dynamips/nodes/ethernet_switch.py
index df3adf349..78af98783 100644
--- a/gns3server/compute/dynamips/nodes/ethernet_switch.py
+++ b/gns3server/compute/dynamips/nodes/ethernet_switch.py
@@ -20,17 +20,16 @@ http://github.com/GNS3/dynamips/blob/master/README.hypervisor#L558
"""
import asyncio
+import logging
+
from gns3server.utils import parse_version
-# from gns3server.utils.asyncio.embed_shell import EmbedShell, create_telnet_shell
-
-
-from .device import Device
-from ..nios.nio_udp import NIOUDP
-from ..dynamips_error import DynamipsError
from ...error import NodeError
+from ..dynamips_error import DynamipsError
+from ..nios.nio_udp import NIOUDP
-import logging
+# from gns3server.utils.asyncio.embed_shell import EmbedShell, create_telnet_shell
+from .device import Device
log = logging.getLogger(__name__)
diff --git a/gns3server/compute/dynamips/nodes/frame_relay_switch.py b/gns3server/compute/dynamips/nodes/frame_relay_switch.py
index 5839e1cdf..5bed4fa17 100644
--- a/gns3server/compute/dynamips/nodes/frame_relay_switch.py
+++ b/gns3server/compute/dynamips/nodes/frame_relay_switch.py
@@ -20,13 +20,12 @@ http://github.com/GNS3/dynamips/blob/master/README.hypervisor#L642
"""
import asyncio
-
-from .device import Device
-from ..nios.nio_udp import NIOUDP
-from ..dynamips_error import DynamipsError
-
import logging
+from ..dynamips_error import DynamipsError
+from ..nios.nio_udp import NIOUDP
+from .device import Device
+
log = logging.getLogger(__name__)
diff --git a/gns3server/compute/dynamips/nodes/router.py b/gns3server/compute/dynamips/nodes/router.py
index 8aabf6ddd..809fab8d9 100644
--- a/gns3server/compute/dynamips/nodes/router.py
+++ b/gns3server/compute/dynamips/nodes/router.py
@@ -20,26 +20,26 @@ http://github.com/GNS3/dynamips/blob/master/README.hypervisor#L77
"""
import asyncio
-import time
-import sys
+import base64
+import binascii
+import glob
+import logging
import os
import re
-import glob
-import base64
import shutil
-import binascii
-import logging
+import sys
+import time
log = logging.getLogger(__name__)
-from ...base_node import BaseNode
-from ..dynamips_error import DynamipsError
-
+from gns3server.utils.asyncio import monitor_process, wait_run_in_executor
from gns3server.utils.file_watcher import FileWatcher
-from gns3server.utils.asyncio import wait_run_in_executor, monitor_process
from gns3server.utils.hostname import is_ios_hostname_valid
from gns3server.utils.images import md5sum
+from ...base_node import BaseNode
+from ..dynamips_error import DynamipsError
+
class Router(BaseNode):
"""
diff --git a/gns3server/compute/iou/__init__.py b/gns3server/compute/iou/__init__.py
index afe2766a2..b89381f06 100644
--- a/gns3server/compute/iou/__init__.py
+++ b/gns3server/compute/iou/__init__.py
@@ -18,15 +18,14 @@
IOU server module.
"""
-import os
import asyncio
+import logging
+import os
from ..base_manager import BaseManager
from .iou_error import IOUError
from .iou_vm import IOUVM
-import logging
-
log = logging.getLogger(__name__)
diff --git a/gns3server/compute/iou/iou_vm.py b/gns3server/compute/iou/iou_vm.py
index b0f99a4c2..531f719a2 100644
--- a/gns3server/compute/iou/iou_vm.py
+++ b/gns3server/compute/iou/iou_vm.py
@@ -19,37 +19,37 @@ IOU VM management (creates command line, processes, files etc.) in
order to run an IOU VM.
"""
-import os
-import socket
-import re
import asyncio
-import subprocess
-import shutil
-import configparser
-import struct
-import hashlib
-import glob
import binascii
+import configparser
import functools
+import glob
+import hashlib
+import logging
+import os
+import re
+import shutil
+import socket
+import struct
+import subprocess
+import sys
-from .iou_error import IOUError
-from ..adapters.ethernet_adapter import EthernetAdapter
-from ..adapters.serial_adapter import SerialAdapter
-from ..nios.nio_udp import NIOUDP
-from ..base_node import BaseNode
-from .utils.iou_import import nvram_import
-from .utils.iou_export import nvram_export
-from gns3server.compute.ubridge.ubridge_error import UbridgeError
-from gns3server.utils.file_watcher import FileWatcher
-from gns3server.utils.asyncio.ssh_server import AsyncioSSHServer
-from gns3server.utils.asyncio.telnet_server import AsyncioTelnetServer
-from gns3server.utils.hostname import is_ios_hostname_valid
-from gns3server.utils.asyncio import locking
import gns3server.utils.asyncio
import gns3server.utils.images
+from gns3server.compute.ubridge.ubridge_error import UbridgeError
+from gns3server.utils.asyncio import locking
+from gns3server.utils.asyncio.ssh_server import AsyncioSSHServer
+from gns3server.utils.asyncio.telnet_server import AsyncioTelnetServer
+from gns3server.utils.file_watcher import FileWatcher
+from gns3server.utils.hostname import is_ios_hostname_valid
-import logging
-import sys
+from ..adapters.ethernet_adapter import EthernetAdapter
+from ..adapters.serial_adapter import SerialAdapter
+from ..base_node import BaseNode
+from ..nios.nio_udp import NIOUDP
+from .iou_error import IOUError
+from .utils.iou_export import nvram_export
+from .utils.iou_import import nvram_import
log = logging.getLogger(__name__)
diff --git a/gns3server/compute/qemu/__init__.py b/gns3server/compute/qemu/__init__.py
index 5a01be047..fc4b3d062 100644
--- a/gns3server/compute/qemu/__init__.py
+++ b/gns3server/compute/qemu/__init__.py
@@ -19,25 +19,24 @@ Qemu server module.
"""
import asyncio
+import logging
import os
import platform
-import shutil
-import shlex
-import sys
import re
+import shlex
+import shutil
import subprocess
+import sys
from ...utils.asyncio import subprocess_check_output
from ...utils.get_resource import get_resource
from ..base_manager import BaseManager
-from ..error import NodeError, ImageMissingError
+from ..error import ImageMissingError, NodeError
from .qemu_error import QemuError
from .qemu_vm import QemuVM
from .utils.guest_cid import get_next_guest_cid
from .utils.ziputils import unpack_zip
-import logging
-
log = logging.getLogger(__name__)
diff --git a/gns3server/compute/qemu/qemu_vm.py b/gns3server/compute/qemu/qemu_vm.py
index 51b650839..d04b6ed82 100644
--- a/gns3server/compute/qemu/qemu_vm.py
+++ b/gns3server/compute/qemu/qemu_vm.py
@@ -19,40 +19,40 @@ QEMU VM management (creates command line, processes, files etc.) in
order to run a QEMU VM.
"""
-import sys
+import asyncio
+import json
+import logging
+import math
import os
import re
-import math
-import shutil
-import struct
-import asyncio
-import socket
-import gns3server
-import subprocess
-import time
-import json
import shlex
+import shutil
+import socket
+import struct
+import subprocess
+import sys
+import time
+from pathlib import Path
+
import psutil
-from pathlib import Path
+import gns3server
+from gns3server.schemas.compute.qemu_nodes import Qemu, QemuPlatform
from gns3server.utils import parse_version
-from gns3server.utils.asyncio import subprocess_check_output, cancellable_wait_run_in_executor
+from gns3server.utils.asyncio import cancellable_wait_run_in_executor, subprocess_check_output
+
+from ...utils import int_to_macaddress, is_ipv6_enabled, macaddress_to_int
+from ...utils.asyncio import monitor_process
+from ...utils.hostname import is_rfc1123_hostname_valid
+from ...utils.images import md5sum
+from ..adapters.ethernet_adapter import EthernetAdapter
+from ..base_node import BaseNode
+from ..error import ImageMissingError, NodeError
+from ..nios.nio_tap import NIOTAP
+from ..nios.nio_udp import NIOUDP
from .qemu_error import QemuError
from .utils.qcow2 import Qcow2, Qcow2Error
from .utils.ziputils import pack_zip, unpack_zip
-from ..adapters.ethernet_adapter import EthernetAdapter
-from ..error import NodeError, ImageMissingError
-from ..nios.nio_udp import NIOUDP
-from ..nios.nio_tap import NIOTAP
-from ..base_node import BaseNode
-from ...utils.asyncio import monitor_process
-from ...utils.images import md5sum
-from ...utils import macaddress_to_int, int_to_macaddress, is_ipv6_enabled
-from ...utils.hostname import is_rfc1123_hostname_valid
-
-from gns3server.schemas.compute.qemu_nodes import Qemu, QemuPlatform
-
-import logging
log = logging.getLogger(__name__)
diff --git a/gns3server/compute/qemu/utils/guest_cid.py b/gns3server/compute/qemu/utils/guest_cid.py
index b8b34b1d0..c61b46af1 100644
--- a/gns3server/compute/qemu/utils/guest_cid.py
+++ b/gns3server/compute/qemu/utils/guest_cid.py
@@ -14,10 +14,10 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see .
-from ..qemu_error import QemuError
-
import logging
+from ..qemu_error import QemuError
+
log = logging.getLogger(__name__)
diff --git a/gns3server/compute/qemu/utils/qcow2.py b/gns3server/compute/qemu/utils/qcow2.py
index 9ea5fb40a..3b50c9fd7 100644
--- a/gns3server/compute/qemu/utils/qcow2.py
+++ b/gns3server/compute/qemu/utils/qcow2.py
@@ -15,9 +15,9 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see .
+import asyncio
import json
import os
-import asyncio
import struct
diff --git a/gns3server/compute/qemu/utils/ziputils.py b/gns3server/compute/qemu/utils/ziputils.py
index 165e5e7ce..4e229e0ea 100644
--- a/gns3server/compute/qemu/utils/ziputils.py
+++ b/gns3server/compute/qemu/utils/ziputils.py
@@ -16,8 +16,8 @@
# along with this program. If not, see .
import os
-import time
import shutil
+import time
import zipfile