I have found Forgejo’s actions to be functional for my own purposes, although rather incomplete compared with GitHub. That said, porting an action from GitHub to Forgejo was fairly easy the one time I was forced to do so.
Actions, as I get use them for free really seem irreplaceable.
See, I only have one project where this actually matters (and help maintain another), but: I get to test on mac and Windows, both ARM and x64, for free.
Then, with a one line import, I can use Linux+QEMU to test a bunch of other architectures.
Adding a couple other deps, I can have VMs to test: FreeBSD, OpenBSD, NetBSD, illumos, Solaris… the list goes on.
And thanks to other providers I now also get RISC-V, IBM Z and Power runners for free.
So, yeah, for the other projects, I could have CI on a self-hosted Forgejo instance. I could also run tests on my dev machine before commiting and get 95% or the same benefit.
The value in CI is that it can run tests that are inconvenient to run locally.
See, I only have one project where this actually matters (and help maintain another), but: I get to test on mac and Windows, both ARM and x64, for free.
Then, with a one line import, I can use Linux+QEMU to test a bunch of other architectures.
Adding a couple other deps, I can have VMs to test: FreeBSD, OpenBSD, NetBSD, illumos, Solaris… the list goes on.
And thanks to other providers I now also get RISC-V, IBM Z and Power runners for free.
So, yeah, for the other projects, I could have CI on a self-hosted Forgejo instance. I could also run tests on my dev machine before commiting and get 95% or the same benefit.
The value in CI is that it can run tests that are inconvenient to run locally.