summaryrefslogtreecommitdiff
path: root/test/lib/ansible_test/_internal/venv.py
diff options
context:
space:
mode:
Diffstat (limited to 'test/lib/ansible_test/_internal/venv.py')
-rw-r--r--test/lib/ansible_test/_internal/venv.py29
1 files changed, 15 insertions, 14 deletions
diff --git a/test/lib/ansible_test/_internal/venv.py b/test/lib/ansible_test/_internal/venv.py
index cf436775bd..a50f9b54e4 100644
--- a/test/lib/ansible_test/_internal/venv.py
+++ b/test/lib/ansible_test/_internal/venv.py
@@ -15,11 +15,12 @@ from .util import (
find_python,
SubprocessError,
get_available_python_versions,
- ANSIBLE_TEST_TOOLS_ROOT,
+ ANSIBLE_TEST_TARGET_TOOLS_ROOT,
display,
remove_tree,
ApplicationError,
str_to_version,
+ raw_command,
)
from .util_common import (
@@ -92,7 +93,7 @@ def create_virtual_environment(args, # type: EnvironmentConfig
# creating a virtual environment using 'venv' when running in a virtual environment created by 'virtualenv' results
# in a copy of the original virtual environment instead of creation of a new one
# avoid this issue by only using "real" python interpreters to invoke 'venv'
- for real_python in iterate_real_pythons(args, python.version):
+ for real_python in iterate_real_pythons(python.version):
if run_venv(args, real_python, system_site_packages, pip, path):
display.info('Created Python %s virtual environment using "venv": %s' % (python.version, path), verbosity=1)
return True
@@ -132,7 +133,7 @@ def create_virtual_environment(args, # type: EnvironmentConfig
return False
-def iterate_real_pythons(args, version): # type: (EnvironmentConfig, str) -> t.Iterable[str]
+def iterate_real_pythons(version): # type: (str) -> t.Iterable[str]
"""
Iterate through available real python interpreters of the requested version.
The current interpreter will be checked and then the path will be searched.
@@ -142,7 +143,7 @@ def iterate_real_pythons(args, version): # type: (EnvironmentConfig, str) -> t.
if version_info == sys.version_info[:len(version_info)]:
current_python = sys.executable
- real_prefix = get_python_real_prefix(args, current_python)
+ real_prefix = get_python_real_prefix(current_python)
if real_prefix:
current_python = find_python(version, os.path.join(real_prefix, 'bin'))
@@ -163,7 +164,7 @@ def iterate_real_pythons(args, version): # type: (EnvironmentConfig, str) -> t.
if found_python == current_python:
return
- real_prefix = get_python_real_prefix(args, found_python)
+ real_prefix = get_python_real_prefix(found_python)
if real_prefix:
found_python = find_python(version, os.path.join(real_prefix, 'bin'))
@@ -172,12 +173,12 @@ def iterate_real_pythons(args, version): # type: (EnvironmentConfig, str) -> t.
yield found_python
-def get_python_real_prefix(args, python_path): # type: (EnvironmentConfig, str) -> t.Optional[str]
+def get_python_real_prefix(python_path): # type: (str) -> t.Optional[str]
"""
Return the real prefix of the specified interpreter or None if the interpreter is not a virtual environment created by 'virtualenv'.
"""
- cmd = [python_path, os.path.join(os.path.join(ANSIBLE_TEST_TOOLS_ROOT, 'virtualenvcheck.py'))]
- check_result = json.loads(run_command(args, cmd, capture=True, always=True)[0])
+ cmd = [python_path, os.path.join(os.path.join(ANSIBLE_TEST_TARGET_TOOLS_ROOT, 'virtualenvcheck.py'))]
+ check_result = json.loads(raw_command(cmd, capture=True)[0])
real_prefix = check_result['real_prefix']
return real_prefix
@@ -205,7 +206,7 @@ def run_venv(args, # type: EnvironmentConfig
remove_tree(path)
if args.verbosity > 1:
- display.error(ex)
+ display.error(ex.message)
return False
@@ -241,7 +242,7 @@ def run_virtualenv(args, # type: EnvironmentConfig
remove_tree(path)
if args.verbosity > 1:
- display.error(ex)
+ display.error(ex.message)
return False
@@ -249,11 +250,11 @@ def run_virtualenv(args, # type: EnvironmentConfig
def get_virtualenv_version(args, python): # type: (EnvironmentConfig, str) -> t.Optional[t.Tuple[int, ...]]
- """Get the virtualenv version for the given python intepreter, if available, otherwise return None."""
+ """Get the virtualenv version for the given python interpreter, if available, otherwise return None."""
try:
- cache = get_virtualenv_version.cache
+ cache = get_virtualenv_version.cache # type: ignore[attr-defined]
except AttributeError:
- cache = get_virtualenv_version.cache = {}
+ cache = get_virtualenv_version.cache = {} # type: ignore[attr-defined]
if python not in cache:
try:
@@ -262,7 +263,7 @@ def get_virtualenv_version(args, python): # type: (EnvironmentConfig, str) -> t
stdout = ''
if args.verbosity > 1:
- display.error(ex)
+ display.error(ex.message)
version = None