From dd69c70dfb995df01b8b7fe6b42037181ac56873 Mon Sep 17 00:00:00 2001 From: Lucian Petrut Date: Thu, 1 Nov 2018 11:29:47 +0200 Subject: [PATCH] Do not import pyroute2 on Windows Pyroute2 is not available on Windows, for which reason we need some platform checks. At the moment, the ovs plugin can no longer be loaded on Windows because of this import error. Change-Id: I4aacd17e77d3b22b8245106d325a7e393794f0a1 Closes-Bug: #1801029 --- os_vif/internal/command/ip/api.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/os_vif/internal/command/ip/api.py b/os_vif/internal/command/ip/api.py index e442d394..f65b0898 100644 --- a/os_vif/internal/command/ip/api.py +++ b/os_vif/internal/command/ip/api.py @@ -13,9 +13,7 @@ import os from oslo_log import log as logging - -from os_vif.internal.command.ip.linux import impl_pyroute2 as linux_ip_lib -from os_vif.internal.command.ip.windows import impl_netifaces as win_ip_lib +from oslo_utils import importutils LOG = logging.getLogger(__name__) @@ -23,6 +21,8 @@ LOG = logging.getLogger(__name__) def _get_impl(): if os.name == 'nt': - return win_ip_lib.Netifaces() + impl = 'os_vif.internal.command.ip.windows.impl_netifaces.Netifaces' else: - return linux_ip_lib.PyRoute2() + impl = 'os_vif.internal.command.ip.linux.impl_pyroute2.PyRoute2' + + return importutils.import_object(impl)