feat(oggui): sistema de permisos por rol + mejoras de UX y tests #95

Merged
narenas merged 10 commits from devel into main 2026-06-16 17:59:55 +02:00

10 Commits (main)

Author SHA1 Message Date
Nicolas Arenas 221131718f feat(oggui): añadir infraestructura E2E con Playwright
oggui-debian-package/pipeline/head There was a failure building this commit Details
testing/ogGui-multibranch/pipeline/head There was a failure building this commit Details
testing/ogGui-multibranch/pipeline/pr-main Build started... Details
- playwright.config.ts: configuración con globalSetup/Teardown,
  webServer (reuseExistingServer), SSL bypass para cert autofirmado
- e2e/helpers/api.ts: crea/borra usuarios de test vía API de ogCore,
  persiste IRIs en .e2e-state.json para evitar problemas entre procesos
- e2e/helpers/auth.ts: loginAs(), navigateTo(), expectSidebarLink()
- e2e/permissions/: 4 specs (super-admin, ou-admin, ou-operator, ou-minimal)
  que verifican sidebar, rutas y botones de acción por rol
- package.json: scripts e2e, e2e:headed, e2e:ui, e2e:report
  y dependencia @playwright/test
- .gitignore: añade .e2e-state.json y playwright-report/
- elimina test-results/ogGui-junit-report.xml del tracking de git
2026-06-16 10:47:03 +02:00
Nicolas Arenas 583e846b36 test(oggui): añadir tests unitarios de permisos por rol
- auth.service.spec.ts: tests para isSuperAdmin, isOUAdmin, isOUOperator,
  isOUMinimal, userCategory y getCurrentRole con tokens JWT sintéticos
- role.guard.spec.ts: matriz completa 26 rutas × 4 roles, verifica
  redirección a /groups cuando el acceso está bloqueado
- sidebar.component.spec.ts: verifica ítems visibles por rol
  (ou-operator/minimal ven solo /groups; admins ven los 9 ítems)
- ogboot-status.component.spec.ts: corrige import incorrecto
  OgbootStatusComponent → GlobalOgbootStatusComponent
2026-06-16 10:46:36 +02:00
Nicolas Arenas 8ce68cbaa3 Merge branch 'devel' of ssh://ognproject.evlt.uma.es:21987/opengnsys/oggui into devel 2026-06-16 10:41:13 +02:00
Juan Manuel Bardallo 15265b7a67 Merge branch 'devel' of https://ognproject.evlt.uma.es/gitea/opengnsys/oggui into devel
oggui-debian-package/pipeline/head There was a failure building this commit Details
testing/ogGui-multibranch/pipeline/head There was a failure building this commit Details
2026-06-15 09:01:00 +02:00
Juan Manuel Bardallo 3bbca40dbb Modificado comportamiento al hacer click en un aula, la petición de mostrar ordenadores y la de actualizar el estado de cada uno, se hacen secuencialmente y no en paralelo, asi evitamos el loader general mientras se resuelven los estados de los equipos 2026-06-15 08:56:51 +02:00
Juan Manuel Bardallo a26a1727d7 Modificado comportamiento al hacer click en un aula, la petición de mostrar ordenadores y la de actualizar el estado de cada uno, se hacen secuencialmente y no en paralelo, asi evitamos el loader general mientras se resuelven los estados de los equipos
testing/ogGui-multibranch/pipeline/head There was a failure building this commit Details
oggui-debian-package/pipeline/head This commit looks good Details
2026-06-12 10:28:34 +02:00
Juan Manuel Bardallo bc3190380e Añadido botón de cerrar en la ventana de plano de aula
oggui-debian-package/pipeline/head This commit looks good Details
testing/ogGui-multibranch/pipeline/head There was a failure building this commit Details
2026-06-12 09:03:24 +02:00
Nicolas Arenas 7fca193c2a fix(oggui): ocultar botones de creacion de OU y cliente para ou-operator
Los botones 'Nueva Unidad Organizativa' y 'Nuevo Cliente' (cabecera y
menu contextual del arbol) quedan ocultos para ou-operator, alineando
la UI con la restriccion de backend en ogcore.
2026-05-27 12:03:57 +02:00
Nicolas Arenas 1e1319d10c fix(oggui): permitir acceso de ou-operator a despliegue, particion e imagen
Las rutas clients/deploy-image, clients/partition-assistant,
clients/run-script y clients/:id/create-image ahora incluyen
'ou-operator' en allowedRoles.

El execute-command ya tenia deploy-image y partition en la lista de
comandos permitidos para ou-operator; solo faltaba el acceso a la ruta.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-27 11:44:58 +02:00
Nicolas Arenas 9872b9c7e4 fix(oggui): ocultar botones de escritura de infraestructura para ou-admin
Los botones de crear, editar y eliminar en servidores DHCP, Boot,
Comandos y Repositorios quedan visibles unicamente para super-admin,
alineando la UI con las restricciones de backend anadidas en ogcore.
2026-05-26 15:21:18 +02:00