Hydra vs Zuul
Hydra
github.comZuul
zuul-ci.orgSide by side
| Figure | Hydra | Zuul |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | Yes | — |
| Web | Yes | Yes |
| Linux | Yes | Yes |
| API | Yes | Yes |
| Self-hosted | Yes | Yes |
| Plans published | 1 | 1 |
| Spec score · Continuous Integration Software | 8.5 (#11) | 8.0 (#29) |
| API | The repository includes a JSON API specification in hydra-api.yaml and points users to Swagger Editor for exploration. | Zuul provides a REST API, and its documentation describes the OpenAPI specification as a work in progress. |
| Deployment | The repository says running Hydra is currently only supported on NixOS and recommends the NixOS module for production. | Zuul is a self-hosted service, and its documentation describes running it on an operator’s infrastructure. |
| Integrations | Hydra jobset inputs can use Git checkout sources, and the documented examples use GitHub repositories. | Built-in source drivers include Gerrit, Git, GitHub, GitLab, and Pagure; provider drivers include AWS, Azure, Kubernetes, OpenStack, and static nodes. |
| Purpose | Hydra is a continuous integration service for Nix based projects. | Zuul is a project gating system that tests proposed future states of code repositories and their changes before they merge. |
Plans
In their own words
Hydra
Hydra is a continuous integration service for projects based on Nix. It checks out project source periodically or continuously, builds it, runs tests, and produces reports. Work is organized into jobsets whose inputs can trigger builds when they change; jobsets can also depend on one another. Flake jobsets are supported when their outputs expose a hydraJobs attribute set. Jobs can produce packages, ISO images, or tarballs, and jobset inputs can use Git checkout sources. Hydra also provides a JSON API. It is aimed at Nix and NixOS package developers, not people who only need to use NixOS. Hydra is open source under GPL-3.0 and listed at free. It is self-hosted, with no hosted option listed, and running it is currently supported only on NixOS; the repository recommends the NixOS module for production. Flake evaluation is restricted from accessing files outside the Nix store. Some state is stored in the database, so backups are needed, and the wiki reports that hydra-queue-runner can sometimes leave queued builds unscheduled.