mirror of
https://github.com/ansible-collections/community.general.git
synced 2024-09-14 20:13:21 +02:00
Update the default test container to 1.7.0. (#54930)
* Update the default test container to 1.7.0. * Run `pip check` after installing test requirements. * Support older versions of pip. * Remove obsolete pip error handler.
This commit is contained in:
parent
c2958df3a4
commit
a4c42ba687
2 changed files with 16 additions and 24 deletions
|
@ -1,4 +1,4 @@
|
||||||
default name=quay.io/ansible/default-test-container:1.6.0 python=3.6,2.6,2.7,3.5,3.7,3.8 python3.8=/usr/local/bin/python3.8 seccomp=unconfined
|
default name=quay.io/ansible/default-test-container:1.7.0 python=3.6,2.6,2.7,3.5,3.7,3.8 seccomp=unconfined
|
||||||
centos6 name=quay.io/ansible/centos6-test-container:1.8.0 python=2.6 seccomp=unconfined
|
centos6 name=quay.io/ansible/centos6-test-container:1.8.0 python=2.6 seccomp=unconfined
|
||||||
centos7 name=quay.io/ansible/centos7-test-container:1.8.0 python=2.7 seccomp=unconfined
|
centos7 name=quay.io/ansible/centos7-test-container:1.8.0 python=2.7 seccomp=unconfined
|
||||||
fedora28 name=quay.io/ansible/fedora28-test-container:1.8.0 python=2.7
|
fedora28 name=quay.io/ansible/fedora28-test-container:1.8.0 python=2.7
|
||||||
|
|
|
@ -213,17 +213,22 @@ def install_command_requirements(args, python_version=None):
|
||||||
# first pass to install requirements, changes expected unless environment is already set up
|
# first pass to install requirements, changes expected unless environment is already set up
|
||||||
changes = run_pip_commands(args, pip, commands, detect_pip_changes)
|
changes = run_pip_commands(args, pip, commands, detect_pip_changes)
|
||||||
|
|
||||||
if not changes:
|
if changes:
|
||||||
return # no changes means we can stop early
|
# second pass to check for conflicts in requirements, changes are not expected here
|
||||||
|
changes = run_pip_commands(args, pip, commands, detect_pip_changes)
|
||||||
|
|
||||||
# second pass to check for conflicts in requirements, changes are not expected here
|
if changes:
|
||||||
changes = run_pip_commands(args, pip, commands, detect_pip_changes)
|
raise ApplicationError('Conflicts detected in requirements. The following commands reported changes during verification:\n%s' %
|
||||||
|
'\n'.join((' '.join(pipes.quote(c) for c in cmd) for cmd in changes)))
|
||||||
|
|
||||||
if not changes:
|
# ask pip to check for conflicts between installed packages
|
||||||
return # no changes means no conflicts
|
try:
|
||||||
|
run_command(args, pip + ['check', '--disable-pip-version-check'], capture=True)
|
||||||
raise ApplicationError('Conflicts detected in requirements. The following commands reported changes during verification:\n%s' %
|
except SubprocessError as ex:
|
||||||
'\n'.join((' '.join(pipes.quote(c) for c in cmd) for cmd in changes)))
|
if ex.stderr.strip() == 'ERROR: unknown command "check"':
|
||||||
|
display.warning('Cannot check pip requirements for conflicts because "pip check" is not supported.')
|
||||||
|
else:
|
||||||
|
raise
|
||||||
|
|
||||||
|
|
||||||
def run_pip_commands(args, pip, commands, detect_pip_changes=False):
|
def run_pip_commands(args, pip, commands, detect_pip_changes=False):
|
||||||
|
@ -244,20 +249,7 @@ def run_pip_commands(args, pip, commands, detect_pip_changes=False):
|
||||||
|
|
||||||
before_list = after_list
|
before_list = after_list
|
||||||
|
|
||||||
try:
|
run_command(args, cmd)
|
||||||
run_command(args, cmd)
|
|
||||||
except SubprocessError as ex:
|
|
||||||
if ex.status != 2:
|
|
||||||
raise
|
|
||||||
|
|
||||||
# If pip is too old it won't understand the arguments we passed in, so we'll need to upgrade it.
|
|
||||||
|
|
||||||
# Installing "coverage" on ubuntu 16.04 fails with the error:
|
|
||||||
# AttributeError: 'Requirement' object has no attribute 'project_name'
|
|
||||||
# See: https://bugs.launchpad.net/ubuntu/xenial/+source/python-pip/+bug/1626258
|
|
||||||
# Upgrading pip works around the issue.
|
|
||||||
run_command(args, pip + ['install', '--upgrade', 'pip'])
|
|
||||||
run_command(args, cmd)
|
|
||||||
|
|
||||||
after_list = pip_list(args, pip) if detect_pip_changes else None
|
after_list = pip_list(args, pip) if detect_pip_changes else None
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue