#!/bin/bash ## XXXvlab: this hook should go into a generic odoo image ## XXXvlab: should get location of code CONFIG=$SERVICE_CONFIGSTORE/etc/odoo-server.conf . lib/common set -e PASSWORD="$(relation-get password)" USER="$(relation-get user)" DBNAME="$(relation-get dbname)" ADMIN_PASSWORD=$(relation-base-compose-get admin-password 2>/dev/null) || { if [ -e "$CONFIG" ]; then ADMIN_PASSWORD=$(grep ^admin_passwd "$CONFIG" | sed -r 's/^admin_passwd\s+=\s+(.+)$/\1/g') fi if [ -z "$ADMIN_PASSWORD" ]; then info "Generating odoo admin password" ADMIN_PASSWORD=$(gen_password) fi } control=$(echo -en "$USER\0$DBNAME\0$PASSWORD\0$ADMIN_PASSWORD" | md5_compat) database=$(options-get database 2>/dev/null) || true database="${database:-$DBNAME}" config-add "\ services: $MASTER_BASE_SERVICE_NAME: command: - '--database=$database' ## All this is to please tecnativa image, but is quite redundant environment: PGHOST: \"$MASTER_TARGET_SERVICE_NAME\" PGDATABASE: \"$DBNAME\" PGPASSWORD: \"$PASSWORD\" PGUSER: \"$USER\" #DBFILTER: $DBNAME ADMIN_PASSWORD: \"$ADMIN_PASSWORD\" " [ "$control" == "$(relation-get control 2>/dev/null)" ] && exit 0 file_put $CONFIG <