Actualizaciones menores de 1.8
Consideraciones
Esta guía lo lleva en el proceso de actualizar una instalación pre-existente de EEI. Tenga en cuenta que:
- La versión requerida de EEI en ejecución es la última version de v1.8.x
- Se actualiza toda la solución EEI que se despliega con Kubernetes
k8s-deployment: para actualizar su repositorio con los commits más recientes de k8s-deployment, es necesario realizar un pull del repositorio upstream.
git pull upstream main
siu-k8s: para poder reflejar los nuevos cambios de cada version en su entorno es necesario actualizar de su repositorio el submodulo.
Para esto, estando parado en el directorio padre, debe utilizar el siguiente comando:
git submodule update --remote
Actualizaciones Menores
1.8.1 a 1.8.2
Resumen de actualización
Los archivos de configuracion que sufrieron actualizaciones en esta version son los siguientes:
Repositorio Base: siu-k8s/base-siu/proveedores/2.0.3/config/portal.env
API_PILAGA_USR=pilaga
API_PILAGA_URL=http://uunn.local/pilaga/rest/v1/
API_PILAGA_PASS_FILE=/run/secrets/API_PILAGA_PASS
Repositorio Base: siu-k8s/base-siu/sudocu/1.4.21/config/config-api-server.json
"gestion": {
"inbox_jobs_viewer": {
"mostrar_total_usuario_creacion": false,
"mostrar_total_usuario_autorizacion": false,
"mostrar_total_general": false
},
"mostrar_id_documento_listado": false,
Se recomienda comparar los archivos del repositorio base con los respectivos archivos del overlay para observar con mayor facilidad estas diferencias y reflejarlas en sus entornos.
- Overlay:
overlay/apps/proveedores/config/portal.env
- Overlay:
overlay/apps/sudocu/config/config-api-server.json
Sudocu
1. Escalar deployments a 0
Para evitar conflictos entre el funcionamiento de la aplicación y la actualización de la base de datos, se recomienda escalar previamente el despliegue de los servicios a 0.
kubectl scale deployment sudocu-api-server sudocu-api-worker sudocu-cache sudocu-gestion sudocu-login sudocu-mpc sudocu-mpd sudocu-pdf --replicas=0 -n <namespace>
Como paso final se volverá a indicar el escalado de los despliegues a 1.
2. Actualización Base de Datos
Asegurese de haber realizado un backup de la base de datos sudocu
previo a realizar los siguientes pasos.
Para actualizar la base de datos se ejecutará un job referenciado en overlay/jobs/sudocu/update/kustomization.yaml
, En este mismo archivo, usted debe modificar la versión de EEI referida en la sección "resources"
resources:
- ../../../../siu-k8s/base-eei/1.8.1/sudocu/jobs/update
Modifiquelo por la versión 1.8.2
resources:
- ../../../../siu-k8s/base-eei/1.8.2/sudocu/jobs/update
Una vez reflejado dicho cambio, guarde el archivo y ejecute el siguiente comando para desplegar el job que actualizará la versión de su base de datos de sudocu.
kustomize build --load-restrictor LoadRestrictionsNone overlay/jobs/sudocu/update | kubectl apply -f -
Una vez ejecutado el job, verifique el estado del mismo (ya sea mediante cli con kubectl get jobs -n <namespace>
o con su IDE para kubernetes de preferencia) y confirme su ejecución sin errores antes de proceder al siguiente paso.
Independientemente de su estado una vez finalizado, el job tiene un TTL de 1 hora. Asegurese de confirmar que el job se ejecutó sin errores antes de que pase este tiempo.
3. Actualización ConfigMap
En esta versión, se agregan nuevos parametros en el archivo overlay/apps/sudocu/config/config-api-server.json
"gestion": {
"inbox_jobs_viewer": {
"mostrar_total_usuario_creacion": false,
"mostrar_total_usuario_autorizacion": false,
"mostrar_total_general": false
},
"mostrar_id_documento_listado": false,
Asegurese de agregarlos antes de proceder a la siguiente sección.
4. Actualización Aplicación.
Para actualizar la aplicación debe editar la versión especificada en el archivo overlay/apps/sudocu/kustomization.yaml
referida en la sección "resources":
resources:
- ../../../siu-k8s/base-eei/1.8.1/sudocu
Modifiquelo por la versión 1.8.2
resources:
- ../../../siu-k8s/base-eei/1.8.2/sudocu
Una vez reflejado dicho cambio, guarde el archivo y ejecute el siguiente comando para desplegar la aplicación de sudocu con su nueva versión.
kustomize build --load-restrictor LoadRestrictionsNone overlay/apps/sudocu/ | kubectl apply -f -
5. Escalar deployments a 1
Escale nuevamente el despliegue de los servicios a 1.
kubectl scale deployment sudocu-api-server sudocu-api-worker sudocu-cache sudocu-gestion sudocu-login sudocu-mpc sudocu-mpd sudocu-pdf --replicas=1 -n <namespace>
Verifique el estado de la aplicacion y confirme su funcionamiento para dar por finalizada la actualización.
Proveedores
En esta nueva versión de proveedores se suma la posibilidad de integrar el mismo con la api de SIU-Pilagá (visualizar comprobante del proveedor).
Para su configuración, es necesario agregar los parametros correspondientes de la API tanto en el ConfigMap como en el secret.
Incluso si usted no cuenta con una instancia de pilaga con la que vincular al portal de proveedores, es recomendado que agregue dichas variables aunque sea comentadas para facilitarle la configuracion ante la eventualidad de que a futuro desee realizar la integración
1. Actualización ConfigMap
En esta versión, se agregan nuevos parametros en el archivo overlay/apps/proveedores/config/portal.env
API_PILAGA_USR=pilaga
API_PILAGA_URL=http://uunn.local/pilaga/rest/v1/
API_PILAGA_PASS_FILE=/run/secrets/API_PILAGA_PASS
Asegurese no solamente de agregar esas variables, sino también de completar tanto API_PILAGA_USR
como API_PILAGA_URL
con los valores correspondientes para poder acceder a la API de su instancia de pilaga.
En caso de no contar con una instancia de pilaga, puede comentar dichas variables.
2. Actualización Secrets
Complementando a la variable API_PILAGA_PASS_FILE
agregada en su ConfigMap, es necesario agregar la contraseña de la credencial a la API dentro de overlay/secrets/proveedores-secrets.env
Agregue en este archivo la siguiente variable
API_PILAGA_PASS=<password-api-pilaga>
En caso de no contar con una instancia de pilaga, puede comentar dicha variable.
3. Actualización Aplicación.
Para actualizar la aplicación debe editar la versión especificada en el archivo overlay/apps/proveedores/kustomization.yaml
referida en la sección "resources":
Modifiquelo por la versión 1.8.2
resources:
- ../../../siu-k8s/base-eei/1.8.2/proveedores
Una vez reflejado dicho cambio, guarde el archivo y ejecute el siguiente comando para desplegar la aplicación de proveedores con su nueva versión.
kustomize build --load-restrictor LoadRestrictionsNone overlay/apps/proveedores/ | kubectl apply -f -
Verifique el estado del mismo y confirme su funcionamiento para dar por finalizada la actualización.
Opcional: Prueba de funcionamiento de la API
Se puede verificar el correcto funcionamiento de la API ejecutando (reemplazar universidad.edu.ar por el dominio elegido).
curl https://universidad.edu.ar/api-proveedores/rest/proveedores/estado -u proveedores:proveedores123
Tenga en cuenta que el curl anterior funcionará si se ha habilitado el acceso externo a la API de Proveedores.
1.8.2 a 1.8.3
Resumen de actualización
Los archivos de despliegue que sufrieron actualizaciones en esta version son los siguientes:
Repositorio Base: siu-k8s/base-siu/sudocu/1.4.23/sudocu-api-worker.yaml
volumeMounts:
- name: config
mountPath: /app/dist/apps/worker/config.json
subPath: config-api-server.json
- name: sudocu-files
mountPath: /app/sudocu-files
Esta modificación se vera automaticamente reflejada al apuntar a esta nueva versión en su overlay
Los archivos de configuracion que sufrieron actualizaciones en esta version son los siguientes:
Repositorio Base: siu-k8s/base-siu/sudocu/1.4.23/config/config-api-server.json
especificamente, luego de:
"fecha_manual_contenedor_tramite": true,
se agregó lo siguiente:
"mostrar_contenido_documento_adjunto_principal": false,
"_limite_herramienta_mapa": "Limita la cantidad de eventos del documento que debe tener para ser visible desde la herramienta mapa",
"limite_herramienta_mapa": 20,
"_limite_incorporados": "Limita la cantidad de incorporados que se mostrarán en el formulario de edición de documento y la herramienta de vista de documento",
"limite_incorporados": 10,
además, luego de :
"http-proxy": {
"service": {
"target": "",
"auth": "user:password"
}
se agregó lo siguiente:
},
"queue": {
"express": {
"concurrency": 1
}
}
Se recomienda comparar los archivos del repositorio base con los respectivos archivos del overlay para observar con mayor facilidad estas diferencias y reflejarlas en sus entornos.
- Overlay:
overlay/apps/sudocu/config/config-api-server.json
Sudocu
1. Escalar deployments a 0
Para evitar conflictos entre el funcionamiento de la aplicación y la actualización de la base de datos, se recomienda escalar previamente el despliegue de los servicios a 0.
kubectl scale deployment sudocu-api-server sudocu-api-worker sudocu-cache sudocu-gestion sudocu-login sudocu-mpc sudocu-mpd sudocu-pdf --replicas=0 -n <namespace>
Como paso final se volverá a indicar el escalado de los despliegues a 1.
2. Actualización Base de Datos
Asegurese de haber realizado un backup de la base de datos sudocu
previo a realizar los siguientes pasos.
Para actualizar la base de datos se ejecutará un job referenciado en overlay/jobs/sudocu/update/kustomization.yaml
, En este mismo archivo, usted debe modificar la versión de EEI referida en la sección "resources"
resources:
- ../../../../siu-k8s/base-eei/1.8.2/sudocu/jobs/update
Modifiquelo por la versión 1.8.3
resources:
- ../../../../siu-k8s/base-eei/1.8.3/sudocu/jobs/update
Una vez reflejado dicho cambio, guarde el archivo y ejecute el siguiente comando para desplegar el job que actualizará la versión de su base de datos de sudocu.
kustomize build --load-restrictor LoadRestrictionsNone overlay/jobs/sudocu/update | kubectl apply -f -
Una vez ejecutado el job, verifique el estado del mismo (ya sea mediante cli con kubectl get jobs -n <namespace>
o con su IDE para kubernetes de preferencia) y confirme su ejecución sin errores antes de proceder al siguiente paso.
Independientemente de su estado una vez finalizado, el job tiene un TTL de 1 hora. Asegurese de confirmar que el job se ejecutó sin errores antes de que pase este tiempo.
3. Actualización ConfigMap
En esta versión, se agregan nuevos parametros en el archivo overlay/apps/sudocu/config/config-api-server.json
.
Asegurese de agregarlos antes de proceder a la siguiente sección.
4. Actualización Aplicación.
Para actualizar la aplicación debe editar la versión especificada en el archivo overlay/apps/sudocu/kustomization.yaml
referida en la sección "resources":
resources:
- ../../../siu-k8s/base-eei/1.8.2/sudocu
modifiquelo por la versión 1.8.3
resources:
- ../../../siu-k8s/base-eei/1.8.3/sudocu
Una vez reflejado dicho cambio, guarde el archivo y ejecute el siguiente comando para desplegar la aplicación de sudocu con su nueva versión.
kustomize build --load-restrictor LoadRestrictionsNone overlay/apps/sudocu/ | kubectl apply -f -
5. Escalar deployments a 1
Escale nuevamente el despliegue de los servicios a 1.
kubectl scale deployment sudocu-api-server sudocu-api-worker sudocu-cache sudocu-gestion sudocu-login sudocu-mpc sudocu-mpd sudocu-pdf --replicas=1 -n <namespace>
Verifique el estado de la aplicacion y confirme su funcionamiento para dar por finalizada la actualización.