feat(scripts): colored, repo-labeled logging in update scripts#4
Merged
Conversation
Output from parallel cargo_update_all runs is now buffered per repo and replayed in labeled blocks, so it's always clear which downstream project a given log line (or PR URL) belongs to. cargo_update.sh tags every line with a [repo] prefix via REPO_LABEL and surfaces the PR URL with the repo name.
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
cargo_update_all.sh: buffers each parallel job's output to its own log file and replays it in a labeled▶ repo-nameblock, so concurrent runs no longer interleave and every line is attributable.cargo_update.sh: tags every log line with[<repo>]via a newREPO_LABELenv var and surfaces the detected PR URL alongside the repo name.NO_COLORis set.Motivation: when running
update_all, output from multiple downstream repos was indistinguishable — including the final "Opening PR: ..." line — making it hard to tell which project a PR belonged to.Test plan
bash scripts/cargo_update_all.sh(dry run) and confirm the plan + per-repo blocks renderbash scripts/cargo_update_all.sh --executeand confirm PR URLs are tagged with repo namesNO_COLOR=1and confirm output is plain