From 541dde1f25366200846edf6df4351a629fc8a5d6 Mon Sep 17 00:00:00 2001 From: Valentin Lab Date: Thu, 27 Feb 2020 18:45:20 +0100 Subject: [PATCH] new: [odoo-tecnativa] fetch admin password in config if not specified. Signed-off-by: Valentin Lab --- odoo-tecnativa/actions/load | 13 ++++++++++--- odoo-tecnativa/actions/save | 13 ++++++++++--- 2 files changed, 20 insertions(+), 6 deletions(-) diff --git a/odoo-tecnativa/actions/load b/odoo-tecnativa/actions/load index caa8927..437ac7e 100755 --- a/odoo-tecnativa/actions/load +++ b/odoo-tecnativa/actions/load @@ -67,9 +67,16 @@ set -e ## Ensure odoo is launched service_def=$(get_compose_service_def "$SERVICE_NAME") -ADMIN_PASSWORD=$(echo "$service_def" | shyaml get-value options.admin-password) || { - err "Could not find 'admin-password' in $SERVICE_NAME service definition." - exit 1 +## XXXvlab: should be moved to lib +CONFIG=$SERVICE_CONFIGSTORE/etc/odoo-server.conf +ADMIN_PASSWORD=$(echo "$service_def" | shyaml -q get-value options.admin-password) || { + 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 + err "Could not find 'admin-password' in $SERVICE_NAME service definition nor in config file." + exit 1 + fi } diff --git a/odoo-tecnativa/actions/save b/odoo-tecnativa/actions/save index 4625eb5..0b2fc0c 100755 --- a/odoo-tecnativa/actions/save +++ b/odoo-tecnativa/actions/save @@ -70,9 +70,16 @@ set -e ## Ensure odoo is launched service_def=$(get_compose_service_def "$SERVICE_NAME") -ADMIN_PASSWORD=$(echo "$service_def" | shyaml get-value options.admin-password) || { - err "Could not find 'admin-password' in $SERVICE_NAME service definition." - exit 1 +## XXXvlab: should be moved to lib +CONFIG=$SERVICE_CONFIGSTORE/etc/odoo-server.conf +ADMIN_PASSWORD=$(echo "$service_def" | shyaml -q get-value options.admin-password) || { + 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 + err "Could not find 'admin-password' in $SERVICE_NAME service definition nor in config file." + exit 1 + fi }