Skip to content
CodeFloe

Hardware

CodeFloe provides the following servers to process CI/CD jobs:

Name Type Architecture CPU Memory Job Capacity CPU/Job Mem/Job
artemis Hetzner AX42 (dedicated) amd64 16 64 GB 8 4 7 GB
ci-1 devxy PVE cluster (zeus) amd64 8 22 GB 9 4 7 GB
ci-2 devxy PVE cluster (hera) amd64 8 16 GB 6 2 7 GB
ci-3 devxy PVE cluster (poseidon) amd64 16 32 GB 13 4 7 GB
ci-arm1 Hetzner CAX41 (cloud) arm64 16 32 GB 6 4 7 GB
gaia Apple Mac Mini M4 arm64 10 32 GB 5 4 3.5 GB

The ci-1, ci-2 and ci-3 runners are virtual machines on a self-managed Proxmox VE cluster, which itself runs on rented Hetzner bare metal. They sit on desktop-class CPUs (an AMD Ryzen 9 7950X3D for ci-1, an Intel Core i9-13900 for ci-2 and ci-3), which buys a noticeably higher single-core clock than the cloud instances. Each VM carries a share of its host’s rental, listed on the infrastructure hardware page. Because they have no public address, they reach the Crow server and Forgejo through a Headscale tailnet.

The total job capacity of all runners is split 50/50 between Crow CI and Forgejo Actions:

Name Crow CI Forgejo Actions
artemis 5 3
ci-1 5 4
ci-2 3 3
ci-3 5 8
ci-arm1 3 3
Sum 21 21

gaia is not part of this split and is scheduled independently.

Every job gets a hard memory limit of 7 GB and a CPU quota of 4 cores. The only exception is ci-2, which limits jobs to 2 cores because it has the smallest CPU allocation.

Limits apply per job, not per workflow. A workflow with several parallel jobs therefore receives a multiple of these values, spread over whichever runners pick the jobs up.