grpc: Test failures possibly due to use of legacy TLS with PyPI

Two recent test executions (1, 2) failed and the message “Brownout of Legacy TLS” appeared several times in their logs. This is somewhat expected, especially if our tests ran in the first ten minutes of an hour.

I suspect we need to upgrade… something, but I’m not yet sure what. Something in the continuous integration infrastructure? pip?

About this issue

  • Original URL
  • State: closed
  • Created 6 years ago
  • Comments: 22 (22 by maintainers)

Commits related to this issue

Most upvoted comments

Reopening because seeing

+ /Volumes/BuildData/tmpfs/src/github/grpc/workspace_python_macos_opt_native/py34_native/bin/python3.4 -m pip install --upgrade pip==9.0.2
Collecting pip==9.0.2
  Could not fetch URL https://pypi.python.org/simple/pip/: There was a problem confirming the ssl certificate: [SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version (_ssl.c:600) - skipping
  Could not find a version that satisfies the requirement pip==9.0.2 (from versions: )
No matching distribution found for pip==9.0.2
You are using pip version 9.0.1, however version 9.0.3 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
2018-04-12 09:07:51,382 FAILED: /Volumes/BuildData/tmpfs/src/github/grpc/workspace_python_macos_opt_native/tools/run_tests/helper_scripts/build_python.sh [ret=1, pid=80593, time=3.4sec]
2018-04-12 09:07:51,388 FAILED: Some tests failed
2018-04-12 09:07:51,420 FAILED: run_tests_python_macos_opt_native [ret=1, pid=69434, time=429.4sec]

which is the same issue but failing one step earlier.

Okay, pinning to 9.0.2 works, but not 9.0.3 (I’m guessing this is a pip issue). It’s fine though because the fix we need is in 9.0.2. I’ll merge the PR that unpins and open another PR to pin to 9.0.2; I want to get the release blocker in sooner rather than later.

@matt-kwong: dependency-pinning is a practice I brought with me from my previous project after too many experiences seeing my own build break because someone elsewhere on the Internet did something bad. With pinning the decision to break my build remains with someone elsewhere on the Internet, but the timing of breaking my build falls to me and my decision to move my pin, so it’s not a perfect system but it is an improvement. 😃

I might have a fix. I tried upgrading pip in our macOS setup script, but that originally didn’t work. I didn’t realize in build_python.sh that pip was being downgraded to 9.0.1 after I upgraded pip. I’m going to test changing that pin to 9.0.3 and see if that fixes the issue.