#!/bin/bash set -e . /usr/share/debconf/confmodule case "$1" in configure) db_get {{product}}/environment || true ENVIRONMENT="$RET" db_get {{product}}/host || true APP_HOST="$RET" db_get {{product}}/port || true APP_PORT="$RET" db_get {{product}}/machinekey || true CORE_MACHINEKEY="$RET" args+=(-e "$ENVIRONMENT" -ash "$APP_HOST" -asp "$APP_PORT" ); [ -z "$CORE_MACHINEKEY" ] && CORE_MACHINEKEY=$(cat /dev/urandom | tr -dc A-Za-z0-9 | head -c 12) && db_set {{product}}/machinekey $CORE_MACHINEKEY args+=(-mk "$CORE_MACHINEKEY" ) db_get {{product}}/db-host || true DB_HOST="$RET" db_get {{product}}/db-name || true DB_NAME="$RET" db_get {{product}}/db-user || true DB_USER="$RET" db_get {{product}}/db-pwd || true DB_PWD="$RET" args+=(-mysqlh "$DB_HOST" -mysqld "$DB_NAME" -mysqlu "$DB_USER" ); [ -n "$DB_PWD" ] && args+=(-mysqlp "$DB_PWD" ); command -v mysql >/dev/null 2>&1 || { echo "MySQL client not found"; exit 1; } MYSQL="mysql -h$DB_HOST -u$DB_USER" if [ -n "$DB_PWD" ]; then MYSQL="$MYSQL -p$DB_PWD" fi $MYSQL -e ";" >/dev/null 2>&1 ERRCODE=$? if [ $ERRCODE -ne 0 ]; then systemctl mysql start >/dev/null 2>&1 $MYSQL -e ";" >/dev/null 2>&1 || { echo "Trying to establish MySQL connection... FAILURE"; exit 1; } fi db_get {{product}}/redis-host || true REDIS_HOST="$RET" db_get {{product}}/redis-port || true REDIS_PORT="$RET" args+=(-rdh "$REDIS_HOST" -rdp "$REDIS_PORT" ); db_get {{product}}/rabbitmq-host || true RABBITMQ_HOST="$RET" db_get {{product}}/rabbitmq-user || true RABBITMQ_USER="$RET" db_get {{product}}/rabbitmq-port || true RABBITMQ_PORT="$RET" db_get {{product}}/rabbitmq-password || true RABBITMQ_PASSWORD="$RET" args+=(-rbh "$RABBITMQ_HOST" -rbp "$RABBITMQ_PORT" -rbu "$RABBITMQ_USER" -rbpw "$RABBITMQ_PASSWORD" ); db_get {{product}}/elasticsearch-sheme || true ELK_SHEME="$RET" db_get {{product}}/elasticsearch-host || true ELK_HOST="$RET" db_get {{product}}/elasticsearch-port || true ELK_PORT="$RET" args+=(-ess "$ELK_SHEME" -esh "$ELK_HOST" -esp "$ELK_PORT" ); db_get {{product}}/ds-host || true DOCUMENT_SERVER_HOST="$RET" db_get {{product}}/ds-port || true DOCUMENT_SERVER_PORT="$RET" args+=(-dsh "$DOCUMENT_SERVER_HOST" -dsp "$DOCUMENT_SERVER_PORT" ); bash /usr/bin/{{product}}-configuration "${args[@]}" exit 0 ;; abort-upgrade|abort-remove|abort-deconfigure) ;; *) echo "postinst called with unknown argument \`$1'" >&2 exit 1 ;; esac # dh_installdeb will replace this with shell code automatically # generated by other debhelper scripts. #DEBHELPER# exit 0