Tenemos algunas dudas al llevar la aplicación a producción, por un lado tenemos el instalador web provisto
que resuelve gran parte de las tareas de deploy en muy buena forma. Por otra parte no nos convence correr la web de instalación
en un servidor en producción y preferiríamos un script de consola para instalar la aplicación.
En fin, buscamos una solución intermedia. Además, disponemos de nginx y no de apache.
Tal solución podría ser:
Supongamos que creamos un proyecto llamado pruebas, lo empaquetamos y corremos el instalador web todo en la máquina del desarrollador.
Tenemos como resultado por un lado la db con sus esquemas para negocio, toba y auditoria, y por otro, en filesystem la carpeta pruebas con sus subcarpetas aplicacion, instalacion y toba.
En este punto la idéa sería llevar a producción y en pocos pasos lo generado por el instalador web, haríamos:
En la primera instalación crear en produccion la base del sistema utilizando un dump de la creada por el instalador web.
Pasar al administrador web la carpeta pruebas generada por el instalador web para que la publique en nginx.
indicarle al adminstrador web que corrija los archivos propios de la instalacion acorde al entorno de produccion, esto son:
instalacion/bases.ini (para poner los usuarios correctos de db y/o agregar conexiones a otras bases)
instalacion/toba.conf (solo para apache)
/instalacion/i__produccion/instancia.ini
/toba/bin/entorno_toba_2.3.sh
Hasta acá todo parece funcionar correctamente.
la duda viene con las actualizaciones, puesto que tenemos otros mecanismos para actualizar el esquema de negocios, decidimos
no pasar al administrador de db scripts sql para que actualice los esquemas, pero pensamos que sí debería actualizarse toba_pruebas para mantenerlo acorde a los nuevos metadatos de filesystem y lo hacemos corriendo en producción el comando toba proyecto regenerar.
Lo probamos con un proyecto chico y al parecer funciona correctamente, quisieramos saber si se les ocurre algún impedimento
que no advertimos nosotros para aplicar esta técnica de deploy
Gracias!