From 405c01a847c9a6bd76796efeedc35ba498114777 Mon Sep 17 00:00:00 2001 From: Ryan Petrello Date: Wed, 28 Jun 2017 18:53:13 -0400 Subject: [PATCH] more isolated production tinkering see: #5903 see: #6507 --- awx/main/isolated/isolated_manager.py | 6 +++--- awx/main/tests/unit/isolated/test_expect.py | 2 +- awx/{playbooks/library => plugins/isolated}/mkfifo.py | 0 .../isolated}/tower_capacity.py | 0 .../isolated}/tower_isolated_cleanup.py | 0 5 files changed, 4 insertions(+), 4 deletions(-) rename awx/{playbooks/library => plugins/isolated}/mkfifo.py (100%) rename awx/{lib/management_modules => plugins/isolated}/tower_capacity.py (100%) rename awx/{lib/management_modules => plugins/isolated}/tower_isolated_cleanup.py (100%) diff --git a/awx/main/isolated/isolated_manager.py b/awx/main/isolated/isolated_manager.py index d8764ac086..0f2a6b6837 100644 --- a/awx/main/isolated/isolated_manager.py +++ b/awx/main/isolated/isolated_manager.py @@ -78,7 +78,8 @@ class IsolatedManager(object): 'CALLBACK_QUEUE': '', 'CALLBACK_CONNECTION': '', 'ANSIBLE_RETRY_FILES_ENABLED': 'False', - 'ANSIBLE_HOST_KEY_CHECKING': 'False' + 'ANSIBLE_HOST_KEY_CHECKING': 'False', + 'ANSIBLE_LIBRARY': os.path.join(os.path.dirname(awx.__file__), 'plugins', 'isolated') } @classmethod @@ -204,7 +205,7 @@ class IsolatedManager(object): os.symlink(self.cwd, self.path_to('project')) # create directories for build artifacts to live in - os.makedirs(self.path_to('artifacts', 'job_events'), mode=stat.S_IRUSR | stat.S_IWUSR) + os.makedirs(self.path_to('artifacts', 'job_events'), mode=stat.S_IXUSR + stat.S_IWUSR + stat.S_IRUSR) def _missing_artifacts(self, path_list, buff): missing_artifacts = filter(lambda path: not os.path.exists(path), path_list) @@ -347,7 +348,6 @@ class IsolatedManager(object): args = ['ansible-playbook', '-u', settings.AWX_ISOLATED_USERNAME, '-i', hostname_string, 'heartbeat_isolated.yml'] env = cls._base_management_env() - env['ANSIBLE_LIBRARY'] = os.path.join(os.path.dirname(awx.__file__), 'lib', 'management_modules') env['ANSIBLE_STDOUT_CALLBACK'] = 'json' buff = cStringIO.StringIO() diff --git a/awx/main/tests/unit/isolated/test_expect.py b/awx/main/tests/unit/isolated/test_expect.py index a021b8fdc4..5d5c79f150 100644 --- a/awx/main/tests/unit/isolated/test_expect.py +++ b/awx/main/tests/unit/isolated/test_expect.py @@ -149,7 +149,7 @@ def test_build_isolated_job_data(private_data_dir, rsa_key): path = os.path.join(private_data_dir, 'artifacts') assert os.path.isdir(path) - assert stat.S_IMODE(os.stat(path).st_mode) == stat.S_IRUSR + stat.S_IWUSR # user rw + assert stat.S_IMODE(os.stat(path).st_mode) == stat.S_IXUSR + stat.S_IWUSR + stat.S_IRUSR # user rwx path = os.path.join(private_data_dir, 'args') with open(path, 'r') as f: diff --git a/awx/playbooks/library/mkfifo.py b/awx/plugins/isolated/mkfifo.py similarity index 100% rename from awx/playbooks/library/mkfifo.py rename to awx/plugins/isolated/mkfifo.py diff --git a/awx/lib/management_modules/tower_capacity.py b/awx/plugins/isolated/tower_capacity.py similarity index 100% rename from awx/lib/management_modules/tower_capacity.py rename to awx/plugins/isolated/tower_capacity.py diff --git a/awx/lib/management_modules/tower_isolated_cleanup.py b/awx/plugins/isolated/tower_isolated_cleanup.py similarity index 100% rename from awx/lib/management_modules/tower_isolated_cleanup.py rename to awx/plugins/isolated/tower_isolated_cleanup.py