This is an automated email from the ASF dual-hosted git repository.
jtuglu1 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/druid.git
The following commit(s) were added to refs/heads/master by this push:
new 6403ab6a98d ci: pre-pull Testcontainers images in worker before unit
tests (#19464) (#19465)
6403ab6a98d is described below
commit 6403ab6a98dbc8ada804e376237489832af34ec1
Author: Shekhar Prasad Rajak <[email protected]>
AuthorDate: Sun May 17 10:47:30 2026 +0530
ci: pre-pull Testcontainers images in worker before unit tests (#19464)
(#19465)
Fixes #19464.
Once the image is in the runner's local Docker daemon cache, KafkaContainer
start in KafkaResource becomes a pure container-spinup (~5-15 s) instead of
pull+spinup (~30-90 s + Docker Hub variance). The 60 s LatchableEmitter wall
now has 4-12× more headroom.
---
.github/workflows/worker.yml | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)
diff --git a/.github/workflows/worker.yml b/.github/workflows/worker.yml
index 404650171ea..dce931cff39 100644
--- a/.github/workflows/worker.yml
+++ b/.github/workflows/worker.yml
@@ -86,6 +86,32 @@ jobs:
echo "HASH=$(echo -n "${{ inputs.key }}" | sha256sum | cut -c-8)" >>
$GITHUB_ENV
./.github/scripts/collect_jvm_diagnostics &
+ - name: Pre-pull Testcontainers images for unit tests
+ if: ${{ contains(inputs.script, 'run_unit-tests') }}
+ run: |
+ set -eu
+ images=(
+ apache/kafka:4.2.0
+ postgres:16-alpine
+ minio/minio:latest
+ hashicorp/consul:1.18
+ tabulario/iceberg-rest:1.6.0
+ localstack/localstack:4.13.1
+ mcr.microsoft.com/azure-storage/azurite:3.35.0
+ osixia/openldap:1.5.0
+ rancher/k3s:v1.35.0-k3s1
+ )
+ for image in "${images[@]}"; do
+ for attempt in 1 2 3; do
+ if docker pull --quiet "$image"; then
+ break
+ fi
+ echo "::warning ::docker pull $image failed (attempt $attempt);
retrying in 10s"
+ sleep 10
+ done
+ done
+ timeout-minutes: 10
+
- name: 'Execute: ${{ inputs.script }}'
run: ${{ inputs.script }}
timeout-minutes: 60
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]