We are looking for someone who would be willing to provide a build server for Lemmy’s continuous integration. This is used to ensure that new changes and pull requests pass all the checks, and that the code is written well. At the moment we are using a small VPS for this purpose (2 vCPU, 2 GB RAM). This works but is quite slow, and can slow down the development process with unnecessary waiting times.
For this reason we are looking for a community member with a spare server or computer, who would be willing to provide it as a build server. There are no specific hardware requirements, but the faster the better. The build server has to run 24/7 and run the Drone Docker Runner. The setup is very easy, especially if your machine is already running docker. If you have such a server and are willing to provide it, please comment below with the specs.
Additionally we are also looking for an ARM builder, so that we can provide official releases for this platform as well. Note that some Raspberry Pi models seem unable to build Lemmy (our 4GB memory builder failed), so please try if the compilation works on your device. If you can provide an ARM builder, also comment below with the specs.
I could provide an arm64 builder running on a rockpro64 but it could be that the specs aren’t good enough
You can test it by installing Rust and running
cargo install lemmy_server
.is it ok to test it inside a docker image? as i use this machine for my gitlab instance as a runner from time to time, and like to keep the host system clean. In fact only docker and the gitlab-runner is currently installed.
One thing I’ve forgotten, The Disk Space is not the biggest (therefore I always cleanup my used docker instances in my gitlab-ci build process):
root@virusrockpro2:~# df -h Dateisystem Größe Benutzt Verf. Verw% Eingehängt auf udev 1,9G 0 1,9G 0% /dev tmpfs 387M 40M 347M 11% /run /dev/mmcblk1p1 116G 32G 84G 28% / tmpfs 1,9G 0 1,9G 0% /dev/shm tmpfs 5,0M 4,0K 5,0M 1% /run/lock tmpfs 1,9G 0 1,9G 0% /tmp /dev/zram1 146M 36M 100M 27% /var/log tmpfs 387M 28K 387M 1% /run/user/1000
will that be enough?
I ran
cargo install lemmy_server
in the official Docker Image of Rust:- Memory Usage was ok (approx. 1,5 GB)
- CPU Usage was at peak 100% of all Cores.
load average: 6,15, 6,23, 5,84
- The command finished in
Finished release [optimized] target(s) in 35m 03s
real 35m6.253s user 179m50.287s sys 4m23.684s
That looks good then, I will send you a pm.
drone seems up and running :)
Maybe it’s worth another call for build servers? By the way, if I should switch to another runner, or adjust the drone runner config, just let me know
deleted by creator
Possible yes, but then we would be relying on a specific company (Microsoft) with no easy way to switch to another provider. And we would have to pay money to them if the free tier isnt enough. With drone.io we initially used their free cloud offering, and then seamlessly switched to a selfhosted instance. Now if we need more resources, any server can be used.
deleted by creator
Running checks on multiple services creates multiple points of failure, so if any one goes down, it takes time to investigate and fix that. So I dont see any benefit to this.
deleted by creator
Do you receive donations? If no, consider it. It will be simpler to buy what’s needed (vps, for example) yourselves.
On this page you donation options. However renting a fast vps is generally very expensive, so selfhosting is much more cost effective. That needs some time and to setup and manage though. As we already host a number of different servers, it would be helpful if someone else could manage this one.
https://cirrus-ci.com/ has free tier which is pretty good
Doesnt look like this can be selfhosted.
Looks really promising