From ad0bc82539cd0b3f11a7312f9003a566e77a0ea5 Mon Sep 17 00:00:00 2001 From: Bai Date: Mon, 22 Apr 2024 11:27:48 +0800 Subject: [PATCH] =?UTF-8?q?perf:=20=E4=BC=98=E5=8C=96=20HUAWEI=20=E8=AE=BE?= =?UTF-8?q?=E5=A4=87=E5=88=A4=E6=96=AD=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/assets/models/platform.py | 12 ++++++++++-- apps/ops/ansible/inventory.py | 2 +- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/apps/assets/models/platform.py b/apps/assets/models/platform.py index a93a96863..85ec8d535 100644 --- a/apps/assets/models/platform.py +++ b/apps/assets/models/platform.py @@ -1,8 +1,7 @@ from django.db import models from django.utils.translation import gettext_lazy as _ -from assets.const import AllTypes -from assets.const import Protocol +from assets.const import AllTypes, Category, Protocol from common.db.fields import JsonDictTextField from common.db.models import JMSBaseModel @@ -119,6 +118,15 @@ class Platform(LabeledMixin, JMSBaseModel): ) return linux.id + def is_huawei(self): + if self.category != Category.DEVICE: + return False + if 'huawei' in self.name.lower(): + return True + if '华为' in self.name: + return True + return False + def __str__(self): return self.name diff --git a/apps/ops/ansible/inventory.py b/apps/ops/ansible/inventory.py index 452c7f2cb..f969861cb 100644 --- a/apps/ops/ansible/inventory.py +++ b/apps/ops/ansible/inventory.py @@ -125,7 +125,7 @@ class JMSInventory: else: host.update(self.make_account_ansible_vars(account, path_dir)) - if "huawei" in platform.name.lower() and platform.category == Category.DEVICE.value: + if platform.is_huawei(): host['ansible_connection'] = 'network_cli' host['ansible_network_os'] = 'asa'