diff --git a/.github/workflows/ci-cd.yml b/.github/workflows/ci-cd.yml index 280d6d8b940..1c283b68619 100644 --- a/.github/workflows/ci-cd.yml +++ b/.github/workflows/ci-cd.yml @@ -498,7 +498,7 @@ jobs: if: >- needs.pre-setup.outputs.upstream-repository-id == github.repository_id runs-on: ubuntu-latest - timeout-minutes: 15 + timeout-minutes: 30 steps: - name: Checkout project uses: actions/checkout@v7 # despite sdist, codspeed needs Git @@ -538,6 +538,25 @@ jobs: lsb_release -a uname -r openssl version -a + - name: Install libc6-dbg + # The CodSpeed runner installs this itself with a plain apt-get call + # that has no timeout, so a slow apt mirror hangs the job until + # timeout-minutes kills it. Installing it here with a bounded retry + # also lets the runner find it already present after restoring + # valgrind from its cache and skip apt entirely. + run: | + for attempt in 1 2 3; do + if timeout 300 sudo apt-get update \ + && timeout 300 sudo DEBIAN_FRONTEND=noninteractive \ + apt-get install -y libc6-dbg + then + exit 0 + fi + echo "apt-get attempt ${attempt} failed, retrying" + sudo dpkg --configure -a || true + sleep 10 + done + exit 1 - name: Run benchmarks uses: CodSpeedHQ/action@v5.0.3 with: diff --git a/CHANGES/13489.contrib.rst b/CHANGES/13489.contrib.rst new file mode 100644 index 00000000000..9293dd92e5d --- /dev/null +++ b/CHANGES/13489.contrib.rst @@ -0,0 +1,3 @@ +Stopped the benchmark CI job from hanging in the CodSpeed runner's apt +install by installing ``libc6-dbg`` up front with a bounded retry, and raised +the job timeout from 15 to 30 minutes -- by :user:`bdraco`.