-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[summary] Make PR comment pretty #2946
Conversation
This stack of pull requests is managed by Graphite. Learn more about stacking. |
ebea4ad
to
205372f
Compare
Performance Summary for commit 1cb21b6CI Runtime ComparisonWorkflow: Rust
|
02c067b
to
f4d0da9
Compare
Performance Summary for commit 1cb21b6CI Runtime ComparisonWorkflow: Rust
|
f4d0da9
to
05bd4fd
Compare
Performance Summary for commit 1cb21b6CI Runtime ComparisonWorkflow: Rust
|
05bd4fd
to
324dd57
Compare
fceadb0
to
1870f37
Compare
324dd57
to
96d32d0
Compare
1870f37
to
a988c06
Compare
1599423
to
79ac932
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The summaries are looking really good!
} | ||
|
||
// The key is the name of the workflow, and the value is a list of per job comparisons. | ||
#[derive(Serialize)] | ||
pub struct CiRuntimeComparison(HashMap<WorkflowName, Vec<WorkflowJobRuntimeComparison>>); | ||
pub struct CiRuntimeComparison(pub HashMap<WorkflowName, Vec<WorkflowJobRuntimeComparison>>); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Optional idea: we could sort the workflow results by name (will probably require updates to the import and to the collect
below).
pub struct CiRuntimeComparison(pub HashMap<WorkflowName, Vec<WorkflowJobRuntimeComparison>>); | |
pub struct CiRuntimeComparison(pub BTreeMap<WorkflowName, Vec<WorkflowJobRuntimeComparison>>); |
## Motivation It would be nice to see CI runtime regressions or improvements in the PRs. ## Proposal Create Rust CLI tool that checks runtimes, compares against base ref, and comments on the PR with a summary of the changes. This works, but as you guys can see it's pretty ugly for now, we're just posting the JSON 😅 We're also commenting for every successful workflow run in CI. The PR is already pretty big so I will do the following follow ups: - [x] Markdown format this in a pretty way (done in #2946) - [x] Add the performance summary markdown as a [job summary](https://github.blog/news-insights/product-news/supercharging-github-actions-with-job-summaries/) of the job, so people have access to historical versions of this (done in #2948) - [x] Find if there's already a performance summary comment, and edit it instead of always posting a new one (done in #2953) - [ ] Might make sense to only post if the change exceeds some percentage threshold for now. Open to suggestions Other follow ups are tracked in the issue for this: #2834 ## Test Plan Triggered a modified version of this manually with workflow dispatch, it works, but we can unfortunately only know for sure this works by merging :/ ## Release Plan - Nothing to do / These changes follow the usual release cycle.
d4718b5
to
666a16b
Compare
Motivation
Right now we're only commenting the JSON of the results, we can probably do better
Proposal
Comment a formatted Markdown of the results
Test Plan
Since #2936 is not merged yet, I have to test this in the same way I tested #2936
Release Plan