bharos opened a new pull request, #13639:
URL: https://github.com/apache/gravitino/pull/13639

   ### What changes were proposed in this pull request?
   
   Four workflows fetch `libssl1.1` from a single hardcoded mirror with no 
retry and no fallback:
   
   ```
   wget 
https://nz2.archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_amd64.deb
   ```
   
   They now retry, try more than one mirror, and fail with a clear message if 
none respond:
   
   ```bash
   deb=libssl1.1_1.1.1f-1ubuntu2_amd64.deb
   for host in archive.ubuntu.com nz2.archive.ubuntu.com security.ubuntu.com; do
     wget --tries=3 --timeout=30 
"https://$host/ubuntu/pool/main/o/openssl/$deb"; && break
   done
   [ -f "$deb" ] || { echo "Could not download $deb from any mirror" >&2; exit 
1; }
   sudo dpkg -i "$deb"
   ```
   
   Affected: `build.yml`, `backend-integration-test-action.yml`, 
`contrib-catalog-test.yml`, `iceberg-rest-trino-integration-test-action.yml`.
   
   ### Why are the changes needed?
   
   Part of #13637
   
   When that one mirror is unreachable, `wget` hangs and the job fails during 
setup, before any Gravitino code runs. It looks like a test failure at a 
glance, and because all four workflows use the same mirror it reddens every 
branch at once. This was seen on `branch-1.3` and `main` within twenty minutes 
of each other while preparing 1.3.1.
   
   ### Does this PR introduce any user-facing change?
   
   No. CI only.
   
   ### How was this patch tested?
   
   All four files still parse as YAML.
   
   The three mirrors were checked and each serves the file (HTTP 200). The 
logic was run directly:
   
   | case | result |
   |---|---|
   | first mirror unreachable, second good | falls through, downloads, step 
succeeds |
   | all mirrors unreachable | fails with `Could not download ... from any 
mirror` |
   
   The second case matters because without the guard the step would instead 
fail inside `dpkg` on a missing file, which is harder to read.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to