From 2ba9e56033e093918918881bb2729e6eda90f6b8 Mon Sep 17 00:00:00 2001 From: Ryan Petrello Date: Mon, 19 Jun 2017 11:15:16 -0400 Subject: [PATCH] Include the Tower venv in the isolated bubblewrapped arguments. This moves the container-based code location and venvs. The goal here is that the paths of Tower source for isolated vs normal nodes matches (both in prod and local development) so that we don't have to add a bunch of additional bwrap argument logic for . --- Makefile | 12 ++++++------ awx/main/utils/common.py | 2 +- tools/docker-isolated-override.yml | 2 +- tools/docker-isolated/tower-expect | 4 ++-- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/Makefile b/Makefile index 9d8d6f665b..0d3673bbba 100644 --- a/Makefile +++ b/Makefile @@ -302,13 +302,13 @@ requirements_ansible_dev: fi requirements_isolated: - if [ ! -d "$(VENV_BASE)/tower_isolated" ]; then \ - virtualenv --system-site-packages $(VENV_BASE)/tower_isolated && \ - $(VENV_BASE)/tower_isolated/bin/pip install $(PIP_OPTIONS) --ignore-installed six packaging appdirs && \ - $(VENV_BASE)/tower_isolated/bin/pip install $(PIP_OPTIONS) --ignore-installed setuptools==35.0.2 && \ - $(VENV_BASE)/tower_isolated/bin/pip install $(PIP_OPTIONS) --ignore-installed pip==9.0.1; \ + if [ ! -d "$(VENV_BASE)/tower" ]; then \ + virtualenv --system-site-packages $(VENV_BASE)/tower && \ + $(VENV_BASE)/tower/bin/pip install $(PIP_OPTIONS) --ignore-installed six packaging appdirs && \ + $(VENV_BASE)/tower/bin/pip install $(PIP_OPTIONS) --ignore-installed setuptools==35.0.2 && \ + $(VENV_BASE)/tower/bin/pip install $(PIP_OPTIONS) --ignore-installed pip==9.0.1; \ fi; - $(VENV_BASE)/tower_isolated/bin/pip install -r requirements/requirements_isolated.txt + $(VENV_BASE)/tower/bin/pip install -r requirements/requirements_isolated.txt # Install third-party requirements needed for Tower's environment. requirements_tower: virtualenv_tower diff --git a/awx/main/utils/common.py b/awx/main/utils/common.py index b78f5b4ba5..b345a93de3 100644 --- a/awx/main/utils/common.py +++ b/awx/main/utils/common.py @@ -643,7 +643,7 @@ def wrap_args_with_proot(args, cwd, **kwargs): show_paths = [cwd] if settings.ANSIBLE_USE_VENV: show_paths.append(settings.ANSIBLE_VENV_PATH) - if settings.TOWER_USE_VENV and not kwargs.get('isolated'): + if settings.TOWER_USE_VENV: show_paths.append(settings.TOWER_VENV_PATH) show_paths.extend(getattr(settings, 'AWX_PROOT_SHOW_PATHS', None) or []) for path in sorted(set(show_paths)): diff --git a/tools/docker-isolated-override.yml b/tools/docker-isolated-override.yml index dab80afcde..ed2ef46971 100644 --- a/tools/docker-isolated-override.yml +++ b/tools/docker-isolated-override.yml @@ -11,7 +11,7 @@ services: image: gcr.io/ansible-tower-engineering/tower_isolated:${TAG} hostname: isolated volumes: - - "../awx/main/isolated:/tower_isolated" + - "../awx/main/isolated:/tower_devel" - "../awx/lib:/tower_lib" - "/sys/fs/cgroup:/sys/fs/cgroup:ro" privileged: true diff --git a/tools/docker-isolated/tower-expect b/tools/docker-isolated/tower-expect index 5ad90b9d98..bfe543dd85 100755 --- a/tools/docker-isolated/tower-expect +++ b/tools/docker-isolated/tower-expect @@ -1,3 +1,3 @@ #!/bin/bash -. /venv/tower_isolated/bin/activate -exec env TOWER_LIB_DIRECTORY=/tower_lib /tower_isolated/run.py "$@" +. /venv/tower/bin/activate +exec env TOWER_LIB_DIRECTORY=/tower_lib /tower_devel/run.py "$@"