CI: Fix multiple failures
Tox jobs are timing out in CI due to pip dependency resolution backtracking taking too long. When run locally, pip fails to resolve dependencies due to upper-constraints now allowing pluggy 1.0.0 [1], while molecule still depends on pluggy >= 0.7.1, < 1.0. See similar tripleo bug for more details [2]. Split molecule dependencies in a separate requirements file and remove upper constraints from its tox environment for now. As a bonus, it should speed up execution of the jobs due to installing fewer dependencies. Stop using upper-constraints when installing docker python library [3]. This part of the commit can be reverted when docker 5.0.2 is in upper constraints. Update Kolla inventory template following renaming of haproxy role to loadbalancer [4]. With the existing template, haproxy/keepalived containers are not created and service deployment fails while trying to connect to MySQL using the VIP. [1] https://review.opendev.org/c/openstack/requirements/+/806680 [2] https://bugs.launchpad.net/tripleo/+bug/1942508 [3] https://review.opendev.org/c/openstack/kayobe/+/807128 [4] https://review.opendev.org/c/openstack/kolla-ansible/+/770618 Change-Id: I4cad83c92c32d1db2a5d3c03a78a1c533a8b9633 Co-Authored-By: Mark Goddard <mark@stackhpc.com>
This commit is contained in:
parent
bb05adbdcf
commit
74eff837cb
@ -47,7 +47,10 @@
|
|||||||
name: docker
|
name: docker
|
||||||
state: latest
|
state: latest
|
||||||
virtualenv: "{{ kolla_ansible_target_venv }}"
|
virtualenv: "{{ kolla_ansible_target_venv }}"
|
||||||
extra_args: "{% if kolla_upper_constraints_file %}-c {{ kolla_upper_constraints_file }}{% endif %}"
|
# FIXME(mgoddard): docker 5.0.1 is currently in master
|
||||||
|
# upper-constraints, but fails with an unexpected keyword argument,
|
||||||
|
# 'disable_buffering'. Install it without UC for now.
|
||||||
|
# extra_args: "{% if kolla_upper_constraints_file %}-c {{ kolla_upper_constraints_file }}{% endif %}"
|
||||||
become: True
|
become: True
|
||||||
|
|
||||||
- name: Ensure kolla-ansible virtualenv has SELinux bindings installed
|
- name: Ensure kolla-ansible virtualenv has SELinux bindings installed
|
||||||
|
@ -72,9 +72,15 @@ control
|
|||||||
[hacluster-remote:children]
|
[hacluster-remote:children]
|
||||||
compute
|
compute
|
||||||
|
|
||||||
[haproxy:children]
|
[loadbalancer:children]
|
||||||
network
|
network
|
||||||
|
|
||||||
|
[keepalived:children]
|
||||||
|
loadbalancer
|
||||||
|
|
||||||
|
[haproxy:children]
|
||||||
|
loadbalancer
|
||||||
|
|
||||||
[mariadb:children]
|
[mariadb:children]
|
||||||
control
|
control
|
||||||
|
|
||||||
|
10
molecule-requirements.txt
Normal file
10
molecule-requirements.txt
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
# The order of packages is significant, because pip processes them in the order
|
||||||
|
# of appearance. Changing the order has an impact on the overall integration
|
||||||
|
# process, which may cause wedges in the gate later.
|
||||||
|
|
||||||
|
docker # Apache-2.0
|
||||||
|
molecule # MIT
|
||||||
|
molecule-docker # MIT
|
||||||
|
pytest-molecule # MIT
|
||||||
|
pytest-testinfra
|
||||||
|
yamllint # GPLv3
|
@ -6,13 +6,7 @@ ansible-lint>=3.0.0,!=4.3.0 # MIT
|
|||||||
bashate>=0.2 # Apache-2.0
|
bashate>=0.2 # Apache-2.0
|
||||||
coverage>=4.0 # Apache-2.0
|
coverage>=4.0 # Apache-2.0
|
||||||
doc8 # Apache-2.0
|
doc8 # Apache-2.0
|
||||||
docker # Apache-2.0
|
|
||||||
hacking>=3.0.1,<3.1.0 # Apache-2.0
|
hacking>=3.0.1,<3.1.0 # Apache-2.0
|
||||||
molecule # MIT
|
|
||||||
molecule-docker # MIT
|
|
||||||
oslotest>=1.10.0 # Apache-2.0
|
oslotest>=1.10.0 # Apache-2.0
|
||||||
paramiko
|
|
||||||
pytest-molecule # MIT
|
|
||||||
pytest-testinfra
|
|
||||||
stestr # Apache-2.0
|
stestr # Apache-2.0
|
||||||
yamllint # GPLv3
|
yamllint # GPLv3
|
||||||
|
6
tox.ini
6
tox.ini
@ -60,9 +60,11 @@ commands =
|
|||||||
|
|
||||||
[testenv:molecule]
|
[testenv:molecule]
|
||||||
deps =
|
deps =
|
||||||
-c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
|
# TODO(priteau): Restore upper constraints once molecule dependency
|
||||||
|
# resolution is working
|
||||||
|
#-c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
|
||||||
-r{toxinidir}/requirements.txt
|
-r{toxinidir}/requirements.txt
|
||||||
-r{toxinidir}/test-requirements.txt
|
-r{toxinidir}/molecule-requirements.txt
|
||||||
whitelist_externals =
|
whitelist_externals =
|
||||||
bash
|
bash
|
||||||
commands =
|
commands =
|
||||||
|
Loading…
Reference in New Issue
Block a user