Este repositorio es parte del backend de la aplicacion class-connect, para conocer informacion mas general sobre el proyecto visita el siguiente link Organization Homepage.
Este microservicio es responsable de gestionar a los administradores y las reglas dentro de la aplicación. Sus principales funciones incluyen:
- Creación de administradores por parte de administradores.
- Inicio de sesion al backoffice con session cookie.
- Manejo de Reglas de la aplicación: Creación, edicion, borrado y obtención de las reglas administradas por los administradores.
- Registro de Logs de reglas: Tres estados posibles para una regla:
CreatedUpdatedDeleted
Los endpoints de este microservicio se pueden encontrar en el swagger del mismo, los mismos son:
-
GET/swagger (Documentacion de la API) -
GET/rules (Obtiene la reglas de la app) -
GET/rules/:id (Obtiene una regla de la app segun id) -
POST/rules (Publicación de una regla en la app, requiere sesion de administrador) -
PUT/rules/:id (actualización de una regla en la app, requiere sesion de administrador) -
DELETE/rules/:id (borrado de una regla en la app, requiere sesion de administrador) -
GET/logs (Registro de logs de las modificaciones en la base de datos de reglas) -
POST/create (Creación de un administrador, requiere Token de Administrador para realizar) -
POST/login (Inicio de sesión de un administrador) -
POST/logout (Inicio de sesión de un administrador) -
GET/session (obtención de la cookie de un administrador) -
GET/admins (Obtencion de administrador, con paginación y filtrado por email)
Se utiliza la arquitectura donde los controladores se pueden encontrar en la carpeta controllers, los servicios en services y los repositorios en repository.
- Se hace feature branching desde la rama dev.
- Una vez listo para integrar se realiza PR a dev, donde corre el pipeline de testing y coverage.
- Una vez esta listo para desplegar se realiza PR a main, se vuelven a correr pipelines de calidad de codigo.
- Cuando se hace el push a main se ejecuta el pipeline de continous delivery, construye la imagen y la desplega a k8s.