set PYTHONPATH properly for isolated usage of runner

This commit is contained in:
Ryan Petrello
2019-03-28 10:43:14 -04:00
parent 99478f5d25
commit dd81f59d9a
3 changed files with 19 additions and 7 deletions

View File

@@ -1,3 +1,4 @@
import os
import shutil
import sys
import tempfile
@@ -7,6 +8,8 @@ from django.core.management.base import BaseCommand, CommandError
import ansible_runner
from awx.main.expect.isolated_manager import set_pythonpath
class Command(BaseCommand):
"""Tests SSH connectivity between a controller and target isolated node"""
@@ -29,12 +32,15 @@ class Command(BaseCommand):
getattr(settings, 'AWX_ISOLATED_PRIVATE_KEY', None)
]):
ssh_key = settings.AWX_ISOLATED_PRIVATE_KEY
env = dict(os.environ.items())
set_pythonpath(os.path.join(settings.ANSIBLE_VENV_PATH, 'lib'), env)
res = ansible_runner.interface.run(
private_data_dir=path,
host_pattern='all',
inventory='{} ansible_ssh_user={}'.format(hostname, settings.AWX_ISOLATED_USERNAME),
module='shell',
module_args='ansible-runner --version',
envvars=env,
verbosity=3,
ssh_key=ssh_key,
)