From 84146924c1dbc5c3f868bdfb8b2580d335e8c9f5 Mon Sep 17 00:00:00 2001 From: npc0-hue Date: Wed, 26 Aug 2026 09:00:28 +0800 Subject: [PATCH] fix: locate run module before build --- platform/service/distribution_builder.go | 12 +++++++++--- platform/service/distribution_builder_test.go | 2 +- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/platform/service/distribution_builder.go b/platform/service/distribution_builder.go index 06d3032..824b24c 100644 --- a/platform/service/distribution_builder.go +++ b/platform/service/distribution_builder.go @@ -484,15 +484,21 @@ if [ "$COMPONENT_KIND" = "run" ]; then rm -rf /workspace/build/run-source mkdir -p /workspace/build/run-source find /workspace/source -mindepth 1 -maxdepth 1 ! -name pax_global_header -exec cp -R {} /workspace/build/run-source/ \; + run_command_dir="$(find /workspace/build/run-source -type d -path '*/cmd/run' -print -quit)" + run_module_dir="${run_command_dir%/cmd/run}" + if [ -z "$run_command_dir" ] || [ ! -f "$run_module_dir/go.mod" ]; then + printf 'Run source snapshot must contain a Go module with cmd/run\n' >&2 + exit 2 + fi progress 34 'env_check: injecting run build metadata' seed_b64="$(base64 /workspace/input/workspace-seed.json | tr -d '\n')" - mkdir -p /workspace/build/run-source/config - cat > /workspace/build/run-source/config/workspace_seed_generated.go < "$run_module_dir/config/workspace_seed_generated.go" <= bytes.Index(script, []byte(ordered[1])) { t.Fatalf("Run build script must prepare source before injecting config and compiling: %q before %q", ordered[0], ordered[1]) }