Details
-
Sub-task
-
Status: Resolved
-
P1
-
Resolution: Fixed
-
None
Description
PyPI sometimes fails when it cannot find dependencies. This happens even when dependencies exist.
Example: https://builds.apache.org/job/beam_PostCommit_Python2/433/consoleFull
Log:
05:00:54 Collecting filelock<4,>=3.0.0 (from tox==3.11.1)
05:00:54 ERROR: Could not find a version that satisfies the requirement filelock<4,>=3.0.0 (from tox==3.11.1) (from versions: none)
05:00:54 ERROR: No matching distribution found for filelock<4,>=3.0.0 (from tox==3.11.1)
05:00:57
05:00:57 > Task :sdks:python:setupVirtualenv FAILED
There was a previous attempt to fix this (https://github.com/apache/beam/pull/7519/files) by adding `--retries 10` to the pip command. However, this only works with connections (https://pip.pypa.io/en/stable/reference/pip/#cmdoption-retries) and I am guessing that when pip decides that a dependency does not exist it requires more than a network retry.
We could try a gradle task level retry, or wrap the virtualenv creation in a shell script and try do a retry on that.