You'll need a local pgqsl. In one terminal:
hydra$ nix-shell
[nix-shell]$ initdb ./postgres
[nix-shell]$ postgres -D ./postgres/ -k $(pwd)/postgres/
In another terminal:
See https://github.com/NixOS/hydra/blob/242b8b7a314759ed33f69205d26a1b7c337511e0/hydra-module.nix#L13-L17
createdb -h $(pwd)/postgres hydra
mkdir ./data
export HYDRA_DBI="dbi:Pg:dbname=hydra;host=$(pwd)/postgres";
export HYDRA_CONFIG="$(pwd)/hydra.conf";
export HYDRA_DATA="$(pwd)/data";
export HYDRA_HOME=$(pwd)/src
./bootstrap
configurePhase
make
$ hydra-init
initialising the Hydra database schema...
$ hydra-create-user alice --password foobar --role admin
$ hydra-server
$ firefox <http://127.0.0.1:3000>
Creating a jobset, try:
nix expression: basic.nix in tests
check interval: 1
shares: 123
inputs:
name: tests
type: local path
value: /home/grahamc/projects/github.com/NixOS/hydra/tests/jobs/
notify committers: NOT checked
To run the evaluator:
hydra-evaluator
To run the evaluator for a specific jobset:
hydra-eval-jobset projectname jobsetname
Running the queue runner: NIX_REMOTE_SYSTEMS=$(pwd)/machines hydra-queue-runner -vvvv
NOTE You'll need to be a trusted user for the queue runner to work.