perf: 优化winrm协议网域连接支持ssh_key

pull/10104/head
jiangweidong 2023-04-04 11:54:52 +08:00
parent cbe384161a
commit 187c1e3804
2 changed files with 6 additions and 2 deletions

View File

@ -1,11 +1,12 @@
import json import json
import os import os
import shutil import shutil
import yaml
from collections import defaultdict from collections import defaultdict
from hashlib import md5 from hashlib import md5
from socket import gethostname from socket import gethostname
import yaml
from django.conf import settings from django.conf import settings
from django.utils import timezone from django.utils import timezone
from django.utils.translation import gettext as _ from django.utils.translation import gettext as _
@ -239,10 +240,12 @@ class BasePlaybookManager:
jms_asset, jms_gateway = host['jms_asset'], host.get('gateway') jms_asset, jms_gateway = host['jms_asset'], host.get('gateway')
if not jms_gateway: if not jms_gateway:
continue continue
server = SSHTunnelForwarder( server = SSHTunnelForwarder(
(jms_gateway['address'], jms_gateway['port']), (jms_gateway['address'], jms_gateway['port']),
ssh_username=jms_gateway['username'], ssh_username=jms_gateway['username'],
ssh_password=jms_gateway['secret'], ssh_password=jms_gateway['secret'],
ssh_pkey=jms_gateway['private_key_path'],
remote_bind_address=(jms_asset['address'], jms_asset['port']) remote_bind_address=(jms_asset['address'], jms_asset['port'])
) )
try: try:

View File

@ -100,7 +100,8 @@ class JMSInventory:
if ansible_connection in ('local', 'winrm'): if ansible_connection in ('local', 'winrm'):
host['gateway'] = { host['gateway'] = {
'address': gateway.address, 'port': gateway.port, 'address': gateway.address, 'port': gateway.port,
'username': gateway.username, 'secret': gateway.password 'username': gateway.username, 'secret': gateway.password,
'private_key_path': gateway.private_key_path
} }
host['jms_asset']['port'] = port host['jms_asset']['port'] = port
else: else: