# LOCAL ENVIRONMENT FOR ODOO DEVELOPERS ## GUÍA PARA DESARROLLADORES - REV. 30/11/2024 ### PREPARACIÓN DE AMBIENTE LOCAL PARA DESARROLLADORES #### Instalación del DEVELOPER TOOLS (Pendiente) #### Configuración de Perfil de Desarrollador (Pendiente) #### Crear carpeta para el ambiente de desarrollo Si eres parte del equipo de desarrollo de **MR DEVELOPERS**, se recomienda fuertemente que a nivel de la carpeta **$HOME** crees una carpeta **developers** que será la carpeta raiz de los diferentes proyectos de desarrollo. $ mkdir $HOME/developers Nota: **Si está conectado a algunos de los servidores de desarrollo vía ssh, puede que esta carpeta ya este creada.** #### Instalación de herramientas básicas y de gestión de contenedores Instalará wget, curl, git, python3 + python3-pip (si no están instalados previamente) y podman (si no está previamente instalado o docker) $ bin/bootstrap.sh Nota: Este comando requiere **privilegios de superusuario**, asegurese de tener permisos de **root** o contacte con su administrador. Actualmente, solo para distribuciones Debian. Solo se requiere si no se han instalado pre-requisitos previamente. **Si está conectado a algunos de los servidores de desarrollo vía ssh, este paso no es necesario.** ### PREPARACIÓN DE AMBIENTE LOCAL PARA DESARROLLADORES ODOO #### Crear estrucutra para ambiente de desarrollo Odoo Dentro de la carpeta **$HOME/developers**, vas a descargar el proyecto base en la carpeta **odoo** $ cd $HOME/developers $ git clone git@git.rosero.one:OPENTECH/odoo.git Nota: Requieres acceso vpn a infraestructura de desarrolladores, estar registrado como desarrollador en la plataforma git (gitea) y credencial ssh para acceso al repositorio para poder descargar el proyecto. #### Instalación y/o Actualización de Odoo Packs Dependiendo del perfil de permisos del desarrollador y del tipo de proyecto, se podrán descargar packs que son conjuntos de módulos odoo que puede ser utilizados para ampliar las funcionalidades de un proyecto odoo: ##### Extra Pack El extra pack contiene módulos odoo que pueden ser requeridos por un proyecto para resolver requerimientos muy puntuales. Para instalarlo: $ bin/pack_extras.sh [--help] [--version] [--odoo ] ##### Voip Pack El voip pack contiene módulos odoo que se requieren cuando se necesita hacer alguna integración con porveedores o sistemas de voip. Para instalarlo: $ bin/pack_voip.sh [--help] [--version] [--odoo ] ##### SaaS Pack El mr-erp saas pack es nuestra plataforma de servicios odoo saas. Para instalarlo: $ bin/pack_saas.sh [--help] [--version] [--odoo ] ##### l10n Pack El l10n pack corresponde a los módulos de internacionalización o adecuación a la trpicalización por país. Para instalarlo: $ bin/pack_l10n.sh [--help] [--version] [--odoo ] ### GESTIONANDO AMBIENTE LOCAL PARA UN PROYECTO ODOO #### Creación de estructura de un proyecto odoo nuevo Crea la estructura de carpetas y copia los archivos de gestión requeridos para un nuevo proyecto o actualiza un proyecto existente. Donde [proyecto] representa la carpeta que contendra el proyecto odoo. $ cd $HOME/developers/odoo $ bin/project.sh [proyecto] #### Configurando el ambiente local de desarrollo de un proyecto odoo Mediante el formulario de configuración del proyecto odoo, configure las variables de ambiente que se utilizaran como parametros para la ejecución del ambiente local de desarrollo del proyecto. Es importante y requerido realizar este paso antes de iniciar el proceso de desarrollo del proyecto. El archivo generado o modificado es independiente para cada ambiente de desarrollador. $ cd [proyecto] $ ./configure.sh #### Inicializando contenedor odoo local para desarrollo Esto configura la imagen de odoo local para incluir nuevas librerias o requisitos al contenedor de prueba $ cd [proyecto] $ ./build.sh Nota: Se requiere para la construcción de la imagen odoo local desde donde se creará la imagen de contenedor del proyecto. En el futuro, este proceso será opcional; ya que tendremos una imagen disponible lista para descarga desde el repositorio. También, puede usarse para contruir la imagen si no tiene acceso a internet. ### Ejecutando demonios de arranque de instancia local de Odoo #### Arranque de instancia de odoo local para desarrollo $ ./up.sh Nota: En este punto deberia poder ir a https://localhost:101[puerto_definido] #### Baja ordenada de instancia de odoo local para desarrollo $ ./down.sh Nota: Solo debe ejecutarse si hay una instancia activa del proyecto