Anybody have recommendations for a lightweight CI/CD service that I can run on a Raspberry Pi with 8GB memory?
I’d like to run it in Docker, and I’m the only client — it doesn’t matter to me if builds have to queue/if there’s only one worker “node” on the pi, but I just want to be able to do github action-like stuff with my gitea server.
I run drone.io with gitea, it’s nice, doesn’t do much when it’s not working.
Gitea added their own CI tooling that is configured like GitHub actions as well - I haven’t tried it yet though.
I had no idea Gitea was adding actions! I’m very excited! It doesn’t look like it’s out in the current release version (1.19.3):
It’s available on 1.19.3. Using it with my Gitea instance currently. Behind a flag in the config.ini I believe. Not at all stable yet, and not feature complete compared with Github Actions, but I’ve done a bit of testing with it and it’s been pretty smooth sailing.
I didn’t realize that gitea was adding actions either — it does look like their current setup expects the actions runner to be outside of docker, though: https://blog.gitea.io/2023/03/hacking-on-gitea-actions
That’s not to say it would be impossible to wrap it in a container, but their claim that they “recommend running it on a separate server from the gitea server for performance reasons” makes me wonder if it’ll work on my little pi.
I think it is in the current version just mostly undocumented and behind flags to turn it on. It definitely is in the latest Fogejo with flags as I described, which I migrated my gitea to. I haven’t had a chance to play with it yetm but am looking forward to it. I love github actions and it is super similar.
You can try Woodpecker CI/CD https://woodpecker-ci.org/ It is a opensource fork of droneCI https://woodpecker-ci.org/faq
I have a small K3s cluster as well as a separate docker server. The docker server runs on a 2012 Mac mini so I think it’s more out of date than a RPi. All that to say, no issues running 14 docker containers like Sonarqube, gitea, Jenkins, Maven, etc.
You could try this for maximum flexibility: https://github.com/lab132/buildbot-gitea