feature/integration-ogagent #10
Loading…
Reference in New Issue
There is no content yet.
Delete Branch "feature/integration-ogagent"
Deleting a branch is permanent. Although the deleted branch may exist for a short time before cleaning up, in most cases it CANNOT be undone. Continue?
Para poder probar este PR, tan solo basta con hacerse un pull de esta rama y hacer:
docker compose up --build -d
Para agilizar la integracion, estos endpoints los he puesto sin seguridad, es decir que no hace falta desplegar la base de datos para loguearnos previamente.
Una vez desplegados los contenedores de manera correcta, en la url ponemos:
http://127.0.0.1:8080/docs
Deberia aparecernos el swagger de ogCore, con la docu de los endpoints integrados hasta la fecha. Buscamos los relacionados con ogAgent y ogAdmClient, y testeamos para ver que devuelve la salida necesaria.
Creo que ha habido un pequeño problemilla de comunicación, pero es fácil de solucionar.
Veo que OGAgentController.php implementa inclusionCliente(), autoexecCliente(), enviaArchivo(), comandosPendientes() y disponibilidadComandos(). Estas no hacen falta en ese controlador, solo hacen falta agentStarted(), agentStopped(), agentLoggedIn() y agentLoggedOut().
@nserrano He actualizado el controlador con tus cambios. Me he dado cuenta que esos métodos que comentas, estaban duplicados. Aparecen en OgAgentController y en OgAdmClientController. Ha debido ser despiste mio.
Por eso, no se si lo que realmente necesitas era que los quitara de OGAgentController, o por el contrario, tambien de OgAdmClientController.
Espero haberme explicado mas o menos.
Qué chulada el docker-compose up --build! Ya sé cómo voy a montar el opensearch, prometheus y compañía ^^
Me dio un pete al final porque el puerto 8080 está ocupado y lo cambié al 8090. Y al cargar la web me sale esto:
¿Puede tener que ver con el cambio de puerto? Porque si es así, libero el 8080 temporalmente y lo pruebo. Pero si es otra cosa...
Parece que no hay
/var/www/html/vendor
:Test
Si! la verdad es que el docker-compose up --build es tremendo, me parece super mágico todo.
Vale, viendo los fallos que me comentas, yo pensaba que si podrían ser cosa del puerto, pero es cosa mía. Pensaba que en el dockerfile había metido el composer install, y por alguna razón, lo deje fuera. Asi que culpa mia que no te puse las instrucciones completas. Está en el README, pero no aquí :(
Intenta ejecutar esto:
Con el comando de arriba, se instalan las dependencias y ya deberías poder ver la carpeta "vendor", y el de abajo crea las claves publica y privadas que le dan la seguridad extra al proyecto.
Es muy probable que tengas que liberar tu puerto 8080 para poder probar ya que tengo puesto en el docker-compose que nginx salga expresamente por el 8080. Btw, si te supone mucho curro puedo cambiarte la configuración para este PR sin problema.
Perdona la confusión, quedo a la espera!
Guay, ya funciona. Sin embargo cometí un errorcillo.
En la definición del api puse que todos los schemas de petición (o sea, aquellos cuyo nombre termina en "Req") recibieran primero los mismos 5 parámetros (
iph
,ido
,npc
,idc
eida
) y luego alguno más dependiendo del caso. Eso lo hice porque en el lado de cliente hay un wrapper que los añade siempre, aunque sean nulos.Pero resulta que en el lado de servidor no siempre se utilizan. En mi implementación python de juguete no pasaba nada, pero en tu código real, que hace una validación de los parámetros de cada llamada, me está petando porque el método
InclusionCliente
está enviandoido=null
y el servidor responde{'message': 'Missing parameter: ido'}
.La solución es ajustar la definición del API para que el servidor valide solamente los parámetros reales que se van a usar. Es fácil, solo hay que volver a borrar código :). Aquí va el diff del yml. Te mando el yml nuevo por email.
Hola!
Acabo de subir los cambios, echando un vistazo tanto al .yaml que me pasaste por email, como al diff de arriba. Creo que esta todo guay, pero quedo a la espera de que me digas.
Solo una nota rápida para dejar por escrito que, después de un par de zooms, este PR ya queda listo para mergear.