fd38524843
Add CI badge to README.md |
||
---|---|---|
.github/workflows | ||
datadog | ||
doc | ||
src | ||
tests | ||
.gitignore | ||
bootstrap | ||
configure.ac | ||
COPYING | ||
default.nix | ||
flake.lock | ||
flake.nix | ||
hydra-module.nix | ||
INSTALL | ||
Makefile.am | ||
README.md | ||
shell.nix | ||
version |
Hydra
Hydra is a Continuous Integration service for Nix based projects.
Installation And Setup
Note: The instructions provided below are intended to enable new users to get a simple, local installation up and running. They are by no means sufficient for running a production server, let alone a public instance.
Enabling The Service
Running Hydra is currently only supported on NixOS. The hydra module allows for an easy setup. The following configuration can be used for a simple setup that performs all builds on localhost (Please refer to the Options page for all available options):
{
services.hydra = {
enable = true;
hydraURL = "http://localhost:3000";
notificationSender = "hydra@localhost";
buildMachinesFiles = [];
useSubstitutes = true;
};
}
Creating An Admin User
Once the Hydra service has been configured as above and activate you should already be able to access the UI interface at the specified URL. However some actions require an admin user which has to be created first:
$ su - hydra
$ hydra-create-user <USER> --full-name '<NAME>' \
--email-address '<EMAIL>' --password <PASSWORD> --role admin
Afterwards you should be able to log by clicking on "Sign In" on the top right of the web interface using the credentials specified by hydra-crate-user
. Once you are logged in you can click "Admin -> Create Project" to configure your first project.
Building And Developing
Building Hydra
You can build Hydra via nix-build
using the provided default.nix:
$ nix-build
Development Environment
You can use the provided shell.nix to get a working development environment:
$ nix-shell
$ ./bootstrap
$ configurePhase # NOTE: not ./configure
$ make
Additional Resources
- Hydra User's Guide
- Hydra on the NixOS Wiki
- hydra-cli
- Peter Simons - Hydra: Setting up your own build farm (NixOS)
License
Hydra is licensed under GPL-3.0
Icons provided free by EmojiOne.