Cómo configurar submódulos en Odoo.sh
4 abril, 2021 por
Cómo configurar submódulos en Odoo.sh
Yusnier Matos Arias
| No comments yet

Para trabajar con Odoo.sh debes enlazar un repositorio Git a cada proyecto. Sin embargo, es probable que necesites incluir otros repositorios de terceros o tuyos, en los que mantienes código reutilizable, como librerías o módulos específicos.

Una opción es copiar el código de estos repositorios en el repositorio del proyecto. De esta forma tienes las funcionalidades que necesitas, pero agregas un problema adicional: pierdes la sincronización con el repositorio original. Por tanto, si se incluyen actualizaciones, correcciones a errores y otras modificaciones, tendrás que volver a copiar todo el código original y actualizar el repositorio del proyecto manualmente.

La solución a ese problema son los submódulos de Git. Estos pueden verse como enlaces a los repositorios externos. Exactamente a un commit específico en un momento determinado.

En Odoo.sh podemos incluir dos tipos de repositorios externos: públicos y privados. A continuación veremos cómo agregar cada uno.

Agregar un repositorio público en Odoo.sh

Para agregar un repositorio público en Odoo.sh ve a tu repositorio en Github (desde la línea de comandos), elige la rama en la que quieres trabajar y agrega el submódulo.

git submodule add -b <branch> <url del repositorio externo>
git commit -a && git push -u <remote> <local branch>


Agregar un repositorio privado en odoo.sh

Para agregar un repositorio privado en Odoo.sh son necesarios algunos adicionales. Los pasos son los siguientes:

Ve al menú de Configuración (Settings) en el proyecto en Odoo.sh.


Ubica el menú de Submódulos y agrega el link del repositorio que quieres agregar como submódulo.


Copia la llave pública que genera Odoo.sh.


Agrega la llave pública generada en Github o Gitlab, donde tengas tu repositorio externo.

Repositorio externo en Gitlab:

  1. Ir a Configuración/Repositorio (Settings/Repository) del proyecto en Gitlab.

  2. Expandir el menú Llaves de despliegue (Deploy keys).

  3. Copiar la llave pública generada en Odoo.sh, poner un título y hacer click en el botón Agregar llave (Add key).


Repositorio externo en Github:

1. Ir al repositorio, luego a Configuración  (o Settings), y después a Deploy Keys.

2. Click en el botón de Agregar llave (Add Keys).

3. Copiar la llave pública generada en Odoo.sh, poner un título y hacer click en el botón Agregar llave (Add key).


Desde la línea de comandos, agrega el submódulo en el repositorio del proyecto.

git submodule add -b <branch> <url del repositorio externo>
git commit -a && git push -u <remote> <local branch>


En ambos casos (agregar repositorio público y privado) el commit en el repositorio de Odoo.sh generará un nuevo build en Odoo.sh.

Qué significa cada parámetro

git submodule add -b <branch> <url del repositorio externo> 
git commit -a && git push -u <remote> <local branch>


<branch>: branch del repositorio externo que quiero agregar como submódulo.
<url del repositorio externo>: url del repositorio externo que quiero agregar como submódulo.
<remote>: repositorio al que quiero agregar el submódulo, por lo general, "origin".
<local branch>: la rama (branch) del repositorio local al que quiero agregar el submódulo.

Ejemplo:

git submodule add -b develop git@gitlab.com:ateneolab/common/importaciones.git 
git commit -a && git push -u origin main


El uso de submódulos en los proyectos de Odoo.sh es una práctica altamente recomendada para organizar el código, desacoplar los desarrollos y reutilizar nuestro trabajo.

Si tienes cualquier duda sobre el trabajo con Odoo.sh y los submódulos puedes escribir en los comentarios.

Cómo configurar submódulos en Odoo.sh
Yusnier Matos Arias 4 abril, 2021
Share this post
Categorías
Archivar
Identificarse to leave a comment