From 9f4a509fb8f68850262b3f937eb9926bd257b146 Mon Sep 17 00:00:00 2001 From: Michael Pratt Date: Wed, 8 Jan 2025 13:13:14 +0000 Subject: [PATCH] gopls/internal/telemetry/cmd/stacks: add dry run flag This flag avoids updating existing issues. It still requires a GitHub auth token to determine which issues would get updated. It also still opens a browser window for new issues. For golang/go#71045. Change-Id: I6a6a636c26a402c9ea66160e14cd388b490b74b9 Reviewed-on: https://go-review.googlesource.com/c/tools/+/642421 Auto-Submit: Michael Pratt LUCI-TryBot-Result: Go LUCI Reviewed-by: Alan Donovan --- gopls/internal/telemetry/cmd/stacks/stacks.go | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/gopls/internal/telemetry/cmd/stacks/stacks.go b/gopls/internal/telemetry/cmd/stacks/stacks.go index 75e67b7bd84..b14edc3f757 100644 --- a/gopls/internal/telemetry/cmd/stacks/stacks.go +++ b/gopls/internal/telemetry/cmd/stacks/stacks.go @@ -94,6 +94,8 @@ var ( daysFlag = flag.Int("days", 7, "number of previous days of telemetry data to read") + dryRun = flag.Bool("n", false, "dry run, avoid updating issues") + authToken string // mandatory GitHub authentication token (for R/W issues access) ) @@ -559,6 +561,12 @@ func updateIssues(issues []*Issue, stacks map[string]map[Info]int64, stackToURL newStackIDs = append(newStackIDs, id) writeStackComment(comment, stack, id, stackToURL[stack], stacks[stack]) } + + if *dryRun { + log.Printf("DRY RUN: would add stacks %s to issue #%d", newStackIDs, issue.Number) + continue + } + if err := addIssueComment(issue.Number, comment.String()); err != nil { log.Println(err) continue