Following @t0xic0der and @humaton’s talk on the Git forge ARC investigation during Fedora Linux Release Party 40 and more recently, @humaton’s talk on the topic during Flock To Fedora 2024 - we have opened up our ARC investigation to all contributors within the Fedora Project. Please refer to the ARC initiative page[1] to create or retrieve the usecase requirements for the Git forge replacement and use this thread to record your findings as a tester.
As the community deployments for GitLab[2] and Forgejo[3] are limited access deployments, testers need to request for them by opening a ticket in the Fedora Infrastructure issue tracker[4]. Please use this thread to focus solely on listing the comparisons between the alternatives and sharing the resources regarding the same while all discussions related to the investigation, please head over to the official Fedora ARC room[5] on Fedora Chat.
Is there a plan to use something like Woodpecker for CI on the Forgejo instance? I would like to test the CI setup, as I think that’s a big consideration for the new forge.
I haven’t heard anyone talking about any such plan, but if there are enough people interested in working on it, we could certainly consider it.
Right now, we are looking at Konflux — a new tool from Red Hat built on Tekton pipelines on OpenShift (or plain Kubernetes). See this presentation from DevConf.cz:
@ralph also gave a talk at Flock, which should be online in a little bit. That team should be able to answer why they think this might be better for our use-cases than Woodpecker or other alternatives.
There is actually an instance online which accepts Fedora account logins for people to play around with. Details here:
There were multiple user stories about using CI[1][2][3][4][5], and I think Pagure’s lackluster CI support is one of the big reasons that people have been moving away from it for upstream projects. For distgit repos, we also rely on the Koji scratch build CI jobs and TMT/STI tests. It seems like Konflux does not fit either usecase: it’s more a buildsystem than a generic CI platform and not useful for distgit repos either since we should run test jobs using the same buildsystem currently in use in Fedora Infra.
For Gitlab CE, the option is Gitlab CI. Forgejo has a Forgejo Actions feature that works similarly to Github Actions, and Codeberg uses the more mature Woodpecker CI which also integrates well with Forgejo[1].
I’m interested in exploring Konflux as the next generation Fedora build system. But that certainly should not block us on any of this. I am, in any case, concerned about resources for adding another system — both in terms of hardware and Fedora Infrastructure sysadmin time and capacity. If we do find Konflux useful as a build system, we should migrate and retire what we have. If we don’t, we should end the experiment and turn it off.
I think as part of that exploration, we should see if we can build the CI/CD features we need around Konflux — or if not that, at least using Tekton (which Konflux is built on).
If that doesn’t work, and Forgejo Actions aren’t sufficient, Woodpecker does look interesting. (And, following the same line of thought as above, if we would adopt it, we should migrate away from Zuul and Jenkins.)
If you want to push to your test repos, you will need to clone using HTTPS, and push back with your username and passwork. (you will need to set your password in the forgio UI first)
Obviously this is not a forgejo limitation, just a limitation with the current setup we have just for trying it out.
There’s not a forgejo plugin for konflux, but talking with Ralph at
flock it sounded like this shouldn’t be too hard to implement.
Or it might be that the forgejo interface is very similar to
gitlab/github and it could use one of those.