#!/bin/bash # # Library: odoo.lib # Modified: 2024/11/30 15:27:00 # Derechos de Autor (C) [2024] [Mauro Rosero P. ] # # Este programa es software libre: usted puede redistribuirlo y/o modificarlo # bajo los términos de la Licencia Pública Affero General de GNU tal como # lo publica la Free Software Foundation, ya sea la versión 3 de la licencia, # o (a su elección) cualquier versión posterior. # # Este programa se distribuye con la esperanza de que sea útil, # pero SIN NINGUNA GARANTÍA; sin siquiera la garantía implícita de # COMERCIABILIDAD o IDONEIDAD PARA UN PROPÓSITO PARTICULAR. Consulte la # Licencia Pública Affero General de GNU para obtener más detalles. # # Debería haber recibido una copia de la Licencia Pública Affero General # junto con este programa. Si no la recibió, consulte . DOCKER_LOCAL=dockerfile.local DOCKER_BASE=dockerfile.base DOCKER_SAAS=dockerfile.saas DOCKER_BUILD=build DOCKER_FILE=Dockerfile ODOO_APP=apps ODOO_DOC=docs ODOO_ETC=etc ODOO_CFG=config ODOO_SET=odoo.conf ODOO_LOG=odoo.log ODOO_DEF_VERS="18" ODOO_CFG_VARS=("18") ODOO_PKG_BASE=base ODOO_PKG_DEVS=devs ODOO_PKG_INAR=ia ODOO_CFG_PREF=odoo.v ODOO_CFG_BASE=odoo.base.conf ODOO_CFG_SAAS=odoo.saas.conf ODOO_CFG_PACK=packs # Test odoo library function odoolib_test() { echo "Odoo Library loaded!" } # Check for odoo version supported function odoo_verscheck() { local value=$1 for item in "${ODOO_CFG_VARS[@]}" do if [[ "$item" == "$value" ]] then return 0 fi done return 1 } # Create odoo project structured path function odoo_structure() { local ODOO_PATH=$1 local ODOO_PROJ=$2 if [[ ! -d "${ODOO_PATH}" ]] then echo "${odmsg_002}" return 1 else if [[ ! -d "${ODOO_PATH}/${ODOO_PROJ}" ]] then mkdir -p $ODOO_PATH/$ODOO_PROJ/{$DOCKER_BUILD,$ODOO_APP,$ODOO_DOC,$ODOO_ETC} if [ $? -eq 0 ] then echo "[x] $odmsg_008_1 $ODOO_PROJ $odmsg_008_2" fi fi fi } # Copy docker file to build function copy_dockerfile() { local ODOO_PATH=$1 local ODOO_PROJ=$2 local DOCKERFILE=$3 if [ ! -f "$ODOO_PATH/$ODOO_PROJ/$DOCKER_BUILD/$DOCKER_FILE" ] then cp $DOCKERFILE "$ODOO_PATH/$ODOO_PROJ/$DOCKER_BUILD/$DOCKER_FILE" if [ $? -eq 0 ] then echo "[x] $odmsg_009" fi fi } # Copy odoo config template file to etc function copy_odooconfig() { local ODOO_PATH=$1 local ODOO_PROJ=$2 local ODOOFILE=$3 if [ ! -f "$ODOO_PATH/$ODOO_PROJ/$ODOO_ETC/$ODOO_SET" ] then cp $ODOOFILE "$ODOO_PATH/$ODOO_PROJ/$ODOO_ETC/$ODOO_SET" if [ $? -eq 0 ] then echo "[x] $odmsg_010 $ODOOFILE" fi fi } # Create new odoo log file function create_odoolog() { local ODOO_PATH=$1 local ODOO_PROJ=$2 if [ ! -f "$ODOO_PATH/$ODOO_PROJ/$ODOO_ETC/$ODOO_LOG" ] then echo > "$ODOO_PATH/$ODOO_PROJ/$ODOO_ETC/$ODOO_LOG" if [ $? -eq 0 ] then echo "[x] $odmsg_011" fi fi } # Copy odoo/version modules to apps function copy_odooapps() { local ODOO_PATH=$1 local ODOO_PROJ=$2 local APPS=$4 local VERSION=$3 cp -rf $ODOO_PATH/$ODOO_CFG_PACK/${ODOO_CFG_PREF}${VERSION}/${APPS} "$ODOO_PATH/$ODOO_PROJ/$ODOO_APP/" if [ $? -eq 0 ] then echo "[x] $odmsg_012_1 $APPS $odmsg_012_2" else echo "[-] $odmsg_012_1 $APPS $odmsg_012_3" fi }