From cab0389bc176396556349094b4976a0935a8d54c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Gronowski?= Date: Fri, 23 Oct 2026 13:28:27 +0200 Subject: [PATCH] ci: Check that the Moby daemon starts with extensions MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The moby-integration job only ran the extension integration tests, which manage their own daemons. A dockerd that failed to start with its default settings could go unnoticed. Signed-off-by: Paweł Gronowski --- .github/workflows/ci.yml | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index cf8685e..42a009f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -127,6 +127,34 @@ jobs: set: | dev.cache-from=type=gha,scope=moby-dev-amd64 dev.cache-to=type=gha,scope=moby-dev-amd64,mode=max + - + name: Check Moby daemon starts + working-directory: moby + run: | + docker run --rm --privileged \ + -v "${PWD}:/usr/src/moby" \ + -v docker-dev-cache:/root/.cache \ + -v docker-mod-cache:/go/pkg/mod/ \ + docker-dev bash -euo pipefail -c ' + hack/make.sh dynbinary + export PATH="${PWD}/bundles/dynbinary-daemon:${PATH}" + log=bundles/dockerd-smoke.log + dockerd --debug >"$log" 2>&1 & + pid=$! + trap '\''status=$?; kill "$pid" 2>/dev/null || true; wait "$pid" || true; if [ "$status" -ne 0 ]; then cat "$log"; fi'\'' EXIT + for _ in $(seq 60); do + if docker version >/dev/null 2>&1; then + break + fi + if ! kill -0 "$pid" 2>/dev/null; then + echo "::error::dockerd exited during startup" + exit 1 + fi + sleep 1 + done + docker version + docker info + ' - name: Run Moby extension integration tests working-directory: moby