Diferencia entre revisiones de «Pirapire/version3.0.0/instalacion actualizacion»

De SIU
Saltar a: navegación, buscar
(Actualización de una instalación con personalizaciones)
 
(No se muestran 29 ediciones intermedias de 4 usuarios)
Línea 1: Línea 1:
[[Archivo:siu-pilaga_iso.png|derecha|link=Pirapire/version3.0.0]]<br />
+
[[Archivo:pirapire_iso.png|derecha|link=Pirapire/version3.0.0]]<br />
 +
[[Pirapire/version_3.0.0|<Volver]]
 +
 
 +
 
 
= Instalación/Actualización del sistema Pirapire =
 
= Instalación/Actualización del sistema Pirapire =
  
Línea 6: Línea 9:
  
 
Se recomienda realizar dos instalaciones del sistema, una para los usuarios y otra para el equipo informático, tanto durante el período de testeo como durante la etapa de producción del sistema, de manera de independizar las pruebas que se realizan.
 
Se recomienda realizar dos instalaciones del sistema, una para los usuarios y otra para el equipo informático, tanto durante el período de testeo como durante la etapa de producción del sistema, de manera de independizar las pruebas que se realizan.
Considere la instalación del navegador en cada estación de trabajo, el sistema SIU-Pilagá fue desarrollado para funcionar en forma óptima en el Mozilla Firefox, las últimas versiones del mismo tienen un manejo optimizado de la memoria.
+
Considere la instalación del navegador en cada estación de trabajo, el sistema Pirapire fue desarrollado para funcionar en forma óptima en el Mozilla Firefox, las últimas versiones del mismo tienen un manejo optimizado de la memoria.
  
 
== Requerimientos ==
 
== Requerimientos ==
Línea 15: Línea 18:
  
 
=== Requisitos LINUX ===
 
=== Requisitos LINUX ===
Los requerimientos para instalación/actualización en un servidor GNU/Linux son las siguientes: [http://documentacion.siu.edu.ar/wiki/SIU-Pilaga/Version_3.11.0/instalacion_actualizacion/requisitos_previos/linux Instalación manual en GNU/Linux]
+
Los requerimientos para instalación/actualización en un servidor GNU/Linux son las siguientes: [http://documentacion.siu.edu.ar/wiki/Pirapire/Version_3.0.0/instalacion_actualizacion/requisitos_previos/linux Instalación manual en GNU/Linux]
  
 
=== Tabla de requerimientos de versiones ===
 
=== Tabla de requerimientos de versiones ===
Línea 29: Línea 32:
 
|-  
 
|-  
 
|  PHP             
 
|  PHP             
||  7.3.x  (con las extensiones: xml, gd, pdo_pgsql, curl, zip).
+
||  7.4.x  (con las extensiones: xml, gd, pdo_pgsql, curl, zip).
 
|-  
 
|-  
Graphviz       
+
Composer     
||  2.9.x o superior
+
||  2.2.x
 
|-  
 
|-  
Java Runtime Environment       
+
Git     
|| 1.8.x (se requiere tener instalado JRE debido a que se utiliza la tecnología JasperReports para realizar la generación de todos los documentos/comprobantes emitidos por el sistema).
+
||  
 
|-  
 
|-  
Composer        
+
Yarn        
||  1.10.x
+
||   
 
|-  
 
|-  
Yarn        
+
Redis        
 
||   
 
||   
 
|}
 
|}
Línea 46: Línea 49:
 
== Instalación ==
 
== Instalación ==
  
La instalación del sistema SIU-Pilagá se realiza mediante el instalador de proyectos y aplicaciones SIU integrado dentro del código fuente del sistema que distribuye el SIU. El cual brinda los mecanismos mínimos necesarios para realizar una instalación de forma estandarizada, homogénea y controlable.
+
La instalación del sistema Pirapire se realiza mediante el instalador de proyectos y aplicaciones SIU integrado dentro del código fuente del sistema que distribuye el SIU. El cual brinda los mecanismos mínimos necesarios para realizar una instalación de forma estandarizada, homogénea y controlable.
  
 
=== Pasos previos a un proceso de instalación ===
 
=== Pasos previos a un proceso de instalación ===
  
#Antes de realizar la instalación o actualización verificar [[SIU-Pilaga/version3.11.0/instalacion actualizacion#Requerimientos|Requerimientos Previos]]
+
#Antes de realizar la instalación o actualización verificar [[Pirapire/version3.0.0/instalacion actualizacion#Requerimientos|Requerimientos Previos]]
#Descargar el sistema de SIU-Pilaga desde el sitio http://portal.comunidad.siu.edu.ar/ cuyo nombre es '<nowiki/>'''SIU-Pilaga_3.X.X.zip''''.  
+
#Descargar el sistema de Pirapire desde el sitio https://gitlab.sistemas.unam.edu.ar/sistemas/pirapire mediante Git.  
#Descomprimir el archivo y copiar el directorio SIU-Pilagá en la máquina destino en el directorio donde se desea instalar el sistema.
+
#Descomprimir el archivo y copiar el directorio Pirapire en la máquina destino en el directorio donde se desea instalar el sistema.
#Luego ingresar al directorio recién descomprimido de SIU-Pilagá (ultima versión) y ejecutar:
+
#Luego ingresar al directorio recién descomprimido de Pirapire (ultima versión) y ejecutar:
 
#:<source lang="bash" enclose="div">
 
#:<source lang="bash" enclose="div">
 
composer install --no-dev
 
composer install --no-dev
Línea 61: Línea 64:
 
./bin/instalador proyecto:definir-variables
 
./bin/instalador proyecto:definir-variables
 
</source>
 
</source>
#:Esto creará el archivo '''instalador.env''', luego configurar con los datos correspondientes al proyecto y a toba. Los datos que están comentados con el símbolo numeral # no son datos obligatorios, los demás datos son requeridos que se completen. Dentro del archivo de parámetros del instalador podemos configurar por separado la base de datos de negocio de Pilagá y la de Toba, o podemos tener las dos dentro de una misma base de datos como es la opción por defecto, lo recomendable para un ambiente de producción es que tanto los schemas de de la base de datos negocio de Pilagá y los schemas de Toba estén todos dentro de una misma base de datos . Para obtener mayor información sobre cada parámetro de configuración del instalador abrir el siguiente link:  [http://documentacion.siu.edu.ar/wiki/SIU-Pilaga/version3.11.0/instalacion_actualizacion/instalador_env_vars Variables de entorno para la instalación]
+
#:Esto creará el archivo '''instalador.env''', luego configurar con los datos correspondientes al proyecto y a toba. Los datos que están comentados con el símbolo numeral # no son datos obligatorios, los demás datos son requeridos que se completen. Dentro del archivo de parámetros del instalador podemos configurar por separado la base de datos de negocio de Pirapire y la de Toba, o podemos tener las dos dentro de una misma base de datos como es la opción por defecto, lo recomendable para un ambiente de producción es que tanto los schemas de de la base de datos negocio de Pirapire y los schemas de Toba estén todos dentro de una misma base de datos . Para obtener mayor información sobre cada parámetro de configuración del instalador abrir el siguiente link:  [http://documentacion.siu.edu.ar/wiki/Pirapire/version3.0.0/instalacion_actualizacion/instalador_env_vars Variables de entorno para la instalación]
 
#El archivo binario de instalación debe tener permisos de ejecución para esto ejecutar:
 
#El archivo binario de instalación debe tener permisos de ejecución para esto ejecutar:
 
#:<source lang="bash" enclose="div">
 
#:<source lang="bash" enclose="div">
Línea 67: Línea 70:
 
</source>
 
</source>
  
=== Instalación desde cero sin personalizaciones ===
+
=== Instalación desde cero ===
  
Para realizar una instalación de cero sin personalizaciones, es necesario iniciar una instalación en modo producción ya que no es necesario requerir de los proyectos Toba Editor y Toba Referencias.
+
Para realizar una instalación de cero, es necesario iniciar una instalación en modo producción ya que no es necesario requerir de los proyectos Toba Editor y Toba Referencias.
  
Una vez realizado lo explicado en el ítem de [[SIU-Pilaga/Version_3.11.0/instalacion_actualizacion#Instalaci.C3.B3n|Pasos previos a un proceso de instalación]], el instalador nos proporciona distintas opciones de ejecución del comando de instalación dependiendo de la configuración:
+
Una vez realizado lo explicado en el ítem de [[Pirapire/Version_3.0.0/instalacion_actualizacion#Instalaci.C3.B3n|Pasos previos a un proceso de instalación]], el instalador nos proporciona distintas opciones de ejecución del comando de instalación dependiendo de la configuración:
  
 
Para instalar en entorno de producción con una base de datos existente vacía ejecutar:
 
Para instalar en entorno de producción con una base de datos existente vacía ejecutar:
Línea 86: Línea 89:
 
</source>
 
</source>
  
Una vez ejecutado el comando de instalación, el propio instalador nos proporciona los pasos a seguir, para mas información ver el apartado [[SIU-Pilaga/Version_3.11.0/instalacion_actualizacion#Post_Instalaci.C3.B3n|Post instalación]]
+
Una vez ejecutado el comando de instalación, el propio instalador nos proporciona los pasos a seguir, para mas información ver el apartado [[Pirapire/Version_3.0.0/instalacion_actualizacion#Post_Instalaci.C3.B3n|Post instalación]]
 
 
=== Instalación desde cero en entorno de desarrollo ===
 
 
 
Para realizar una instalación de cero con personalizaciones, es necesario iniciar una instalación en modo desarrollo ya que es necesario requerir de los proyectos Toba Editor y Toba Referencias.
 
 
 
<source lang="bash" enclose="div">
 
No se recomienda realizar una instalación de un entorno de desarrollo para producción, ya que al contar con un sistema instalado en modo desarrollo cualquier usuario puede tener acceso
 
al proyecto Toba-Editor y poder realizar modificaciones sobre el sistema vulnerando la seguridad del mismo.
 
Otro factor a tener en cuenta es que un sistema instalado en entorno de desarrollo no maneja metadatos compilados, los cuales si se manejan en una instalación en entorno de producción y sin esto disminuye significativamente la performance del sistema.
 
</source>
 
 
 
Una vez realizado lo explicado en el ítem de [[SIU-Pilaga/Version_3.11.0/instalacion_actualizacion#Instalaci.C3.B3n|Pasos previos a un proceso de instalación]], el instalador nos proporciona distintas opciones de ejecución del comando de instalación dependiendo de la configuración:
 
 
 
Para realizar una instalación en entorno de desarrollo se debe configurar en el archivo de parámetros del instalador, '''instalador.env''', el parámetro '''ENTORNO_PRODUCCION''' con el valor 0.
 
 
 
:<source lang="bash" enclose="div">
 
ENTORNO_PRODUCCION="0"
 
</source>
 
 
 
Para instalar en entorno de desarrollo con una base de datos existente vacía ejecutar:
 
:<source lang="bash" enclose="div">
 
./bin/instalador proyecto:instalar
 
</source>
 
 
 
Como parámetros opcionales podemos agregar el siguiente argumento el cual permite crear desde el instalador una base de datos de negocio vacía:
 
 
 
:<source lang="bash" enclose="div">
 
./bin/instalador proyecto:instalar --crear-db
 
</source>
 
 
 
Otro parametro opcional es el siguiente el cual permite realizar una instalación usando una base de datos de negocio existente:
 
 
 
:<source lang="bash" enclose="div">
 
./bin/instalador proyecto:instalar --db-negocio-existente
 
</source>
 
 
 
Una vez ejecutado el comando de instalación, el propio instalador nos proporciona los pasos a seguir, para mas información ver el apartado [[SIU-Pilaga/Version_3.11.0/instalacion_actualizacion#Post_Instalaci.C3.B3n.2FActualizaci.C3.B3n|Post instalación]]
 
  
 
== Actualización ==
 
== Actualización ==
Línea 136: Línea 102:
 
===== Verificar configuración del entorno de la instalación anterior =====
 
===== Verificar configuración del entorno de la instalación anterior =====
  
Se debe abrir el archivo que se encuentra dentro del directorio de instalación anterior '<nowiki/>'''SIU-Pilaga-anterior/instalacion/entorno_toba.env''''
+
Se debe abrir el archivo que se encuentra dentro del directorio de instalación anterior '<nowiki/>'''Pirapire-anterior/instalacion/entorno_toba.env''''
  
Para el caso de una instalación en un sistema operativo Linux la estructura del archivo sera la siguiente, verificar si se encuentra correctamente configurado nuestra ruta de instalación a SIU-Pilaga
+
Para el caso de una instalación en un sistema operativo Linux la estructura del archivo sera la siguiente, verificar si se encuentra correctamente configurado nuestra ruta de instalación a Pirapire
  
 
<source lang="bash" enclose="div">
 
<source lang="bash" enclose="div">
export TOBA_DIR=/ruta_instalacion_a_pilaga/vendor/siu-toba/framework
+
export TOBA_DIR=/ruta_instalacion_a_pirapire/vendor/siu-toba/framework
 
export TOBA_INSTANCIA=produccion
 
export TOBA_INSTANCIA=produccion
export TOBA_INSTALACION_DIR=/ruta_instalacion_a_pilaga/instalacion
+
export TOBA_INSTALACION_DIR=/ruta_instalacion_a_pirapire/instalacion
 
export PATH="$TOBA_DIR/bin:$PATH"
 
export PATH="$TOBA_DIR/bin:$PATH"
 
#echo "Entorno cargado."
 
#echo "Entorno cargado."
 
#echo "Ejecute 'toba' para ver la lista de comandos disponibles."
 
#echo "Ejecute 'toba' para ver la lista de comandos disponibles."
</source>
 
 
===== Verificar configuración de la instancia de la instalación anterior =====
 
 
Para verificar si se encuentra correctamente configurada la instancia del proyecto, se debe abrir el archivo '<nowiki/>'''SIU-Pilaga/instalacion/i__produccion/instancia.ini'<nowiki/>''' y dentro de este verificar si esta configurado el parámetro '<nowiki/>'''usar_perfiles_propios = "1"'''' el cual es
 
necesario para poder realizar la migración de perfiles de la instalación anterior a la nueva instalación.
 
 
<source lang="bash" enclose="div">
 
[pilaga]
 
path = "/ruta_instalacion_a_pilaga"
 
url = "/pilaga"
 
full_url = "http://localhost/pilaga"
 
url_pers = "/pilaga_pers/"
 
usar_perfiles_propios = "1"
 
 
</source>
 
</source>
  
 
===== Verificar permisos de lectura y escritura de la instalación anterior =====
 
===== Verificar permisos de lectura y escritura de la instalación anterior =====
 
+
Durante el proceso de actualización es necesario que el usuario del sistema el cual ejecuta el instalador tenga permisos de lectura y escritura sobre el Pirapire anterior.
Durante el proceso de actualización es necesario que el usuario del sistema el cual ejecuta el instalador tenga permisos de lectura y escritura sobre el SIU-Pilaga anterior.
 
 
 
'''<big>Tener en cuenta la conexión con SIU-Araí  (Este paso es obligatorio si se utiliza SIU Arai Proveedores)</big>'''
 
 
 
[http://documentacion.siu.edu.ar/wiki/SIU-Pilaga/version3.11.0/consideraciones_tecnicas#Conectar_SIU-Pilag.C3.A1_con_SIU-Arai_Proveedores|Conectar SIU - Pilagá con SIU-Arai Proveedores]
 
 
 
[http://documentacion.siu.edu.ar/wiki/SIU-Diaguita/version2.6.0/consideraciones_tecnicas#Configuraci.C3.B3n_de_la_base_de_datos_de_Arai_Proveedores| Base de datos de Arai Proveedores]
 
  
 
<source lang="bash" enclose="div">
 
<source lang="bash" enclose="div">
Línea 177: Línea 122:
 
</source>
 
</source>
  
=== Actualización de una instalación sin personalizaciones ===
+
=== Actualización de una instalación ===
  
<youtube>3t9G4FHZM_0</youtube>
+
Antes de realizar el proceso de actualización es necesario verificar si se cumplen los requerimientos previos a una actualización en [[Pirapire/Version_3.0.0/instalacion_actualizacion#Recomendaciones_previas_a_la_actualizaci.C3.B3n|Recomendaciones previas actualización]]
  
Antes de realizar el proceso de actualización es necesario verificar si se cumplen los requerimientos previos a una actualización en [[SIU-Pilaga/Version_3.11.0/instalacion_actualizacion#Recomendaciones_previas_a_la_actualizaci.C3.B3n|Recomendaciones previas actualización]]
+
Una vez realizado lo explicado en el ítem de [[Pirapire/Version_3.0.0/instalacion_actualizacion#Pasos_previos_a_un_proceso_de_instalaci.C3.B3n|Pasos previos a un proceso de instalación]], y luego de chequear los requerimientos previos a la actualización, el instalador nos proporciona el siguiente comando para ejecutar el
 
 
Para realizar una actualización sin personalizaciones, es necesario iniciar una instalación en modo producción. El instalador no soporta actualizaciones de instalaciones en entorno de desarrollo.
 
 
 
Una vez realizado lo explicado en el ítem de [[SIU-Pilaga/Version_3.11.0/instalacion_actualizacion#Pasos_previos_a_un_proceso_de_instalaci.C3.B3n|Pasos previos a un proceso de instalación]], y luego de chequear los requerimientos previos a la actualización, el instalador nos proporciona el siguiente comando para ejecutar el
 
 
proceso de actualización:
 
proceso de actualización:
  
Línea 193: Línea 134:
 
</source>
 
</source>
  
Una vez ejecutado el comando de actualización, el propio instalador nos proporciona los pasos a seguir, para mas información ver el apartado [[SIU-Pilaga/Version_3.11.0/instalacion_actualizacion#Post_Instalaci.C3.B3n.2FActualizaci.C3.B3n|Post actualización]]
+
Una vez ejecutado el comando de actualización, el propio instalador nos proporciona los pasos a seguir, para mas información ver el apartado [[Pirapire/Version_3.0.0/instalacion_actualizacion#Post_Instalaci.C3.B3n.2FActualizaci.C3.B3n|Post actualización]]
  
 
== Post Instalación/Actualización ==
 
== Post Instalación/Actualización ==
Línea 232: Línea 173:
  
 
<source lang="bash" enclose="div">
 
<source lang="bash" enclose="div">
ln -s /ruta_instalacion/pilaga/instalacion/toba.conf /etc/apache2/sites-enabled/SIU-Pilaga.conf     
+
ln -s /ruta_instalacion/pirapire/instalacion/toba.conf /etc/apache2/sites-enabled/pirapire.conf     
 
</source>
 
</source>
  
 
Para finalizar, reiniciar el servidor apache para que tome los nuevos cambios.
 
Para finalizar, reiniciar el servidor apache para que tome los nuevos cambios.
  
Otra opción de configuración, independientemente de si se va a realizar la instalación del sistema SIU-Pilagá en un servidor Linux, es recomendable la configuración en el servidor de aplicaciones apache de un virtualhost o dominio virtual que garantice la ejecución correcta del sistema. Una de las ventajas de contar con una configuración de virtualhost es que permite realizar múltiples instalaciones del sistema SIU-Pilagá en el mismo servidor de aplicación, manejándolas de forma independiente una de la otra.  
+
Otra opción de configuración, independientemente de si se va a realizar la instalación del sistema Pirapire en un servidor Linux, es recomendable la configuración en el servidor de aplicaciones apache de un virtualhost o dominio virtual que garantice la ejecución correcta del sistema. Una de las ventajas de contar con una configuración de virtualhost es que permite realizar múltiples instalaciones del sistema Pirapire en el mismo servidor de aplicación, manejándolas de forma independiente una de la otra.  
  
Proceder a crear un archivo de nombre pilagá con el siguiente contenido:
+
Proceder a crear un archivo de nombre Pirapire con el siguiente contenido:
  
 
<source lang="apache" enclose="div">
 
<source lang="apache" enclose="div">
Línea 248: Línea 189:
 
     ### INICIO INCLUSION CONTENIDO toba.conf ###
 
     ### INICIO INCLUSION CONTENIDO toba.conf ###
  
     Include /ruta_instalacion/pilaga/instalacion/toba.conf
+
     Include /ruta_instalacion/pirapire/instalacion/toba.conf
  
 
     ### FIN INCLUSION CONTENIDO toba.conf ###
 
     ### FIN INCLUSION CONTENIDO toba.conf ###
Línea 261: Línea 202:
 
Para finalizar, reiniciar el servidor apache para que tome los nuevos cambios.
 
Para finalizar, reiniciar el servidor apache para que tome los nuevos cambios.
  
Finalmente, podrá acceder al sistema SIU-Pilagá abriendo en un navegador la dirección url <nowiki>http://servidor.universidad.edu.ar/pilaga</nowiki>.
+
Finalmente, podrá acceder al sistema Pirapire abriendo en un navegador la dirección url <nowiki>http://servidor.universidad.edu.ar/pirapire</nowiki>.
  
 
=== Chequear requerimientos web ===
 
=== Chequear requerimientos web ===
Línea 270: Línea 211:
 
### AL FINALIZAR LA INSTALACIÓN EL INSTALADOR LE GENERA UN LINK AL CHEQUEO WEB CON LA URL CONFIGURADA EN LA INSTALACIÓN ###
 
### AL FINALIZAR LA INSTALACIÓN EL INSTALADOR LE GENERA UN LINK AL CHEQUEO WEB CON LA URL CONFIGURADA EN LA INSTALACIÓN ###
  
http://servidor.universidad.edu.ar/pilaga/WebCheck.php
+
http://servidor.universidad.edu.ar/pirapire/WebCheck.php
  
 
</source>
 
</source>
Línea 281: Línea 222:
 
### Chequeo web desde un navegador web por consola de comandos
 
### Chequeo web desde un navegador web por consola de comandos
  
lynx http://servidor.universidad.edu.ar/pilaga/WebCheck.php
+
lynx http://servidor.universidad.edu.ar/pirapire/WebCheck.php
  
 
</source>
 
</source>
Línea 290: Línea 231:
 
./bin/instalador instalacion:modo-mantenimiento --sin-mantenimiento
 
./bin/instalador instalacion:modo-mantenimiento --sin-mantenimiento
 
</source>
 
</source>
 +
 +
=== Sincronizar medios de pagos de SQ Núcleo ===
 +
Las Condiciones de venta y Medios de pago que están disponible en Pirapire al momento de generar un comprobante se obtienen de SQ Núcleo, al sincronizar mediante el siguiente comando:
 +
 +
<source lang="bash" enclose="div">
 +
./bin/toba proyecto sinc_condicion_venta --reportables-pilaga -p pirapire
 +
</source>
 +
 +
Cada vez que se modifican en SQ Núcleo los Medios de pagos o Condiciones de ventas se debe ejecutar este comando para que mantenga sincronizado en Pirapire lo que existe en SQ.
 +
 +
=== Lanzar worker de envío de solicitudes a SQ Núcleo ===
 +
Para que Pirapire envíe las peticiones de generación o anulación de comprobantes a ser procesados por SQ Núcleo, es requerido que este activo y permanentemente ejecutándose el siguiente comando:
 +
 +
<source lang="bash" enclose="div">
 +
./bin/toba proyecto worker_envio_sq -p pirapire
 +
</source>
 +
 +
El comando lee la cola de peticiones encoladas en la Redis y ejecuta los procesos de los workers de forma asíncrona con SQ Núcleo.
 +
 +
Para asegurar que el worker este siempre en ejecución una opción es hacerlo mediante un sistema de control de procesos como supervisord (http://supervisord.org/), este se encarga de que el proceso siempre este activo y si se reinicia el servidor el proceso también se inicie.
 +
 +
Se recomienda el siguiente ejemplo de instalación y configuración de [https://www.digitalocean.com/community/tutorials/how-to-install-and-manage-supervisor-on-ubuntu-and-debian-vps supervisord]
 +
 +
El siguiente ejemplo muestra una configuración para el worker, creado en '''/etc/supervisor/conf.d/worker-envio-sq.conf''':
 +
 +
'''''Ejemplo de configuración en Supervisord (worker-envio-sq.conf):'''''
 +
 +
:<source lang="php" enclose="div">
 +
[program:worker-envio-sq]
 +
command=<pirapire-path>/bin/toba proyecto worker_envio_sq -p pirapire
 +
autostart=true
 +
autorestart=true
 +
stderr_logfile=/var/log/worker-envio-sq_err.log
 +
stderr_logfile_maxbytes=2MB
 +
stderr_logfile_backups=10
 +
stderr_capture_maxbytes=1MB
 +
stdout_logfile=/var/log/worker-envio-sq_stdout.log
 +
stdout_logfile_maxbytes=10MB
 +
stdout_logfile_backups=10
 +
stdout_capture_maxbytes=1MB
 +
</source>
 +
 +
==== Actualización del worker ====
 +
 +
Una vez realizada la actualización del sistema el '''<pirapire-path>''' deberá modificarse en el archivo anteriormente configurado.<br>
 +
Seguido a esto para que el Supervisord tome los cambios correspondientes deberán ejecutarse los siguientes comandos en este orden:<br>
 +
:<source lang="php" enclose="div">
 +
sudo supervisorctl stop
 +
sudo supervisorctl reread
 +
sudo supervisorctl update
 +
sudo supervisorctl start all
 +
</source>
 +
 +
----
 +
 +
 +
 +
[[Pirapire/version_3.0.0|<Volver]]

Revisión actual del 16:32 24 nov 2023

Pirapire iso.png

<Volver


Instalación/Actualización del sistema Pirapire

Se recomienda realizar dos instalaciones del sistema, una para los usuarios y otra para el equipo informático, tanto durante el período de testeo como durante la etapa de producción del sistema, de manera de independizar las pruebas que se realizan. Considere la instalación del navegador en cada estación de trabajo, el sistema Pirapire fue desarrollado para funcionar en forma óptima en el Mozilla Firefox, las últimas versiones del mismo tienen un manejo optimizado de la memoria.

Requerimientos

Para poder comenzar con la instalación debe tener instalado el servidor web Apache (http://httpd.apache.org/) con capacidad de interpretar scripts PHP.

Si tiene dudas sobre la instalación y/o configuración de alguno de estos servicios, puede comunicarse con el soporte técnico del SIU en http://portal.comunidad.siu.edu.ar.

Requisitos LINUX

Los requerimientos para instalación/actualización en un servidor GNU/Linux son las siguientes: Instalación manual en GNU/Linux

Tabla de requerimientos de versiones

Requisito Versión
PostgreSQL 11.x
Apache 2.4.x
PHP 7.4.x (con las extensiones: xml, gd, pdo_pgsql, curl, zip).
Composer 2.2.x
Git
Yarn
Redis

Instalación

La instalación del sistema Pirapire se realiza mediante el instalador de proyectos y aplicaciones SIU integrado dentro del código fuente del sistema que distribuye el SIU. El cual brinda los mecanismos mínimos necesarios para realizar una instalación de forma estandarizada, homogénea y controlable.

Pasos previos a un proceso de instalación

  1. Antes de realizar la instalación o actualización verificar Requerimientos Previos
  2. Descargar el sistema de Pirapire desde el sitio https://gitlab.sistemas.unam.edu.ar/sistemas/pirapire mediante Git.
  3. Descomprimir el archivo y copiar el directorio Pirapire en la máquina destino en el directorio donde se desea instalar el sistema.
  4. Luego ingresar al directorio recién descomprimido de Pirapire (ultima versión) y ejecutar:
    composer install --no-dev
  5. Luego ejecutar el comando para inicializar el archivo de variables de entorno.
    ./bin/instalador proyecto:definir-variables
    Esto creará el archivo instalador.env, luego configurar con los datos correspondientes al proyecto y a toba. Los datos que están comentados con el símbolo numeral # no son datos obligatorios, los demás datos son requeridos que se completen. Dentro del archivo de parámetros del instalador podemos configurar por separado la base de datos de negocio de Pirapire y la de Toba, o podemos tener las dos dentro de una misma base de datos como es la opción por defecto, lo recomendable para un ambiente de producción es que tanto los schemas de de la base de datos negocio de Pirapire y los schemas de Toba estén todos dentro de una misma base de datos . Para obtener mayor información sobre cada parámetro de configuración del instalador abrir el siguiente link: Variables de entorno para la instalación
  6. El archivo binario de instalación debe tener permisos de ejecución para esto ejecutar:
    chmod +x bin/instalador

Instalación desde cero

Para realizar una instalación de cero, es necesario iniciar una instalación en modo producción ya que no es necesario requerir de los proyectos Toba Editor y Toba Referencias.

Una vez realizado lo explicado en el ítem de Pasos previos a un proceso de instalación, el instalador nos proporciona distintas opciones de ejecución del comando de instalación dependiendo de la configuración:

Para instalar en entorno de producción con una base de datos existente vacía ejecutar:

./bin/instalador proyecto:instalar

Como parámetros opcionales podemos agregar el siguiente argumento el cual permite crear desde el instalador una base de datos de negocio vacía:

./bin/instalador proyecto:instalar --crear-db

Otro parametro opcional es el siguiente el cual permite realizar una instalación usando una base de datos de negocio existente:

./bin/instalador proyecto:instalar --db-negocio-existente

Una vez ejecutado el comando de instalación, el propio instalador nos proporciona los pasos a seguir, para mas información ver el apartado Post instalación

Actualización

Recomendaciones previas a la actualización

Antes de iniciar el proceso de actualización se recomienda verificar las configuraciones de la instalación anterior del sistema.

Es importante no renombrar ni mover la carpeta de instalación anterior hasta que se haya terminado el proceso de actualización.
Verificar configuración del entorno de la instalación anterior

Se debe abrir el archivo que se encuentra dentro del directorio de instalación anterior 'Pirapire-anterior/instalacion/entorno_toba.env'

Para el caso de una instalación en un sistema operativo Linux la estructura del archivo sera la siguiente, verificar si se encuentra correctamente configurado nuestra ruta de instalación a Pirapire

export TOBA_DIR=/ruta_instalacion_a_pirapire/vendor/siu-toba/framework
export TOBA_INSTANCIA=produccion
export TOBA_INSTALACION_DIR=/ruta_instalacion_a_pirapire/instalacion
export PATH="$TOBA_DIR/bin:$PATH"
#echo "Entorno cargado."
#echo "Ejecute 'toba' para ver la lista de comandos disponibles."
Verificar permisos de lectura y escritura de la instalación anterior

Durante el proceso de actualización es necesario que el usuario del sistema el cual ejecuta el instalador tenga permisos de lectura y escritura sobre el Pirapire anterior.

El directorio de instalación del proyecto anterior a actualizar debe poder ser accesible para la lectura y escritura de los archivos y directorios.

Actualización de una instalación

Antes de realizar el proceso de actualización es necesario verificar si se cumplen los requerimientos previos a una actualización en Recomendaciones previas actualización

Una vez realizado lo explicado en el ítem de Pasos previos a un proceso de instalación, y luego de chequear los requerimientos previos a la actualización, el instalador nos proporciona el siguiente comando para ejecutar el proceso de actualización:

Para actualizar en entorno de producción se ejecuta el siguiente comando:

./bin/instalador proyecto:actualizar --instalacion-anterior /RUTA_INSTALACION_ANTERIOR

Una vez ejecutado el comando de actualización, el propio instalador nos proporciona los pasos a seguir, para mas información ver el apartado Post actualización

Post Instalación/Actualización

Una vez finalizado un proceso de instalación o actualización se procede a ejecutar un conjunto de configuraciones finales.

Verificar archivo de log del instalador

El instalador durante el proceso de ejecución de cada comando genera un archivo de log en la raíz del proyecto, dentro de este archivo se encuentra detallado toda la historia de ejecución de procesos y en el podemos detectar cualquier tipo de error o advertencia que pueda ocurrir durante su ejecución, por eso es de mucha utilidad verificar este archivo y ayuda a entender cualquier falla.

Una de las alternativas para visualizar el archivo de log es de la siguiente manera:

less instalador.log

Modificar permisos

Permite modificar los permisos del proyecto, el usuario que corre el servidor web tiene que ser capaz de escribir sobre los directorios de archivos navegables, temporales y de configuración.

Al ejecutar el comando intentara identificar el usuario que sera dueño de los archivos y el grupo de usuario bajo el cual se ejecuta el servidor web Apache, con la posibilidad de definir ambos parámetros en el caso de que sean distintos a los sugeridos.

Ejecute el siguiente comando como superusuario:

sudo ./bin/instalador permisos:simple

Como parámetros opcionales se puede enviar el usuario que sera dueño de los archivos y el grupo de usuario bajo el cual se ejecuta el servidor web Apache como argumentos mediante el siguiente parámetro:

sudo ./bin/instalador permisos:simple -U usuario -W www-data

Configuración del servidor de aplicaciones

Para la configuración del servidor web les proponemos las siguientes opciones.

Para servidores linux, utilizar la configuración generada por el instalador ejecutando la siguiente sentencia como superusuario:

ln -s /ruta_instalacion/pirapire/instalacion/toba.conf /etc/apache2/sites-enabled/pirapire.conf

Para finalizar, reiniciar el servidor apache para que tome los nuevos cambios.

Otra opción de configuración, independientemente de si se va a realizar la instalación del sistema Pirapire en un servidor Linux, es recomendable la configuración en el servidor de aplicaciones apache de un virtualhost o dominio virtual que garantice la ejecución correcta del sistema. Una de las ventajas de contar con una configuración de virtualhost es que permite realizar múltiples instalaciones del sistema Pirapire en el mismo servidor de aplicación, manejándolas de forma independiente una de la otra.

Proceder a crear un archivo de nombre Pirapire con el siguiente contenido:

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    ServerName servidor.universidad.edu.ar

    ### INICIO INCLUSION CONTENIDO toba.conf ###

    Include /ruta_instalacion/pirapire/instalacion/toba.conf

    ### FIN INCLUSION CONTENIDO toba.conf ###

</VirtualHost>

Tener en cuenta que se debe reemplazar servidor.universidad.edu.ar con un nombre del servidor o DNS válido y que no este siendo utilizado por otro virtualhost, ya que será por medio del cual accederá al sistema.

Una vez configurado el archivo de virtualhost, copiarlo al directorio de configuración sites-avaiable del servidor apache y crear un enlace simbólico en el directorio sites-enabled (en Linux, existe el comando a2ensite que realiza esta tarea).

Para finalizar, reiniciar el servidor apache para que tome los nuevos cambios.

Finalmente, podrá acceder al sistema Pirapire abriendo en un navegador la dirección url http://servidor.universidad.edu.ar/pirapire.

Chequear requerimientos web

Antes de activar el sistema sacándolo del modo mantenimiento es recomendable que ejecute el link que le proporciona el instalador al finalizar la instalación en un navegador web de modo que se pueda hacer un chequeo de los requerimientos en el servidor web y de esa forma asegurarnos que tenemos configurado correctamente el php.ini que corre el apache y luego sacarlo del modo mantenimiento.

### AL FINALIZAR LA INSTALACIÓN EL INSTALADOR LE GENERA UN LINK AL CHEQUEO WEB CON LA URL CONFIGURADA EN LA INSTALACIÓN ###

http://servidor.universidad.edu.ar/pirapire/WebCheck.php

El chequeo web no permite ejecutar remotamente desde un navegador, para el caso que el servidor no disponga una interfaz gráfica para ejecutar de forma local el chequeo en el navegador web, una alternativa puede ser instalar la aplicación lynx para poder ejecutar un navegador web desde linea de comando de la siguiente manera:

### Chequeo web desde un navegador web por consola de comandos

lynx http://servidor.universidad.edu.ar/pirapire/WebCheck.php

Activar el sistema

Al finalizar el proceso el sistema queda configurado en modo mantenimiento, para desactivar el modo mantenimiento ejecutar el siguiente comando:

./bin/instalador instalacion:modo-mantenimiento --sin-mantenimiento

Sincronizar medios de pagos de SQ Núcleo

Las Condiciones de venta y Medios de pago que están disponible en Pirapire al momento de generar un comprobante se obtienen de SQ Núcleo, al sincronizar mediante el siguiente comando:

./bin/toba proyecto sinc_condicion_venta --reportables-pilaga -p pirapire

Cada vez que se modifican en SQ Núcleo los Medios de pagos o Condiciones de ventas se debe ejecutar este comando para que mantenga sincronizado en Pirapire lo que existe en SQ.

Lanzar worker de envío de solicitudes a SQ Núcleo

Para que Pirapire envíe las peticiones de generación o anulación de comprobantes a ser procesados por SQ Núcleo, es requerido que este activo y permanentemente ejecutándose el siguiente comando:

./bin/toba proyecto worker_envio_sq -p pirapire

El comando lee la cola de peticiones encoladas en la Redis y ejecuta los procesos de los workers de forma asíncrona con SQ Núcleo.

Para asegurar que el worker este siempre en ejecución una opción es hacerlo mediante un sistema de control de procesos como supervisord (http://supervisord.org/), este se encarga de que el proceso siempre este activo y si se reinicia el servidor el proceso también se inicie.

Se recomienda el siguiente ejemplo de instalación y configuración de supervisord

El siguiente ejemplo muestra una configuración para el worker, creado en /etc/supervisor/conf.d/worker-envio-sq.conf:

Ejemplo de configuración en Supervisord (worker-envio-sq.conf):

[program:worker-envio-sq]
command=<pirapire-path>/bin/toba proyecto worker_envio_sq -p pirapire
autostart=true
autorestart=true
stderr_logfile=/var/log/worker-envio-sq_err.log
stderr_logfile_maxbytes=2MB
stderr_logfile_backups=10
stderr_capture_maxbytes=1MB
stdout_logfile=/var/log/worker-envio-sq_stdout.log
stdout_logfile_maxbytes=10MB
stdout_logfile_backups=10
stdout_capture_maxbytes=1MB

Actualización del worker

Una vez realizada la actualización del sistema el <pirapire-path> deberá modificarse en el archivo anteriormente configurado.
Seguido a esto para que el Supervisord tome los cambios correspondientes deberán ejecutarse los siguientes comandos en este orden:

sudo supervisorctl stop
sudo supervisorctl reread
sudo supervisorctl update
sudo supervisorctl start all


<Volver