From: Ilya Maximets <i.maxim...@ovn.org>

GHA is broken due to update to pip>=22.0.  This happens because now it
stops backtracking packages on build failure making it impossible to
find working combination of versions.

We're not able to build 'hacking', because 'wheel' is not installed
at that point in time.  Installing it separately to fix the issue,
so pip can find compatible versions of packages by backtracking.

Unfortunately, new version of backtracking leads to installation of
incompatible versions of flake8 and hacking.  Presumably because
current versions of hacking are not compatible with flake8>=4.0
and very old hacking-0.5.4 for some reason is considered suitable
while resolving dependencies.  So, we end up with flake8-4.0.1 and
hacking-0.5.4 installed.  And that doesn't work.  Limiting the version
of hacking to >=3.0 to have flake8-3.9.2 and hacking-3.0.0 installed
during backtracking.

Signed-off-by: Ilya Maximets <i.maxim...@ovn.org>
Acked-by: Dumitru Ceara <dce...@redhat.com>
[i.maximets: 2 tags below carried from v1, that had no >=3.0 change]
Acked-by: Gaetan Rivet <gr...@u256.net>
Acked-by: Aaron Conole <acon...@redhat.com>
Signed-off-by: Numan Siddique <num...@ovn.org>
(cherry picked from OVS commit d5453008c419512ba5a31dade5d394984b6161a1)
(cherry picked from commit 889037e2905447a601fab8f78e6ece46c5d45773)
Signed-off-by: Vladislav Odintsov <odiv...@gmail.com>
---
 .ci/linux-prepare.sh | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/.ci/linux-prepare.sh b/.ci/linux-prepare.sh
index 37e8d4250..e0c528479 100755
--- a/.ci/linux-prepare.sh
+++ b/.ci/linux-prepare.sh
@@ -12,4 +12,10 @@ set -ev
 git clone git://git.kernel.org/pub/scm/devel/sparse/sparse.git
 cd sparse && make -j4 HAVE_LLVM= HAVE_SQLITE= install && cd ..
 
-pip3 install --disable-pip-version-check --user flake8 hacking sphinx pyOpenSSL
+# Installing wheel separately because it may be needed to build some
+# of the packages during dependency backtracking and pip >= 22.0 will
+# abort backtracking on build failures:
+#     https://github.com/pypa/pip/issues/10655
+pip3 install --disable-pip-version-check --user wheel
+pip3 install --disable-pip-version-check --user \
+    flake8 'hacking>=3.0' sphinx setuptools pyelftools pyOpenSSL
-- 
2.36.1

_______________________________________________
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to