view docker/pubsub/entrypoint.sh @ 3398:467d6c709f1d

test: fixed use of `client.host` in legacy test: those tests are not maintained anymore, but as the use of `client.host` as been fixed elsewhere, it was the occasion to do it there too. Those legacy tests should be ported or to the new workflow, or deleted if they are not relevant anymore.
author Goffi <goffi@goffi.org>
date Thu, 12 Nov 2020 14:53:15 +0100
parents 127dde80a0a5
children 73e04040d577
line wrap: on
line source

#!/bin/bash

# we first need to wait for PostgreSQL
# cf. https://stackoverflow.com/a/39028690 (thanks!)

RETRIES=5

until psql -c "select 1" > /dev/null 2>&1 || [ $RETRIES -eq 0 ]; do
  echo "Waiting for postgres server, $((RETRIES--)) remaining attempts…"
  sleep 1
done

ori_dir=${PWD}
cd /src/sat_pubsub/db

# PG should be OK, we now initialize the database. If it's already done, it will fail
# with exit code 3
psql -v ON_ERROR_STOP=1 pubsub < pubsub.sql 2>/dev/null
case $? in
    0) printf "database initialized\n" ;;
    3) printf "database already exists\n" ;;
    *) printf "can't initialize database, please check PostgreSQL container parameters\n" >&2
       exit 1
       ;;
esac

cd $ori_dir

exec /home/sat/sat_env/bin/twistd -n sat-pubsub "$@"