SIU-Guarani/Version3.19.0/actualizacion de produccion/gestion
Actualización del SIU-Guaraní Gestión a la versión 3.19.x.y en entorno de producción
Requisitos previos a la actualización
- Haber creado la versión propia de SIU-Guaraní Gestión
Configuraciones del servidor de producción
Chequear que el servidor de producción esté configurado como se indica en esta documentación.
Actualización de la versión
A lo largo de los pasos se deberá reemplazar:
- <path proyecto Guaraní>: por el path donde está instalado el proyecto
- <siglas institución>: por las siglas correspondientes a la institución que realiza la instalación
- 3.19.x.y: por la versión propia a la que se quiere actualizar
Los pasos a realizar son:
- Verificar que se cumplan todos los requisitos técnicos de la versión.
- Mover la carpeta de procesos background de <path_guarani>/temp a <path_guarani>/instalacion/i__desarrollo/p__guarani/logs/ mas info
- Realizar un backup integral de la base de datos.
- Exportar datos locales. Dentro de la carpeta 'bin' (<path proyecto Guaraní>/bin) ejecutar:
- ./guarani instancia_exp_local
- Apuntar el servidor de producción a la nueva versión 3.19.x.y
- Dentro de la carpeta del proyecto (<path proyecto Guaraní>) ejecutar:
- svn switch https://colab.siu.edu.ar/svn/guarani3/nodos/<siglas institución>/gestion/versiones/3.19.x.y
- Importante: en versiones nuevas de svn puede salir un error:
- svn: E195012: Path '.' does not share common version control ancestry with the requested switch location. Use --ignore-ancestry to disable this check.
- en ese caso, ejecutar el comando anterior siguiendo lo recomendado en el mensaje:
- svn switch https://colab.siu.edu.ar/svn/guarani3/nodos/<siglas institución>/gestion/versiones/3.19.x.y --ignore-ancestry
- Antes de ejecutar el siguiente paso, es fundamental asegurar tener composer y yarn instalados. Para verificarlo, se pueden correr los siguientes comandos y verificar que no surjan errores:
- composer --version
yarn --version
- Instalar vía Composer las dependencias del proyecto. Posicionados en la raíz <path proyecto Guaraní>, ejecutar:
- composer install --prefer-dist --no-dev --optimize-autoloader
- Verificar que el comando anterior finalice sin errores para continuar.
- Si se está actualizando desde una versión 3.15.0 o posterior, omitir este paso.
- Realizar un backup de la carpeta <path_proyecto>/lib/toba/instalacion.
- En una consola en <path_proyecto>/bin ejecutar:
- ./reestructurar
- Es un comando que se corre por única vez para reubicar la carpeta instalacion, que pasa a estar en la raíz del proyecto, eliminar recursos obsoletos y ajustar paths en los archivos de configuración.
- Seguir las instrucciones finales brindadas por el comando, relativo al ajuste de archivos de configuración de Apache.
- Reiniciar Apache.
- service apache2 restart
- Regenerar la instancia Toba. Dentro de la carpeta 'bin' (<path proyecto Guaraní>/bin) ejecutar:
- ./toba instancia regenerar -i desarrollo
- Nota: ante la pregunta "Desea conservar datos locales como usuarios y logs? (Si o No)" responder n.
- Migrar la base de datos negocio. Dentro de la carpeta 'bin' (<path proyecto Guaraní>/bin) ejecutar:
- ./guarani migrar_base
- Importante:: si se contara con personalizaciones de base de datos, y como parte de las mismas se diera el caso de vistas que referencian a tablas (u otras vistas) que desde el SIU modificamos, pueden aparecer errores en la migración. En ese caso, la recomendación es borrarlas, ejecutar el comando, y luego volver a crearlas.
- Compilar metadatos. Dentro de la carpeta 'bin' (<path proyecto Guaraní>/bin) ejecutar:
- ./guarani compilar
- Al compilar los metadatos se generará la carpeta <path proyecto Guaraní>/metadatos_compilados, que no debe versionarse (svn commit) ya que se regenerará cada vez que se actualice la versión de producción.
- Editar el archivo aplicacion.php (<path proyecto Guaraní>/www/aplicacion.php):
- Descomentar la siguiente línea para indicar que se trabajará con metadatos compilados:
- define('apex_pa_metadatos_compilados', 1);
- Establecer el nivel de log en un nivel razonable para producción (notice o error), descomentando y editando la siguiente línea:
- define("apex_pa_log_archivo_nivel", 3); // 3: error | 5: notice
- Descomentar la siguiente línea para indicar que se trabajará con metadatos compilados:
- Configurar la API REST, (si es que no lo hizo antes)