diff --git a/.buildkite/pipelines/build_pr_and_deploy_cloud.yml b/.buildkite/pipelines/build_pr_and_deploy_cloud.yml index a9cf30089078f..ab01ebd57c7eb 100644 --- a/.buildkite/pipelines/build_pr_and_deploy_cloud.yml +++ b/.buildkite/pipelines/build_pr_and_deploy_cloud.yml @@ -59,9 +59,10 @@ steps: provider: gcp image: family/kibana-ubuntu-2404 imageProject: elastic-images-prod - machineType: n2-standard-8 - preemptible: true diskSizeGb: 125 + machineType: c4d-standard-16 + diskType: hyperdisk-balanced + zones: us-central1-a,us-central1-b,us-central1-c if: "build.env('KIBANA_BUILD_ID') == null || build.env('KIBANA_BUILD_ID') == ''" timeout_in_minutes: 90 key: build @@ -76,8 +77,9 @@ steps: provider: gcp image: family/kibana-ubuntu-2404 imageProject: elastic-images-prod - machineType: n2-standard-2 + machineType: c2-standard-16 preemptible: true + diskSizeGb: 150 timeout_in_minutes: 30 depends_on: build retry: diff --git a/src/dev/build/tasks/os_packages/docker_generator/run.ts b/src/dev/build/tasks/os_packages/docker_generator/run.ts index 1cc43f8db0be4..ee292fabc070a 100644 --- a/src/dev/build/tasks/os_packages/docker_generator/run.ts +++ b/src/dev/build/tasks/os_packages/docker_generator/run.ts @@ -52,7 +52,7 @@ export async function runDockerGenerator( */ if (flags.baseImage === 'wolfi') baseImageName = - 'docker.elastic.co/wolfi/chainguard-base:latest@sha256:568df5fb0e237c3a2139399d4bd8e80994f24321fa8469aec565b8566704e83a'; + 'docker.elastic.co/wolfi/chainguard-base:latest@sha256:b2134dbfbcfb987eec9c249fc81111963de596ff76098775c2444a2869401d9c'; let imageFlavor = ''; if (flags.baseImage === 'wolfi' && !flags.serverless && !flags.cloud) imageFlavor += `-wolfi`; diff --git a/src/dev/build/tasks/os_packages/docker_generator/templates/base/Dockerfile b/src/dev/build/tasks/os_packages/docker_generator/templates/base/Dockerfile index 91054d10d0a7d..897902040c315 100644 --- a/src/dev/build/tasks/os_packages/docker_generator/templates/base/Dockerfile +++ b/src/dev/build/tasks/os_packages/docker_generator/templates/base/Dockerfile @@ -92,8 +92,15 @@ RUN microdnf install --setopt=tsflags=nodocs -y \ microdnf clean all {{/ubi}} {{#wolfi}} -# TODO: Remove pinned shadow version once Wolfi image is updated. Newer releases of shadow require glibc 2.43 which is not available in the current image SHA. -RUN apk --no-cache add bash curl fontconfig font-liberation libstdc++ libnss findutils shadow=4.19.3-r0 ca-certificates +# Wolfi updated glibc from 2.42 to 2.43, which changed memory allocation behavior. This flag disables the new behavior. +ENV GLIBC_TUNABLES=glibc.malloc.hugetlb=0 + +RUN for iter in 1 2 3 4 5; do \ + apk --no-cache add bash curl fontconfig font-liberation libstdc++ libnss findutils shadow ca-certificates{{#serverless}} libjemalloc2 mimalloc2{{/serverless}} && break; \ + echo "apk add failed (attempt $iter/5), retrying in $((iter * 10))s..."; \ + sleep $((iter * 10)); \ + [ $iter -eq 5 ] && exit 1; \ + done {{/wolfi}} # Bring in Kibana from the initial stage.