From cb9ef067c95ce3dd016d332e6c04d8bc4c53629a Mon Sep 17 00:00:00 2001 From: Antoine Toussaint Date: Fri, 11 Sep 2026 14:26:48 -0400 Subject: [PATCH] fix: advertise Buildx execution support for recipe clients (#60) --- recipe_test.go | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/recipe_test.go b/recipe_test.go index b88345b..eecda36 100644 --- a/recipe_test.go +++ b/recipe_test.go @@ -66,13 +66,21 @@ func loadedBuilder(t *testing.T) (*gobuilder.Builder, context.Context) { // DockerBuildPlan that re-verifies against the on-disk tree. func TestBuildEmitsRecipePlan(t *testing.T) { b, ctx := loadedBuilder(t) + client := grpcBuilderClient(t, b) + capabilities, err := client.BuildCapabilities(ctx, &builderv0.BuildCapabilitiesRequest{}) + if err != nil { + t.Fatal(err) + } + if !capabilities.GetBuildxSelection() { + t.Fatal("recipe producer must support caller-owned Buildx selection") + } out := filepath.Join(t.TempDir(), "recipe") - resp, err := b.Build(ctx, &builderv0.BuildRequest{ + resp, err := client.Build(ctx, &builderv0.BuildRequest{ OutputDirectory: out, BuildContext: &builderv0.BuildContext{ Kind: &builderv0.BuildContext_DockerBuildContext{ - DockerBuildContext: &builderv0.DockerBuildContext{DockerRepository: "registry.example.com"}, + DockerBuildContext: &builderv0.DockerBuildContext{DockerRepository: "registry.example.com", BuildxBuilder: "recipe-only-no-such-builder", Cache: &builderv0.BuildCacheOptions{Backend: "registry", Scope: "test/service", Imports: []string{"registry.example.com/cache"}}}, }, }, })