-
-
Notifications
You must be signed in to change notification settings - Fork 395
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
Lighthouse metrics report in CI #8630
Lighthouse metrics report in CI #8630
Conversation
1251f6c
to
c2f9216
Compare
7c6aa8b
to
6e4da4b
Compare
@andreslucena this is a first implementation, I'd love your feedback here. |
This is a great first step indeed!! 😍 The hard problem of "running Lighthouse against the current branch" is done, congratulations 😄 The only doubts that I have are mostly about the Acceptance Criteria and the methodology for the rest of the Epic (#8495). It seems like I obviously skipped some things when writing them. Just making a brain dump, so we can later make a decision about the best course of action:
Maybe in |
Thanks @andreslucena About (1), yes, it's a bit killer 🗡️ to have historical metrics of the last 90 days. I propose to skip that AC item About (2), I like your proposal, I think we can do it in that way. I have activated the assertions following the metrics you proposed in the other issues and we have a red check |
d792c63
to
adf1123
Compare
@andreslucena I've changed the base of the PR, in case you want to review and merge. |
adf1123
to
db346f7
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.
I think in this case, we can drop some comments that are unnecessary. How do you see it?
While seeing the doc for the action that we're using, I found out this: https://github.com/GoogleChrome/lighthouse-ci But I agree that at the moment this is overkill, maybe in the future with the Decidim Association if we have time and see it necessary we could install it in our servers.
Awesome 👏🏽 👏🏽 |
Co-authored-by: Andrés Pereira de Lucena <andreslucena@users.noreply.github.com>
Co-authored-by: Andrés Pereira de Lucena <andreslucena@users.noreply.github.com>
Co-authored-by: Andrés Pereira de Lucena <andreslucena@users.noreply.github.com>
Co-authored-by: Andrés Pereira de Lucena <andreslucena@users.noreply.github.com>
Co-authored-by: Andrés Pereira de Lucena <andreslucena@users.noreply.github.com>
Co-authored-by: Andrés Pereira de Lucena <andreslucena@users.noreply.github.com>
Co-authored-by: Andrés Pereira de Lucena <andreslucena@users.noreply.github.com>
Co-authored-by: Andrés Pereira de Lucena <andreslucena@users.noreply.github.com>
@ferblape I'm working in the AC's, as I've mentioned in my comments. While reviewing that, I think I found a bug with the current implementation. I think the From the budget:
From the CI log, only 2 failing checks:
But going to the report: I see that "Speed Index" has a value of 4.2 s. It should be a failing check, right? The rest of the pages/budgets seem OK, this is the only that I see that seems like an error (on not showing the error). |
As talked in the last meeting, what we'll finally do:
|
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.
A few changes to reflect what we've talked today. Also, can you change the base branch to develop
🙏🏽 ?
Co-authored-by: Andrés Pereira de Lucena <andreslucena@users.noreply.github.com>
Co-authored-by: Andrés Pereira de Lucena <andreslucena@users.noreply.github.com>
Co-authored-by: Andrés Pereira de Lucena <andreslucena@users.noreply.github.com>
Co-authored-by: Andrés Pereira de Lucena <andreslucena@users.noreply.github.com>
@andreslucena suggestions commited, now the performance check is passing |
🎩 What? Why?
This PR setups a new workflow in Github Actions CI to run a Lighthouse report against:
In order to run the report in a controlled environment, the report is executed in a rails server running on the same Github Action. This server executes a development app with seeds.
Because seeds are random, a Rake task has been included to add dynamically the urls to lighthouse configuration file.
About the reports
There are two ways to check the reports:
About the performance
The report numbers are worse that in a production application running in a optimized hardware (such as Heroku or Linode), but I think it's useful to set a baseline.
Based on these numbers we could create some expectations and make the Github Action check to fail if the performance has been downgraded.
📌 Related Issues
Acceptance criteria
When I go to GitHub Actions tab in GH,
Then I have a Lighthouse check.
Testing
Just review the results of the Github Action and check the reports.
📋 Checklist
🚨 Please review the guidelines for contributing to this repository.
docs/
.📷 Screenshots
Please add screenshots of the changes you're proposing