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_DEVS=${ODOODEVS:=odoo}
ODOO_CFGS=${ODOO_CFGS:=configs} ODOO_CFGS=${ODOO_CFGS:=configs}
ODOODEVS_PATH="${HOME}/${DEVSPATH:=devs}/${ODOO_DEVS}" 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_PACK_DEV=packs
ODOO_VERSION="$(cat < ${ODOODEVS_PATH}/${ODOO_CFGS}/odoo.version)"
ODOO_CFG_VERS=("18") ODOO_CFG_VERS=("18")
@ -31,6 +37,36 @@ function devslib_test() {
exit 1 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 # Check for odoo version supported
@ -53,7 +89,6 @@ function odoo_verscheck() {
function odoo_create_project() { function odoo_create_project() {
local project_name=$1 local project_name=$1
local projects_folder=$2 local projects_folder=$2
local project_description=$3
local projects_path="${HOME}/${DEVSPATH}/${projects_folder}" local projects_path="${HOME}/${DEVSPATH}/${projects_folder}"
local project_path="${projects_path}/${project_name}" local project_path="${projects_path}/${project_name}"
@ -67,30 +102,6 @@ function odoo_create_project() {
# Verificar si el proyecto ya existe # Verificar si el proyecto ya existe
if [ -d "${project_path}" ]; then 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 return 1 # El proyecto ya existe
fi fi
@ -186,9 +197,7 @@ EOF
# Proyecto Odoo: ${project_name} # Proyecto Odoo: ${project_name}
## Descripción ## Descripción
${project_description} Este es un proyecto Odoo creado con las herramientas MRDevs.
Este proyecto fue creado con las herramientas MRDevs.
## Estructura ## Estructura
- \`addons/\`: Módulos Odoo - \`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_107="El nombre del proyecto no puede estar vacío."
odmsg_108="Proyecto creado exitosamente en" odmsg_108="Proyecto creado exitosamente en"
odmsg_109="Error al crear el proyecto." 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_111="Creando estructura de proyecto Odoo..."
odmsg_112="No se pudo encontrar el directorio de proyectos." 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_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_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 # odoo_set.sh
# Modified: 2025/03/12 15:00:00 # 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" title="$head_000 $odmsg_000"
apps_title="${odmsg_102}" apps_title="${odmsg_102}"
# Check if dialog is not installed, exited\! # Check if dialog is not installed, exited!
command_installed "dialog" command_installed "dialog"
if [ $? -ne 0 ] if [ $? -ne 0 ]
then then
@ -61,7 +61,7 @@ then
exit 200 exit 200
fi fi
# Check if os is valid\! # Check if os is valid!
get_osname get_osname
if [ "${os_name}" == "${head_unknow}" ] if [ "${os_name}" == "${head_unknow}" ]
then then
@ -94,37 +94,15 @@ fi
PROJECT_NAME="$value" 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 # Mostrar progreso de creación
( (
echo 0; sleep 1 echo 0; sleep 1
echo 20; echo "# ${odmsg_111}" echo 20; echo "# ${odmsg_111}"
# Crear el proyecto Odoo # Crear el proyecto Odoo
odoo_create_project "$PROJECT_NAME" "$PROJECTS_FOLDER" "$PROJECT_DESCRIPTION" odoo_create_project "$PROJECT_NAME" "$PROJECTS_FOLDER"
result=$? result=$?
# Guardar el resultado en un archivo temporal para recuperarlo después
echo $result > "$TEMP_FILE"
echo 80; echo 80;
# Mensaje basado en el resultado # Mensaje basado en el resultado
if [ $result -eq 0 ]; then if [ $result -eq 0 ]; then
@ -141,20 +119,9 @@ TEMP_FILE="/tmp/odoo_set_result.$$"
sleep 1 sleep 1
) | dialog --backtitle "${title}" --title "${apps_title}" --gauge "" 10 70 0 ) | 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 case $result in
0) 0)
# Mostrar mensaje de éxito con caja de diálogo ampliada para mejor visibilidad dialog_error_box "${head_info}" "${odmsg_108} $HOME/$DEVSPATH/$PROJECTS_FOLDER/$PROJECT_NAME\n\n${odmsg_116}"
# 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
;; ;;
1) 1)
dialog_error_box "${head_warning}" "${odmsg_110}" dialog_error_box "${head_warning}" "${odmsg_110}"