Cómo usar Odoo.SH
La Plataforma en la Nube de Odoo
Hay cosas en las cuales Odoo ha avanzado mucho últimamente. Y sin lugar a dudas la plataforma Odoo.SH es una de las más interesantes, a la par que puede resultar un tanto molesta para quienes programamos sobre un servidor dedicado y montado de forma personalizada. El entorno enterprise será con Odoo.SH, mientras que el community será una instalación tradicional en un server propio o una VPS.
Requisitos
Una cuenta GitHub, no sirve en otros sistemas de repositorios remotos como BitBucket, tiene que ser GitHub. Básicamente, la cuenta de GitHub será nuestra cuenta Odoo.SH, y cada instalación Odoo tendrá su repositorio con todos sus módulos. Por lo tanto, es importante aprender a trabajar con submodulos de Git. Y si, es necesario tener una suscripción paga (licencia) de Odoo.
Primeros pasos
Es realmente muy intuitivo. Al loguearnos con nuestro GitHub podremos acceder a nuestros proyectos de Odoo, en principio no tendremos ninguno. Le daremos a crear y nos saldrá una ventana muy simple para elegir si queremos crear un nuevo repositorio o si ya existe el repositorio en cuestión. Incluiremos nuestro código de suscripción Odoo y la región (Americas, Asia, Europa). Si lo creamos de cero se nos generará un repositorio en nuestro GitHub que estará vacío. Si no, el repositorio de GitHub que carguemos vendrá a ser para Odoo como una carpeta de Addons, de ahí al conveniencia de trabajar con submódulos.
Creando entornos
Una de las opciones más interesantes es la posibilidad de crear entornos de Staging y de Dev sin estar armando múltiplicidad de servidores. Al crear un entorno pedirá ingresar el nombre de la Branch que va a clonar, ya que cada entorno tendrá su propio Branch. Los entornos Dev están pensados para hacer implementación de Features, mientras que los Staging son dedicados al testeo de dichas implementaciones y a la capacitación de nuevos usuarios. Por cada entorno, además, se generará una base de datos nueva copiando la base de datos del Branch que se clona. Hay que tener en cuenta que los Branchs de Staging son limitados y que deben abonarse a parte (la tarifa de la suscripción de Odoo.SH varía según las necesidades, cada branch para Staging se abona a parte y el pago es mensual).
Creando módulos
Cada carpeta que creemos en nuestro repositorio será analizada por Odoo.SH en busca del archivo __manifest__.py. En caso de encontrarlo, tratará a dicha carpeta como un módulo de Odoo (aclarando siempre que se necesitan más cosas para que funcione como un módulo). Cada vez que hagamos git push en el repositorio, la Branch correspondiente volverá a construir la plataforma con la base de datos tal cual estaba. A fines prácticos, es como si reiniciara el server, pero no actualiza los módulos. Así que, en caso de hacer modificaciones al Python, será suficiente volviendo a entrar; pero si se hicieron modificaciones a las vistas XML será necesario, además, actualizar el módulo.
Otras herramientas
Por supuesto, para desarrollar por mucho Git y GitHub que se use se sigue quedando corto. Así es que Odoo.SH añade una serie de features interesantes. Cada Branch, además de una pestaña bastante útil llamada History (la cual muestra el historial de commits) incluye las siguientes herramientas:
Shell: La terminal del sistema, linkeado al OS donde se encuentra alojado Odoo. Básicamente nos permite ingresar al server como si estuviéramos en SSH, muy útil para instalar paquetes de Python por ejemplo (tener en cuenta que cada Branch es tratado como un servidor independiente).
Editor: Nos permite editar archivos mediante el uso de distintas herramientas.
Logs: Imprime un archivo de log en tiempo real, útil para debugear.
Backups: Administrador de backups del sitio web, además de incluir una herramienta muy simple para importar bases de datos lo cual es una gran ayuda al momento de migrar versión de Odoo.
Settings: Configuración de la branch, dependiendo si es una branch Dev, Staging o Production las opciones será distintas.
No hay mayor misterio que este con Odoo.SH, realmente es un sistema muy cómodo para trabajar, aunque por eso vale lo que vale. Una buena opción es contactar un Partner de Odoo local, con quien siempre se puede obtener el precio más bajo posible (ya que arman la configuración a medida) además de soporte. En Argentina y América Latina, nosotros trabajamos y recomendamos a Taranis.
Quiciéramos profundizar en las herramientas, que es una parte fundamental, pero quedaría el post demasiado largo. Por ende lo dejamos para otra ocasión.
Acerca de:
Ignacio Buioli
Degree on Multimedia Arts. He has developed numerous Multimedia projects as well as written articles and translated texts of the mentioned subject. In Moldeo Interactive, He is a Partner and Programmer; also taking care of a large part of the online networks and courses.