Skip to content

Instantly share code, notes, and snippets.

@manpages
Created April 20, 2015 01:10
Show Gist options
  • Save manpages/d1ed968a16135184b6bb to your computer and use it in GitHub Desktop.
Save manpages/d1ed968a16135184b6bb to your computer and use it in GitHub Desktop.
Given Nix, the package manager; install Hydra.
if [ -f ~/hydra/install.lock ]; then
echo 'Found installation lock file, to force hydra update, remove ~/hydra/install.lock and re-run this script'
exit 2
fi
nix-channel --remove http://hydra.nixos.org/jobset/hydra/master/channel/latest
nix-channel --add http://hydra.nixos.org/jobset/hydra/master/channel/latest hydra-master-latest
nix-channel --update
nix-env -i hydra postgresql
mkdir -p ~/hydra 2>/dev/null 1>/dev/null
initdb -D ~/hydra/db 2>/dev/null 1>/dev/null
echo "Stopping pgsql server"
pg_ctl -D ~/hydra/db stop
sleep 5
echo "Starting pgsql server"
pg_ctl -D ~/hydra/db -l /tmp/pg-hydra.log start
sleep 5
createuser -S -D -R hydra
createdb -O $USER hydra
export HYDRA_DBI="dbi:Pg:dbname=hydra;host=localhost;user=${USER}"
export HYDRA_DATA=~/hydra
hydra-init
hydra-create-user $USER --full-name 'Local Hydra Administrator' --password foo42 --role admin
echo "Booyah, hydra is installed for `${USER}' with data directory `${HOME}/hydra' now let's evaluate some nix expressions, shall we?"
touch ~/hydra/install.lock
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment