Compare commits

..

No commits in common. "86ae118f7ee8a69ce9b224da0ab3c9e325310e76" and "14ab7b0a416c1755a599f90478e21813a092f1f8" have entirely different histories.

4 changed files with 46 additions and 72 deletions

View file

@ -1 +0,0 @@
proyectos

View file

@ -21,7 +21,13 @@
ODOO_DEVS=${ODOODEVS:=odoo}
ODOO_CFGS=${ODOO_CFGS:=configs}
ODOODEVS_PATH="${HOME}/${DEVSPATH:=devs}/${ODOO_DEVS}"
ODOO_REPO_WEB="$(cat ${HOME}/${DEVSPATH:=devs}/bin/config/odoo.repo.2)"
ODOO_REPO_SSH="$(cat ${HOME}/${DEVSPATH:=devs}/bin/config/odoo.repo.1)"
ODOO_REPO_ALT=""
ODOO_REPO_PKG=packs.repos
ODOO_PACK_DEV=packs
ODOO_VERSION="$(cat < ${ODOODEVS_PATH}/${ODOO_CFGS}/odoo.version)"
ODOO_CFG_VERS=("18")
@ -31,6 +37,36 @@ function devslib_test() {
exit 1
}
function odoo_developers() {
clear
if [ -d "${ODOODEVS_PATH}" ]; then
return 1
else
if [ ! -d "${ODOODEVS_PATH}/.git" ]; then
display_text_header "${head_000} ${odmsg_000}" "${odmsg_113} ${ODOO_REPO_SSH}"
git clone "${ODOO_REPO_SSH}" "${ODOODEVS_PATH}"
if [ $? -ne 0 ]; then
display_text_header "${head_000} ${odmsg_000}" "${odmsg_114} ${ODOO_REPO_ALT}"
git clone "${ODOO_REPO_ALT}" "${ODOODEVS_PATH}"
if [ $? -ne 0 ]; then
return 2
fi
fi
else
cd "${ODOODEVS_PATH}"
git pull
if [ $? -ne 0 ]; then
return 3
fi
fi
fi
if [ ! -d "${ODOODEVS_PATH}/${ODOO_PACK_DEV}" ]; then
mkdir "${ODOODEVS_PATH}/${ODOO_PACK_DEV}"
fi
return 0
}
# Check for odoo version supported
@ -53,7 +89,6 @@ function odoo_verscheck() {
function odoo_create_project() {
local project_name=$1
local projects_folder=$2
local project_description=$3
local projects_path="${HOME}/${DEVSPATH}/${projects_folder}"
local project_path="${projects_path}/${project_name}"
@ -67,30 +102,6 @@ function odoo_create_project() {
# Verificar si el proyecto ya existe
if [ -d "${project_path}" ]; then
# Si el proyecto existe y tiene un README.md, actualizar la descripción
if [ -f "${project_path}/README.md" ]; then
# Respaldar el README original
cp "${project_path}/README.md" "${project_path}/README.md.bak"
# Crear un nuevo README con la descripción actualizada
# Método más simple y robusto que awk, que podría fallar con sintaxis complejas
{
grep -i -B 1000 "^## Descripción" "${project_path}/README.md.bak" 2>/dev/null || echo -e "# Proyecto Odoo: ${project_name}\n\n## Descripción"
echo "${project_description}"
echo ""
echo "Este proyecto fue actualizado con las herramientas MRDevs."
echo ""
grep -i -A 1000 "^## " "${project_path}/README.md.bak" | grep -v "^## Descripción" | awk 'NR>1'
} > "${project_path}/README.md.new"
# Verificar que el archivo nuevo no está vacío antes de reemplazar
if [ -s "${project_path}/README.md.new" ]; then
mv "${project_path}/README.md.new" "${project_path}/README.md"
else
# Si algo falló, restaurar el backup
mv "${project_path}/README.md.bak" "${project_path}/README.md"
fi
fi
return 1 # El proyecto ya existe
fi
@ -186,9 +197,7 @@ EOF
# Proyecto Odoo: ${project_name}
## Descripción
${project_description}
Este proyecto fue creado con las herramientas MRDevs.
Este es un proyecto Odoo creado con las herramientas MRDevs.
## Estructura
- \`addons/\`: Módulos Odoo

View file

@ -24,11 +24,10 @@ odmsg_106="Ingrese el nombre del proyecto Odoo a crear"
odmsg_107="El nombre del proyecto no puede estar vacío."
odmsg_108="Proyecto creado exitosamente en"
odmsg_109="Error al crear el proyecto."
odmsg_110="El directorio del proyecto ya existe. Se ha actualizado la descripción en README.md."
odmsg_110="El directorio del proyecto ya existe."
odmsg_111="Creando estructura de proyecto Odoo..."
odmsg_112="No se pudo encontrar el directorio de proyectos."
odmsg_113="Clonando repositorio desde"
odmsg_114="Intentando clonar desde repositorio alternativo"
odmsg_115="Configuración completa. Se han creado todas las carpetas y archivos necesarios."
odmsg_116="Puedes comenzar tu desarrollo ejecutando el script start.sh en la carpeta scripts."
odmsg_117="Descripción del Proyecto Odoo:"
odmsg_113="Clonando repositorio desde"
odmsg_114="Intentando clonar desde repositorio alternativo"

View file

@ -1,4 +1,4 @@
#\!/bin/bash
#!/bin/bash
#
# odoo_set.sh
# Modified: 2025/03/12 15:00:00
@ -52,7 +52,7 @@ load_messages $BIN_HOME $BIN_MESG $BIN_LANG "odoo"
title="$head_000 $odmsg_000"
apps_title="${odmsg_102}"
# Check if dialog is not installed, exited\!
# Check if dialog is not installed, exited!
command_installed "dialog"
if [ $? -ne 0 ]
then
@ -61,7 +61,7 @@ then
exit 200
fi
# Check if os is valid\!
# Check if os is valid!
get_osname
if [ "${os_name}" == "${head_unknow}" ]
then
@ -94,37 +94,15 @@ fi
PROJECT_NAME="$value"
# Solicitar descripción del proyecto Odoo
clear
dialog_input_box "${odmsg_117}" "" ""
if [ $? -ne 0 ]; then
dialog_error_box "${head_error}" "${head_op_error}"
exit 1
fi
PROJECT_DESCRIPTION="$value"
# Si no se proporciona descripción, usar un texto predeterminado
if [ -z "$PROJECT_DESCRIPTION" ]; then
PROJECT_DESCRIPTION="Este es un proyecto Odoo para gestionar procesos de negocio."
fi
# Inicializar la variable result
result=0
TEMP_FILE="/tmp/odoo_set_result.$$"
# Mostrar progreso de creación
(
echo 0; sleep 1
echo 20; echo "# ${odmsg_111}"
# Crear el proyecto Odoo
odoo_create_project "$PROJECT_NAME" "$PROJECTS_FOLDER" "$PROJECT_DESCRIPTION"
odoo_create_project "$PROJECT_NAME" "$PROJECTS_FOLDER"
result=$?
# Guardar el resultado en un archivo temporal para recuperarlo después
echo $result > "$TEMP_FILE"
echo 80;
# Mensaje basado en el resultado
if [ $result -eq 0 ]; then
@ -141,20 +119,9 @@ TEMP_FILE="/tmp/odoo_set_result.$$"
sleep 1
) | dialog --backtitle "${title}" --title "${apps_title}" --gauge "" 10 70 0
# Recuperar el resultado
result=0 # Valor predeterminado en caso de error
if [ -f "$TEMP_FILE" ]; then
result=$(cat "$TEMP_FILE")
rm -f "$TEMP_FILE"
fi
case $result in
0)
# Mostrar mensaje de éxito con caja de diálogo ampliada para mejor visibilidad
# Bypassing dialog_error_box para tener más control sobre el tamaño
title_text="${head_info} - ${apps_title}"
message_text="${odmsg_108} $HOME/$DEVSPATH/$PROJECTS_FOLDER/$PROJECT_NAME\n\n${odmsg_116}"
dialog --backtitle "${title}" --title "${title_text}" --msgbox "\n${message_text}" 12 80
dialog_error_box "${head_info}" "${odmsg_108} $HOME/$DEVSPATH/$PROJECTS_FOLDER/$PROJECT_NAME\n\n${odmsg_116}"
;;
1)
dialog_error_box "${head_warning}" "${odmsg_110}"