Trace build_provider_cmd phases in bridged Makefile template#2244
Merged
Conversation
build_provider_cmd rendered as a single opaque ;-chained shell command, so a provider build logged one undifferentiated span with no signal for where time went across schema generation, module download, compilation, and linking. Prepend set -x in both template branches so each chained sub-command is traced with a timestamp (language-agnostic; the only change non-Go buildProviderCmd overrides receive). In the default branch, split go mod download into its own statement and add -v to go build so the module-fetch phase is distinct and per-package compilation is observable. The rendered value still collapses to a single sh -c invocation with the same ;/&& joins as before (cosmetic multi-line via backslash continuations). Error semantics are preserved: the final command still determines the recipe exit status, exactly as the previous single-line form. Part of #2218 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
99478a0 to
2d7f96e
Compare
There was a problem hiding this comment.
No actionable issues found.
Reviewed by Internal Trusted PR Reviewer
To install this agentic workflow, run
gh aw add pulumi-labs/gh-aw-internal/.github/workflows/gh-aw-pr-review.md@8a92f53fac170563f7727cacab2dbedb5d5b9e29
corymhall
approved these changes
May 18, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
build_provider_cmdrendered as a single opaque;-chained shell command, so a provider build logged one undifferentiated span with no signal for where time went across schema generation, module download, compilation, and linking.This makes each phase observable in the job log:
set -xis prepended in both template branches, so every chained sub-command is traced with a timestamp. Language-agnostic; this is the only change non-GobuildProviderCmdoverrides (e.g.eks,pulumiservice) receive.go mod downloadinto its own statement and adds-vtogo build, so the module-fetch phase is distinct and per-package compilation is observable.The rendered value still collapses to a single
sh -cinvocation with the same;/&&joins as before — cosmetic multi-line via backslash continuations only. Error semantics are preserved: the final command still determines the recipe exit status, exactly as the previous single-line form (verified withmake -n).Scope is the
baseMakefile template plus the six bridged provider Makefiles that consume it (aws, cloudflare, docker, eks, pulumiservice, xyz). No native providers, workflows, or.ci-mgmt.yamltouched.make allpasses locally: build, Go tests, deterministic regeneration of all 15 test providers, and actionlint.What this enables
The downstream goal is to turn that opaque build span into a readable phase breakdown:
Part of #2218