SIU-Sanaviron-Quilmes/version2.0.0/instalar sq produccion
En esta sección se va a encontrar información sobre:
- Requisitos para la instalación.
- Instalación de los distintos sub módulos de SIU Sanaviron Quilmes.
- Configuración para establecer la comunicación entre los distintos sub módulos y otros módulos (SIU Pilagá, SIU Guaraní, Agentes de cobranza)
Requisitos
Herramientas | Núcleo | Académico | G.C.O. | SQ Pagos |
---|---|---|---|---|
Git | Si | Si | Si | Si |
SVN | Si | Si | ||
Postgres | >=9.5 | >=9.5 | ||
PHP | 7.3 | 7.3 | 7.3 | |
Extensiones PHP | php-pgsql, php-gd, php-curl, php-mbstring, php-dom php-mcrypt | php-pgsql, php-gd, php-curl, php-mbstring, php-dom php-mcrypt | php-curl | |
PHP-Composer | Si | Si | Si | |
NodeJS | Si | Si | SI | |
Bower | Si | Si | ||
Java | openjdk version 1.8.0 | openjdk version 1.8.0 |
- Nota: La base de datos debe tener la codificación es_AR.UTF8
PHP Composer: https://getcomposer.org/doc/00-intro.md#installation-linux-unix-osx
Redis: https://redis.io/topics/quickstart
NodeJs: https://nodejs.org/en/download/package-manager
Instalación
Si no tiene instalado Apache y los módulos puede ejecutarlos con la siguiente linea:
apt-get install apache2 libapache2-mod-php php-cli php-pgsql php-gd php-curl php-mbstring php-dom php-mcrypt php-soap
Iniciar módulo rewrite
a2enmod rewrite
Instalación de bower
sudo npm install -g bower
Definir zona horaria en PHP
date.timezone=America/Argentina/Buenos_Aires
El servidor debe tener configurada la fecha correctamente para que la comunicación entre los sistemas propios y externos no genere inconvenientes.
Se recomienda utilizar el servicio NTP y utilizar los servidores de south-america.pool.ntp.org
Instalación:
# apt-get install ntp
# vi /etc/ntp.conf
- server 0.south-america.pool.ntp.org
- server 1.south-america.pool.ntp.org
- server 2.south-america.pool.ntp.org
- server 3.south-america.pool.ntp.org
# /etc/init.d/ntp restart
SQ Núcleo
- Descarga de fuentes.
Posicionarse en la ubicación deseada para la instalación del proyecto:El proyecto está disponible en https://hub.siu.edu.arcd /usr/local/proyectos/sanaviron_quilmes/Descargar las dependencias mediante Composergit clone -b master https://hub.siu.edu.ar/sanaviron-quilmes/nucleo.git
cd nucleocomposer install --no-dev - Configuración de la instalación
Hay que definir muchas variables para completar la instalación. No hay que preocuparse si hay algo mal definido ya que todo lo que se define acá puede ser modificado luego a través de archivos de configuración de SIU-Sanavirón-Quilmes. Para mayor comodidad, se entrega un archivo instalador.env de variables de entorno listo para ser completado. En la página Variables de entorno para la instalación del se explica en detalle cada una. El instalador dispone de un comando para inicializar el archivo de variables de entorno:Esto creará el archivo en la raíz del proyecto, el cual debe ser editado según las necesidades. Una vez editado el archivo, se puede proceder a realizar la instalación de SIU-Sanaviron-Quilmes: Núcleo./bin/instalador proyecto:definir-variables - Instalar el sistema
El proceso de instalar es simple y estándar, basado en el proyecto para instalación de soluciones SIU. En la misma consola, ejecutar:./bin/instalador proyecto:instalar --crear-db - Corregir los permisos
Es imprescindible que se configuren los permisos de forma adecuada. Para ello una forma es asignar permisos de usuario de modo que <mi-usuario> pueda leer, modificar y ejecutar los archivos del proyecto mientras asignar los permisos de grupo al que corre el servidor web para que este pueda acceder a los archivos. Esto se logra ejecutando como administrador:Nota: Existen otras variantes del esquema de permisos y opciones, ver más con ./bin/instalador ayudasudo ./bin/instalador permisos:simple -U www-data -W www-data
Importante: Si utiliza como usuario y grupo www-data deberá agregar el usuario que ejecutará el cron al grupo www-data. El grupo www-data deberá tener permisos de escritura para los usuarios del grupo. - Sacar al sistema de modo mantenimientosudo ./bin/instalador instalacion:modo-mantenimiento --sin-mantenimiento
- Configurar el servidor web Apache
Se proporciona un archivo de configuración muy simple, a modo de guía y con las rutas necesarias. Para probarlo, basta con ejecutar:Por último, se requiere tener activo el módulo de reescritura de url del servidor web Apache:sudo ln -s ./config/toba.conf /etc/apache2/sites-enabled/sq_nucleo.confsudo a2enmod rewrite
sudo service apache2 restart - Iniciar el servidor Jasper
Para poder generar los comprobantes será necesario iniciar el servidor Jasper.java -jar ./vendor/siu-toba/jasper/JavaBridge/WEB-INF/lib/JavaBridge.jar SERVLET:8081 - Configurar el cronPara que el planificador de tareas se ejecute cada un minuto en búsqueda de tareas programadas hay que agregar al crontab la siguiente línea:crontab -eNota: Se ponen los 5 asteriscos para que este comando se ejecute cada un minuto. Este comando se encarga de verificar cada minuto si es el momento de ejecutar determinada tarea según se haya configurado en la operación toba Procesos > Planificador de tareas. Luego guardar el archivo y reiniciar la pc. Configurar la ejecución programada de procesos En toba hay que ir a la operación Procesos > Planificador de tareas. Por cada proceso se agrega una fila en el formulario multilínea. La idea es que elijan como frecuencia DIARIO y los programen con 30 minutos de separación entre cada proceso.* * * * * <path proyecto NUCLEO>/bin/sq tareas_planificadas
- Configurar la ejecución programada de procesos
En toba hay que ir a la operación Procesos > Planificador de tareas. Por cada proceso se agrega una fila en el formulario multilínea. La idea es que elijan como frecuencia DIARIO y los programen con 30 minutos de separación entre cada proceso. - Iniciar Workers (cola de mensajes)
Una vez finalizada la instalación o actualización del sistema, este deberá quedar preparado para enviar los mensajes a los sistemas correspondientes. Para que esta cola de mensajes sea leída en forma asíncrona y realice los envíos se debe mantener corriendo el siguiente comando en el servidor:Una vez ejecutado el comando, este inicia los workers que quedán a la espera de nuevos mensajes que se enviarán a la cola para posteriormente realizar el envío al destinatario correspondiente. Para que el comando corra de manera ininterrumpida se puede utilizar el siguiente enfoque:./bin/sq iniciar_workers
Supervisor
...
...
standalone="true"
SQ Académico
- Descarga de fuentes.
Posicionarse en la ubicación deseada para la instalación del proyecto:El proyecto está disponible en https://hub.siu.edu.arcd /usr/local/proyectos/sanaviron_quilmes/Descargar las dependencias mediante Composergit clone -b master https://hub.siu.edu.ar/sanaviron-quilmes/academico.git
cd academicocomposer install --no-dev - Configuración de la instalación
Hay que definir muchas variables para completar la instalación. No hay que preocuparse si hay algo mal definido ya que todo lo que se define acá puede ser modificado luego a través de archivos de configuración de SIU-Sanavirón-Quilmes. Para mayor comodidad, se entrega un archivo instalador.env de variables de entorno listo para ser completado. En la página Variables de entorno para la instalación del se explica en detalle cada una. El instalador dispone de un comando para inicializar el archivo de variables de entorno:Esto creará el archivo en la raíz del proyecto, el cual debe ser editado según las necesidades. Una vez editado el archivo, se puede proceder a realizar la instalación de SIU-Sanaviron-Quilmes: Académico./bin/instalador proyecto:definir-variables - Instalar el sistema
El proceso de instalar es simple y estándar, basado en el proyecto para instalación de soluciones SIU. En la misma consola, ejecutar:./bin/instalador proyecto:instalar --crear-db - Corregir los permisos
Es imprescindible que se configuren los permisos de forma adecuada. Para ello una forma es asignar permisos de usuario de modo que <mi-usuario> pueda leer, modificar y ejecutar los archivos del proyecto mientras asignar los permisos de grupo al que corre el servidor web para que este pueda acceder a los archivos. Esto se logra ejecutando como administrador:Nota: Existen otras variantes del esquema de permisos y opciones, ver más con ./bin/instalador ayudasudo ./bin/instalador permisos:simple -U www-data -W www-data
Importante: Si utiliza como usuario y grupo www-data deberá agregar el usuario que ejecutará el cron al grupo www-data. El grupo www-data deberá tener permisos de escritura para los usuarios del grupo. - Sacar al sistema de modo mantenimientosudo ./bin/instalador instalacion:modo-mantenimiento --sin-mantenimiento
- Configurar el servidor web Apache
Se proporciona un archivo de configuración muy simple, a modo de guía y con las rutas necesarias. Para probarlo, basta con ejecutar:Por último, se requiere tener activo el módulo de reescritura de url del servidor web Apache:sudo ln -s ./config/toba.conf /etc/apache2/sites-enabled/sq_uv.confsudo a2enmod rewrite
sudo service apache2 restart - Iniciar el servidor Jasper
Para poder generar los comprobantes será necesario iniciar el servidor Jasper.java -jar ./vendor/siu-toba/jasper/JavaBridge/WEB-INF/lib/JavaBridge.jar SERVLET:8081 - Configurar el cronPara que el planificador de tareas se ejecute cada un minuto en búsqueda de tareas programadas hay que agregar al crontab la siguiente línea:crontab -eNota: Se ponen los 5 asteriscos para que este comando se ejecute cada un minuto. Este comando se encarga de verificar cada minuto si es el momento de ejecutar determinada tarea según se haya configurado en la operación toba Procesos > Planificador de tareas. Luego guardar el archivo y reiniciar la pc. Configurar la ejecución programada de procesos En toba hay que ir a la operación Procesos > Planificador de tareas. Por cada proceso se agrega una fila en el formulario multilínea. La idea es que elijan como frecuencia DIARIO y los programen con 30 minutos de separación entre cada proceso.* * * * * <path proyecto UV>/bin/sq tareas_planificadas
- Configurar la ejecución programada de procesos
En toba hay que ir a la operación Procesos > Planificador de tareas. Por cada proceso se agrega una fila en el formulario multilínea. Los procesos que deberías configurar son los siguientes en este orden:- Generar_reporte_cobranzas_recibidas (Guarda en la tabla rep_cobranzas_recibidas los payments de MP. necesario para la operación de conciliaciones
- Vencer ventas
- Anular inscripciones g3 (Anula las inscripciones que quedaron en estado inicio_cobro_digital o pendiente si pasaron 6 hs desde la generación de la misma. Anula las inscripciones que quedaron en pendiente_cobro_digital si pasaron 3 días desde la generación de la misma.)
- Notificar morosos a g3 (Notifica a guarSe deben editar:ani todos los ids de los clientes que no pagaron pasada la fecha de vencimiento)
- Enviar notificaciones por email a clientes
- Notificar ventas al nucleo (Envía al núcleo las ventas que se encuentran cobradas y que la comisión a la que pertenecen está confirmada)
- La idea es que elijan como frecuencia DIARIO y los programen con 30 minutos de separación entre cada proceso.
- El proceso generar_reporte_cobranzas_recibidas se podría configurar para que se ejecute cada media hora y mantener lo más actualizado posible el informe de Conciliaciones.
- Iniciar Workers (cola de mensajes)
Una vez finalizada la instalación o actualización del sistema, este deberá quedar preparado para enviar los mensajes a los sistemas correspondientes. Para que esta cola de mensajes sea leída en forma asíncrona y realice los envíos se debe mantener corriendo el siguiente comando en el servidor:Una vez ejecutado el comando, este inicia los workers que quedán a la espera de nuevos mensajes que se enviarán a la cola para posteriormente realizar el envío al destinatario correspondiente. Para que el comando corra de manera ininterrumpida se puede utilizar el siguiente enfoque:./bin/sq iniciar_workers
Supervisor
Para realizar validaciones generales puede ejecutar el comando
sq validar_instalacion
SQ G.C.O.
- Descarga de fuentes.
Posicionarse en la ubicación deseada para la instalación del proyecto:El proyecto está disponible en https://hub.siu.edu.arcd /usr/local/proyectos/sanaviron_quilmes/Descargar las dependencias mediante Composergit clone -b master https://hub.siu.edu.ar/sanaviron-quilmes/gco.git
cd gcocomposer install - Configuración de la instalación
Hay que definir muchas variables para completar la instalación. No hay que preocuparse si hay algo mal definido ya que todo lo que se define acá puede ser modificado luego a través de archivos de configuración de SIU-Sanavirón-Quilmes. Para mayor comodidad, se entrega un archivo instalador.env de variables de entorno listo para ser completado. En la página Variables de entorno para la instalación del se explica en detalle cada una. El instalador dispone de un comando para inicializar el archivo de variables de entorno:Esto creará el archivo en la raíz del proyecto, el cual debe ser editado según las necesidades. Una vez editado el archivo, se puede proceder a realizar la instalación de SIU-Sanaviron-Quilmes: G.C.O../bin/instalador proyecto:definir-variables - Instalar el sistema
El proceso de instalar es simple y estándar, basado en el proyecto para instalación de soluciones SIU. En la misma consola, ejecutar:./bin/instalador proyecto:instalar - Corregir los permisos
Es imprescindible que se configuren los permisos de forma adecuada. Para ello una forma es asignar permisos de usuario de modo que <mi-usuario> pueda leer, modificar y ejecutar los archivos del proyecto mientras asignar los permisos de grupo al que corre el servidor web para que este pueda acceder a los archivos. Esto se logra ejecutando como administrador:Nota: Existen otras variantes del esquema de permisos y opciones, ver más con ./bin/instalador ayudasudo ./bin/instalador permisos:simple -U <mi-usuario> -W www-data - Configurar el servidor web Apache
Se proporciona un archivo de configuración muy simple, a modo de guía y con las rutas necesarias. Para probarlo, basta con ejecutar:Por último, se requiere tener activo el módulo de reescritura de url del servidor web Apache:sudo ln -s ./config/alias.conf /etc/apache2/sites-enabled/gco.confsudo a2enmod rewrite
sudo service apache2 restart
SQ Pagos
- Descarga de fuentes.
Posicionarse en la ubicación deseada para la instalación del proyecto:El proyecto está disponible en https://hub.siu.edu.arcd /usr/local/proyectos/sanaviron_quilmes/git clone -b master https://hub.siu.edu.ar/sanaviron-quilmes/sq_pagos.git
cd sq_pagos - Configuración de la instalación
Editar el archivo config/angular-config.json:IMPORTANTE: Si realiza cambios en este archivo posteriormente a la instalación deberá ejecutar nuevamente el punto 3 (Instalar sistema).{
"entorno": "desarrollo",
"desarrollo": {
"config": {
"api_backend_url": "http://ip_servidor/sq_pagos_backend/",
"titulo": "Universidad de prueba :: Plataforma de pagos :: SIU-Sanaviron-Quilmes"
}
},
"produccion": {
"config": {
"api_backend_url": "http://ip_servidor/sq_pagos_backend/",
"titulo": "Universidad de prueba :: Plataforma de pagos :: SIU-Sanaviron-Quilmes"
}
}
} - Instalar el sistemaexport NODE_VERSION=4.5.0
export NVM_DIR=/home/node/.nvm
git clone https://github.com/creationix/nvm.git ~/.nvm && cd ~/.nvm && git checkout `git describe --abbrev=0 --tags`
. ~/.nvm/nvm.sh && nvm install $NODE_VERSION
echo ". ~/.nvm/nvm.sh" >> ~/.bashrc
. ~/.nvm/nvm.sh && nvm use $NODE_VERSION
cd /usr/local/proyectos/sanaviron_quilmes/sq_pagos
npm install --unsafe-perm - Configurar el servidor web ApachePor último, se requiere tener activo el módulo de reescritura de url del servidor web Apacheln -s ./config/sq_pagos.conf /etc/apache2/sites-enabled/sq_pagos.confsudo a2enmod rewrite
sudo service apache2 restart
Agente de cobranzas