diff options
author | Matt Clay <matt@mystile.com> | 2023-02-20 17:55:04 -0800 |
---|---|---|
committer | Matt Clay <matt@mystile.com> | 2023-03-14 17:51:58 -0700 |
commit | 13f9a42e1bed61ccec60c0151110ddac76f31853 (patch) | |
tree | 41a87c4404471b2f29f3b7d2c043d82e5ea12149 | |
parent | f630cfb50a086e9b1b2fe1b736475fc4e5dd0e7a (diff) | |
download | ansible-13f9a42e1bed61ccec60c0151110ddac76f31853.tar.gz |
[stable-2.12] ansible-test - Show Python version before install (#80022)
Always indicate the Python version being used before installing requirements.
(cherry picked from commit 5e3db6e44169aa88cd027f469eea96f1f17fea95)
Co-authored-by: Matt Clay <matt@mystile.com>
-rw-r--r-- | changelogs/fragments/ansible-test-requirements-message.yml | 3 | ||||
-rw-r--r-- | test/lib/ansible_test/_internal/python_requirements.py | 15 |
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 eed177c393..c20ec943e1 100644 --- a/test/lib/ansible_test/_internal/python_requirements.py +++ b/test/lib/ansible_test/_internal/python_requirements.py @@ -52,6 +52,7 @@ from .data import ( from .host_configs import ( PosixConfig, PythonConfig, + VirtualPythonConfig, ) from .connections import ( @@ -260,6 +261,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) |