Create one stop page showing information about our CI/CD
Is your feature request related to a problem? Please describe. As a user I want to know what is the quality of the project.
Describe the solution you'd like I want to have a wepage that collects information about our CI/CD pipeline.
- What tests and what amount of them are running
- How long does it take to run our pipelines
- How many failures we have there
- What is our coverage
Describe alternatives you've considered Just showing the information about tests in the sonarcloud, but it's not good enough.
Tasks
- [ ] Verify the usage of the Github Pages to publish the information
- [ ] Show the amount of unit tests
- [ ] Show the amount of integration tests
- [ ] Show the amount of end 2 end tests
- [ ] Show the time it takes to run the pipelines
- [ ] Show the amount of failures in the pipeline
Github pages has a few concerns:
- There is a limit of ~10 builds per hour - if we were to update github pages with every GHA run this would be a small limit
- GITHUB_TOKEN requests have a limit of 1,000 per hour - I think this could be surprisingly few, especially if we are making quite a few API requests to get workflow information.
- User to server requests (e.g. PAT, user/pass auth) have a limit of 5,000 per hour - this is more comfortable than GITHUB_TOKEN
We could use github pages but scope it only to certain branch statuses. Another option could be creating a browser extension that would display this information, bypassing the build limitations. The request limits will always be a problem unfortunately.
That's a good point. My original idea was that we would update the data maybe nightly and not for every run. This could resolve the issue with the updates of the github pages.
As for the requests, you are right that it may be too much.