Display the total shared runner execution time / CI minutes consumed per pipeline on the pipeline details page
Problem
As a GitLab user running pipelines, it's hard to understand how many CI Minutes a pipeline takes, so I can budget my usage / CI Minutes smartly.
Use Case
As part of #337245 (closed) the shared runner CI cost factor has been changed for public projects. Previously users could run almost unlimited CI pipelines, but now they are understandably subject to limits. The Usage quotas
page gives a decent summary of usage per month for both groups and user accounts, however, this information is post-consumption, and it only reports the overall CI minute consumption and shared runner runtime. In order to better identify where CI minutes are being consumed, it would be useful to show consumption information against each individual pipeline that is run.
Currently if you look at the summary page for a single pipeline https://gitlab.com/$NAMESPACE/$REPO/-/pipelines/$PIPELINE_ID
you will see a summary line
- "19 jobs for ci-mr-based in 10 minutes and 46 seconds (queued for 1 second)"
This is giving the overall wallclock time for the pipeline as a whole, which is useful in general, but doesn't help a contributor understand CI quota usage. If they look into the jobs page https://gitlab.com/$NAMESPACE/$REPO/-/pipelines/$PIPELINE_ID
they can see the wall clock time for each individual job. If they sum the wall clock time for each job they can calculate the total shared runner execution time, though it is important to exclude jobs that used private runners of course. Once they've summed each job, they can apply the cost factor to figure out CI usage. This is unnecessarily obscure though, given the importance of users being watchful of their very limited CI quota. A further complication is that the cost factor may change over time. eg if a upstream project joins or leaves the GitLab open source program, this affects cost of pipelines forks. So you might have some historical pipelines at one cost factor, and some at another cost factor.
I would thus like to request that the summary page for a given pipeline provide information about the CI minutes, shared runner duration and cost factor.
- "Jobs ran for 73 minutes and 24 seconds on shared runners with a cost factor of 0.008, consuming 0.5 minutes of CI quota"
Proposal
- On the pipeline details page add a Runner Duration field with total runner time for the pipeline
- Add a tooltip with links to the CI/CD Minute Calculation documentation
This page may contain information related to upcoming products, features and functionality. It is important to note that the information presented is for informational purposes only, so please do not rely on the information for purchasing or planning purposes. Just like with all projects, the items mentioned on the page are subject to change or delay, and the development, release, and timing of any products, features, or functionality remain at the sole discretion of GitLab Inc.