From 3319ee3cdcbab697d09e62ed858f4b3d63058d2b Mon Sep 17 00:00:00 2001 From: AzureFunctionsJava Date: Thu, 13 Aug 2026 16:14:50 -0500 Subject: [PATCH 1/2] ci: try 1es-ubuntu-24.04-min for Linux jobs instead of disk cleanup EXPERIMENT (do not merge as-is). The 1es-ubuntu-22.04 image boots ~92% full on /, which forced the 'Free up disk space' rm -rf/prune steps added in #883. Try the leaner 1es-ubuntu-24.04-min image instead and drop the cleanup, keeping a df/du report so we can see the new baseline headroom. --- eng/ci/templates/jobs/run-docker-tests-linux.yml | 14 +++++--------- .../templates/jobs/run-emulated-tests-linux.yml | 15 ++++----------- 2 files changed, 9 insertions(+), 20 deletions(-) diff --git a/eng/ci/templates/jobs/run-docker-tests-linux.yml b/eng/ci/templates/jobs/run-docker-tests-linux.yml index 44a5bd8e..23b1bc43 100644 --- a/eng/ci/templates/jobs/run-docker-tests-linux.yml +++ b/eng/ci/templates/jobs/run-docker-tests-linux.yml @@ -9,7 +9,7 @@ jobs: pool: name: ${{ parameters.poolName }} - image: 1es-ubuntu-22.04 + image: 1es-ubuntu-24.04-min os: linux strategy: @@ -37,15 +37,11 @@ jobs: inputs: artifactsFeeds: upstream-public - bash: | - echo "=== disk BEFORE cleanup ===" + echo "=== disk space (no cleanup: measuring 1es-ubuntu-24.04-min baseline) ===" df -h / - echo "=== freeing space (toolsets this job does not use) ===" - sudo rm -rf /usr/local/lib/android /opt/ghc /usr/local/.ghcup /usr/share/swift \ - /opt/hostedtoolcache/CodeQL /opt/hostedtoolcache/PyPy 2>/dev/null || true - sudo apt-get clean || true - echo "=== disk AFTER cleanup ===" - df -h / - displayName: 'Free up disk space' + echo "=== top consumers on / ===" + sudo du -xh --max-depth=2 / 2>/dev/null | sort -rh | head -20 || true + displayName: 'Report disk space' - bash: | mvn --version diff --git a/eng/ci/templates/jobs/run-emulated-tests-linux.yml b/eng/ci/templates/jobs/run-emulated-tests-linux.yml index edb97da5..e2e4b83f 100644 --- a/eng/ci/templates/jobs/run-emulated-tests-linux.yml +++ b/eng/ci/templates/jobs/run-emulated-tests-linux.yml @@ -9,7 +9,7 @@ jobs: pool: name: ${{ parameters.poolName }} - image: 1es-ubuntu-22.04 + image: 1es-ubuntu-24.04-min os: linux variables: @@ -57,18 +57,11 @@ jobs: inputs: artifactsFeeds: upstream-public - bash: | - echo "=== disk BEFORE cleanup ===" + echo "=== disk space (no cleanup: measuring 1es-ubuntu-24.04-min baseline) ===" df -h / - echo "=== top consumers on / (baseline) ===" + echo "=== top consumers on / ===" sudo du -xh --max-depth=2 / 2>/dev/null | sort -rh | head -20 || true - echo "=== freeing space (toolsets this job does not use) ===" - sudo rm -rf /usr/local/lib/android /opt/ghc /usr/local/.ghcup /usr/share/swift \ - /opt/hostedtoolcache/CodeQL /opt/hostedtoolcache/PyPy 2>/dev/null || true - docker image prune -af || true - sudo apt-get clean || true - echo "=== disk AFTER cleanup ===" - df -h / - displayName: 'Free up disk space' + displayName: 'Report disk space' - task: NuGetToolInstaller@1 inputs: checkLatest: true From 7a2817bed268381dbe7abf52b6ca13839cf770e6 Mon Sep 17 00:00:00 2001 From: AzureFunctionsJava Date: Fri, 14 Aug 2026 15:26:20 -0500 Subject: [PATCH 2/2] ci: probe toolchain on 1es-ubuntu-24.04-min First run died at 'Check Maven is installed' (exit 127) so only the mvn gap is known. Replace the disk-only report with a probe that reports every tool these jobs need (mvn, java/javac, docker + daemon, python3, node/npm, dotnet) plus the tool cache and JDK dirs, so one run reveals the full gap. Always exits 0. --- .../templates/jobs/run-docker-tests-linux.yml | 18 ++++++++++++++---- .../jobs/run-emulated-tests-linux.yml | 18 ++++++++++++++---- 2 files changed, 28 insertions(+), 8 deletions(-) diff --git a/eng/ci/templates/jobs/run-docker-tests-linux.yml b/eng/ci/templates/jobs/run-docker-tests-linux.yml index 23b1bc43..9eb8fef8 100644 --- a/eng/ci/templates/jobs/run-docker-tests-linux.yml +++ b/eng/ci/templates/jobs/run-docker-tests-linux.yml @@ -37,11 +37,21 @@ jobs: inputs: artifactsFeeds: upstream-public - bash: | - echo "=== disk space (no cleanup: measuring 1es-ubuntu-24.04-min baseline) ===" + set +e + echo "=== disk ===" df -h / - echo "=== top consumers on / ===" - sudo du -xh --max-depth=2 / 2>/dev/null | sort -rh | head -20 || true - displayName: 'Report disk space' + echo "=== toolchain ===" + for t in mvn java javac docker python3 node npm dotnet; do + printf '%-10s %s\n' "$t" "$(command -v $t 2>/dev/null || echo MISSING)" + done + echo "=== /opt/hostedtoolcache ===" + ls -1 /opt/hostedtoolcache 2>/dev/null || echo "(absent)" + echo "=== JDKs (/usr/lib/jvm) ===" + ls -1 /usr/lib/jvm 2>/dev/null || echo "(none)" + echo "=== docker daemon ===" + docker info >/dev/null 2>&1 && echo "available" || echo "NOT available" + exit 0 + displayName: 'Probe: disk + toolchain' - bash: | mvn --version diff --git a/eng/ci/templates/jobs/run-emulated-tests-linux.yml b/eng/ci/templates/jobs/run-emulated-tests-linux.yml index e2e4b83f..cddd86f3 100644 --- a/eng/ci/templates/jobs/run-emulated-tests-linux.yml +++ b/eng/ci/templates/jobs/run-emulated-tests-linux.yml @@ -57,11 +57,21 @@ jobs: inputs: artifactsFeeds: upstream-public - bash: | - echo "=== disk space (no cleanup: measuring 1es-ubuntu-24.04-min baseline) ===" + set +e + echo "=== disk ===" df -h / - echo "=== top consumers on / ===" - sudo du -xh --max-depth=2 / 2>/dev/null | sort -rh | head -20 || true - displayName: 'Report disk space' + echo "=== toolchain ===" + for t in mvn java javac docker python3 node npm dotnet; do + printf '%-10s %s\n' "$t" "$(command -v $t 2>/dev/null || echo MISSING)" + done + echo "=== /opt/hostedtoolcache ===" + ls -1 /opt/hostedtoolcache 2>/dev/null || echo "(absent)" + echo "=== JDKs (/usr/lib/jvm) ===" + ls -1 /usr/lib/jvm 2>/dev/null || echo "(none)" + echo "=== docker daemon ===" + docker info >/dev/null 2>&1 && echo "available" || echo "NOT available" + exit 0 + displayName: 'Probe: disk + toolchain' - task: NuGetToolInstaller@1 inputs: checkLatest: true