From 084dcc7b4435dba7ddafb46c4b65f21dadb78fcb Mon Sep 17 00:00:00 2001 From: ibuler Date: Fri, 28 Oct 2022 16:25:16 +0800 Subject: [PATCH] =?UTF-8?q?pref:=20=E4=BF=AE=E6=94=B9=20inventory?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/ops/ansible/inventory.py | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/apps/ops/ansible/inventory.py b/apps/ops/ansible/inventory.py index 35344ad6a..919b0948c 100644 --- a/apps/ops/ansible/inventory.py +++ b/apps/ops/ansible/inventory.py @@ -9,16 +9,17 @@ __all__ = ['JMSInventory'] class JMSInventory: - def __init__(self, manager, assets=None, account_policy='smart', account_prefer='root,administrator'): + def __init__(self, manager, assets=None, account_policy='smart', + account_prefer='root,administrator', host_callback=None): """ :param assets: :param account_prefer: account username name if not set use account_policy :param account_policy: smart, privileged_must, privileged_first """ - self.manager = manager self.assets = self.clean_assets(assets) self.account_prefer = account_prefer self.account_policy = account_policy + self.host_callback = host_callback @staticmethod def clean_assets(assets): @@ -106,7 +107,8 @@ class JMSInventory: 'jms_asset': { 'id': str(asset.id), 'name': asset.name, 'address': asset.address, 'type': asset.type, 'category': asset.category, - 'protocol': asset.protocol, 'port': asset.port,'database': '', + 'protocol': asset.protocol, 'port': asset.port, + 'category_property': asset.category_property, 'protocols': [{'name': p.name, 'port': p.port} for p in protocols], }, 'jms_account': { @@ -118,9 +120,6 @@ class JMSInventory: ansible_connection = ansible_config.get('ansible_connection', 'ssh') host.update(ansible_config) - if platform.category == 'database': - host['jms_asset']['database'] = asset.database.db_name - gateway = None if asset.domain: gateway = asset.domain.select_gateway() @@ -176,8 +175,8 @@ class JMSInventory: if not automation.ansible_enabled: host['error'] = _('Ansible disabled') - if self.manager.host_callback is not None: - host = self.manager.host_callback( + if self.host_callback is not None: + host = self.host_callback( host, asset=asset, account=account, platform=platform, automation=automation, path_dir=path_dir