Use pg_ctl for readiness check

Using `pg_ctl status` is more reliable than relying checking an
open port via netcat.
This commit is contained in:
Tobias Pflug 2020-05-14 15:15:38 +02:00
parent 45ac8e0cbc
commit d9d58b7055
3 changed files with 5 additions and 5 deletions

View file

@ -295,7 +295,7 @@
runHydra = pkgs.callPackage ./run-hydra.nix {};
devShell = pkgs.hydra.overrideAttrs (old: {
buildInputs = old.buildInputs ++ [ pkgs.foreman pkgs.netcat ];
buildInputs = old.buildInputs ++ [ pkgs.foreman ];
shellHook = old.shellHook + ''
export HYDRA_HOME="src/"
mkdir -p .hydra-data

View file

@ -1,8 +1,8 @@
{ foreman, mkShell, hydra, netcat, postgresql95 }:
{ foreman, mkShell, hydra, postgresql95 }:
{ doCheck ? true }:
mkShell {
buildInputs = [
foreman (hydra.overrideAttrs (_: { inherit doCheck; })) netcat postgresql95
foreman (hydra.overrideAttrs (_: { inherit doCheck; })) postgresql95
];
shellHook = ''

View file

@ -1,7 +1,7 @@
#!/bin/sh
# wait for postgresql to listen
while ! nc -z localhost 64444; do sleep 1; done
# wait for postgresql to be up
while ! pg_ctl -D $(pwd)/.hydra-data/postgres status; do sleep 1; done
createdb -h $(pwd)/.hydra-data/postgres -p 64444 hydra