This patch pins urllib3~=1.26.15 in logs-deploy.sh script to fix
S3 upload timeout errors. Jobs were failing with
"urllib3.exceptions.ReadTimeoutError" and
"botocore.exceptions.ReadTimeoutError" when uploading large log
files to S3.
The error occurs because newer urllib3 versions (>=2.0.0) have
incompatible timeout handling with boto3/botocore used for
S3 uploads. This change makes logs-deploy.sh consistent with
other scripts in global-jjb that already pin urllib3 to v1.26.15.
Error:
TimeoutError: _ssl.c:989: The handshake operation timed out
urllib3.exceptions.ReadTimeoutError: AWSHTTPSConnectionPool(host='
odl-logs-s3-cloudfront-index.s3.us-west-1.amazonaws.com', port=443):
Read timed out. (read timeout=60) botocore.exceptions.ReadTimeoutErr:
Read timeout on endpoint URL: "https://odl-logs-s3-cloudfront-
index.s3.us-west-1.amazonaws.com/logs/releng/vex-yul-odl-jenkins-1/
controller-maven-verify-master-mvn39-openjdk21/3193/
_build-details.log.gz"
Issue: IT-28722
Change-Id: Iaf5818063d645994c4aa1b1f002e53ef2661d418
Signed-off-by: Anil Belur <abelur@linuxfoundation.org>
--- /dev/null
+---
+fixes:
+ - |
+ Pin urllib3~=1.26.15 in logs-deploy.sh script. This fixes S3 upload timeout errors
+ where the connection was timing out with "urllib3.exceptions.ReadTimeoutError" and
+ "botocore.exceptions.ReadTimeoutError" when uploading large log files to S3.
+
+ The error occurs because newer urllib3 versions have incompatible timeout handling
+ with boto3/botocore used for S3 uploads. This change makes logs-deploy.sh
+ consistent with other scripts in global-jjb that already pin urllib3 to version 1.26.15.
# shellcheck disable=SC1090
source ~/lf-env.sh
-lf-activate-venv --python python3.8 lftools
+lf-activate-venv --python python3.8 lftools urllib3~=1.26.15
# Ensure we fail the job if any steps fail
# Disable 'globbing'