summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--changelogs/fragments/ansible-test-requirements-message.yml3
-rw-r--r--test/lib/ansible_test/_internal/python_requirements.py15
2 files changed, 18 insertions, 0 deletions
diff --git a/changelogs/fragments/ansible-test-requirements-message.yml b/changelogs/fragments/ansible-test-requirements-message.yml
new file mode 100644
index 0000000000..864567be6a
--- /dev/null
+++ b/changelogs/fragments/ansible-test-requirements-message.yml
@@ -0,0 +1,3 @@
+bugfixes:
+ - ansible-test - Always indicate the Python version being used before installing requirements.
+ Resolves issue https://github.com/ansible/ansible/issues/72855
diff --git a/test/lib/ansible_test/_internal/python_requirements.py b/test/lib/ansible_test/_internal/python_requirements.py
index 0e133f913f..fc88b637c2 100644
--- a/test/lib/ansible_test/_internal/python_requirements.py
+++ b/test/lib/ansible_test/_internal/python_requirements.py
@@ -48,6 +48,7 @@ from .data import (
from .host_configs import (
PosixConfig,
PythonConfig,
+ VirtualPythonConfig,
)
from .connections import (
@@ -265,6 +266,20 @@ def run_pip(
connection = connection or LocalConnection(args)
script = prepare_pip_script(commands)
+ if isinstance(args, IntegrationConfig):
+ # Integration tests can involve two hosts (controller and target).
+ # The connection type can be used to disambiguate between the two.
+ context = " (controller)" if isinstance(connection, LocalConnection) else " (target)"
+ else:
+ context = ""
+
+ if isinstance(python, VirtualPythonConfig):
+ context += " [venv]"
+
+ # The interpreter path is not included below.
+ # It can be seen by running ansible-test with increased verbosity (showing all commands executed).
+ display.info(f'Installing requirements for Python {python.version}{context}')
+
if not args.explain:
try:
connection.run([python.path], data=script, capture=False)