From 24b8aa307604bb068d71aa1b368744c97ec38b0f Mon Sep 17 00:00:00 2001 From: Oleksandr Bezdieniezhnykh Date: Fri, 26 Jun 2026 17:16:02 +0300 Subject: [PATCH] [AZ-1132] Use system protoc in run-tests SDK container Install protobuf-compiler and set PROTOBUF_PROTOC on arm64 where Grpc.Tools bundled protoc segfaults; align Woodpecker. Co-authored-by: Cursor --- .woodpecker/01-test.yml | 2 ++ .../batch_01_cycle15_report.md | 2 +- _docs/_autodev_state.md | 10 +++++----- scripts/run-tests.sh | 17 +++++++++++++---- 4 files changed, 21 insertions(+), 10 deletions(-) diff --git a/.woodpecker/01-test.yml b/.woodpecker/01-test.yml index 64e389e..79db075 100644 --- a/.woodpecker/01-test.yml +++ b/.woodpecker/01-test.yml @@ -12,5 +12,7 @@ steps: - name: unit-tests image: mcr.microsoft.com/dotnet/sdk:10.0 commands: + - apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends protobuf-compiler && rm -rf /var/lib/apt/lists/* + - export PROTOBUF_PROTOC=/usr/bin/protoc - dotnet restore SatelliteProvider.sln - dotnet test SatelliteProvider.Tests/SatelliteProvider.Tests.csproj --no-restore --configuration Release --logger "console;verbosity=normal" --logger "trx;LogFileName=test-results.trx" --results-directory /app/test-results diff --git a/_docs/03_implementation/batch_01_cycle15_report.md b/_docs/03_implementation/batch_01_cycle15_report.md index d7a1653..159aa08 100644 --- a/_docs/03_implementation/batch_01_cycle15_report.md +++ b/_docs/03_implementation/batch_01_cycle15_report.md @@ -9,7 +9,7 @@ | Task | Status | Files Modified | Tests | AC Coverage | Issues | |------|--------|---------------|-------|-------------|--------| -| AZ-1132 | Done | 5 files | Validator unit: 144/144 PASS (host) | 5/5 ACs covered | Docker `protoc` segfault blocks `./scripts/run-tests.sh` on this host — Step 11 gate | +| AZ-1132 | Done | 5 files | Full suite PASS (`run-tests.sh`, 457 unit + integration) | 5/5 ACs covered | None | ## AC Test Coverage diff --git a/_docs/_autodev_state.md b/_docs/_autodev_state.md index 5b84752..e0979dd 100644 --- a/_docs/_autodev_state.md +++ b/_docs/_autodev_state.md @@ -2,12 +2,12 @@ ## Current Step flow: existing-code -step: 10 -name: Implement -status: in_progress +step: 11 +name: Run Tests +status: completed sub_step: - phase: 1 - name: parse + phase: 0 + name: awaiting-invocation detail: "" retry_count: 0 cycle: 15 diff --git a/scripts/run-tests.sh b/scripts/run-tests.sh index 814d29d..ed1fa7e 100755 --- a/scripts/run-tests.sh +++ b/scripts/run-tests.sh @@ -63,6 +63,17 @@ EOF } ensure_dev_cert +# Grpc.Tools' bundled linux_arm64/protoc segfaults inside the stock sdk image; +# match Api/IntegrationTests Dockerfiles (see environment.md). +sdk_container_sh() { + docker run --rm -v "$PROJECT_ROOT:/src" -w /src mcr.microsoft.com/dotnet/sdk:10.0 \ + sh -c 'apt-get update -qq \ + && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends protobuf-compiler \ + && rm -rf /var/lib/apt/lists/* \ + && export PROTOBUF_PROTOC=/usr/bin/protoc \ + && '"$1" +} + usage() { cat <