We’ve (finally) managed to add support for measuring CICD usage across user/organization accounts. When designing it, we put focus on a generic implementation, so we can measure the use of Forgejo Actions and any external CI engine that is connected to the platform (in our case Crow CI) in a single view.
On the technical side this works through a new API endpoint in Forgejo that accepts information about a finished CI job. The effective usage is then added to the resource tracker under the account which triggered the job.
We’ve decided to start with a budget of 2500 minutes per month per account. This is 25% more than what GitHub offers (2000) and ~ 6x more than GitLab (400). In addition, our runners are much faster (see our hardware sheet) and offer up to 7GB of memory. Jobs are tracked using seconds and not rounded up, so a job that ran 45s is tracked as 45 seconds.
The dashboard provides a clear overview of where and when your budget was spent. You’ll notice that it specifically states “Linux” as the OS the jobs ran on. Given the importance of Windows and macOS runners for some projects (certain (binary) build operations can only built on native runners), we are actively researching how we can provide such runners within the platform without breaking the bank. We can’t promise anything right now and we’ll also surely need support from the community for that, but nothing is impossible!
What to do when the quota has been reached?
We don’t have an automatic subscription/tier system (yet), and neither a fixed per runner minute. If you run out of minutes and don’t want to wait until the next month has started, please contact us via mail or a private forum message and we can increase your quota against a “fair” donation.
We will come up with a transparent pricing for additional CI minutes in the near future!
No, you can stay as much anonymous as you like. If you ever want to have higher CI limits through a donation, we’d need at least one linkable information (e.g. a matching email).
Should i be seeing the minutes used if i’m purely using my own runner? Not that i’m anywhere near the limits mind you Wondering that if the minutes used on own runners do not count towards the overall limit, then they could be indicated better or differently as just glancing at the usage page people might think they do indeed count towards the limits.
@philvessey Self-hosted runners should now be excluded and not count against the quota. Let us know in case you’re still seeing a wrong usage increase!
Ok will keep an eye on it. The stats still report the same 13 minutes currently but the runner hasn’t been used since so will monitor to see if it ticks up anymore as runs happen.
Sorry if I’m missing something obvious, but where can we view this dashboard to see our usage? There are no links in the announcement, and I can’t find the graph you described under https://ci.codefloe.com/user/metrics
Yeah we should have either linked the docs section or posted this explicitly, sorry for that!
It’s described in the “Usage Quotas” docs here. You can find the overview in your user resp. org settings page. As it’s a platform wide integration, the CI engine specific metrics (e.g. in Crow) don’t apply.
This looks to be working correctly. Some runners ran overnight for deps updates and the usage minutes hasn’t changed Just wanted to let you know the change is working as expected.
As I plan to switch to this forge, I would like to have a fair usage and be able to know when to increase my donation - thanks a lot for setting this instance up.
You’re right, the last two days are missing. The reason is that there was a runner deployment two days ago which assigned new IDs to the managed runners. The tracking relies on these runner IDs and the hashmap out of date because of that.
We’ve now fixed this in a dynamic way that should survive future runner deployments/updates.