From cd639e5502ea0addc51bf566f6aacdbb2f745f3c Mon Sep 17 00:00:00 2001 From: Dmitrii Anoshin Date: Wed, 3 Jul 2024 08:12:02 -0700 Subject: [PATCH] [chore] Add for-all make target (#10522) Same as we have in contrib. Sometimes it's helpful to run a specific command in all modules not just a make target. For example, `CMD="go mod edit -replace go.opentelemetry.io/otel/sdk/metric=../opentelemetry-go/sdk/metric" make for-all` to debug go library issues. --- Makefile | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/Makefile b/Makefile index 60ee82a7681..e05b32e5309 100644 --- a/Makefile +++ b/Makefile @@ -60,6 +60,16 @@ gotest-with-cover: goporto: $(PORTO) $(PORTO) -w --include-internal --skip-dirs "^cmd/mdatagen/third_party$$" ./ +.PHONY: for-all +for-all: + @echo "running $${CMD} in root" + @$${CMD} + @set -e; for dir in $(GOMODULES); do \ + (cd "$${dir}" && \ + echo "running $${CMD} in $${dir}" && \ + $${CMD} ); \ + done + .PHONY: golint golint: @$(MAKE) for-all-target TARGET="lint"