From 61793dcc0af0f236d718cb23b7b6778595298044 Mon Sep 17 00:00:00 2001 From: Mike khiretskiy Date: Mon, 17 Feb 2014 09:27:53 +0400 Subject: [PATCH] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=B0=20=D0=BE=D1=88=D0=B8=D0=B1=D0=BA=D0=B0=20htt?= =?UTF-8?q?p://www.calculate-linux.ru/boards/21/topics/25230?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Исправлена ошибка неправильного определения имени сетевой карты если udevadm предоставляет ID_NET_NAME_ONBOARD --- install/variables/net.py | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/install/variables/net.py b/install/variables/net.py index d8d22f6..e9e400d 100644 --- a/install/variables/net.py +++ b/install/variables/net.py @@ -107,11 +107,18 @@ class VariableOsInstallNetInterfacesOrig(NetHelper,ReadonlyVariable): return self.Get('os_install_net_interfaces') def getOrig(x): try: - nameParam = filter(lambda x:x.startswith("ID_NET_NAME_PATH="), - process("udevadm","test-builtin","net_id", - "/sys/class/net/%s"%x)) + nameParam = \ + map(lambda x:x.partition('=')[::2], + filter(lambda x:x.startswith("ID_NET_NAME_PATH=") or + x.startswith("ID_NET_NAME_ONBOARD="), + process("udevadm","test-builtin","net_id", + "/sys/class/net/%s"%x))) if nameParam: - return nameParam[0].partition('=')[2].strip() or x + sortOrder = {'ID_NET_NAME_PATH':0, + 'ID_NET_NAME_ONBOARD':1} + nameParam = sorted(nameParam, + key=lambda x:sortOrder.get(x[0],-1)) + return nameParam[-1][1].strip() or x except Exception as e: print str(e) return x