fix: version 2.16.2 -- el instalador del agente verifica el token y fuerza la configuracion
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -1,5 +1,13 @@
|
||||
# Changelog - project.linkedcorp.net
|
||||
|
||||
## [2.16.2] - 2026-10-20
|
||||
### Fixed
|
||||
- Instalador del agente (Equipos → Agentes): ahora **verifica el token contra el servidor antes de
|
||||
instalar** (token inválido o sin conexión → se detiene con un mensaje claro y no instala), y tras
|
||||
instalar **escribe servidor/usuario/clave/etiqueta en el registro y reinicia el servicio**, así
|
||||
funciona también en equipos que ya tenían el agente instalado (msiexec no reescribe su
|
||||
configuración en ese caso).
|
||||
|
||||
## [2.16.1] - 2026-10-20
|
||||
### Changed
|
||||
- Barra superior (topbar) a la mitad de alto (84 px → 42 px).
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "project-linkedcorp-backend",
|
||||
"version": "2.16.1",
|
||||
"version": "2.16.2",
|
||||
"private": true,
|
||||
"type": "module",
|
||||
"main": "src/server.js",
|
||||
|
||||
@@ -69,6 +69,10 @@ auto-eleva, descarga `GLPI-Agent-<ver>-x64.msi` de GitHub (versión fijada en
|
||||
`frontend/src/pages/Equipos/agentInstaller.js#GLPI_AGENT_VERSION`; o usa el .msi que esté junto al
|
||||
.bat), instala con `msiexec /qn` y `RUNNOW=1`, y verifica que el servicio `glpi-agent` corra. El
|
||||
token solo se conoce al crearlo, por eso el .bat se genera en la pantalla y no en el servidor.
|
||||
Antes de instalar, el .bat verifica el token (`POST` de prueba: `400` válido, `401` inválido, `000` sin
|
||||
conexión) y se detiene si no es válido; después fuerza la configuración en el registro (cubre equipos que
|
||||
ya tenían el agente). Proceso por cliente: generar UN token en su Project → descargar el .bat desde ahí →
|
||||
ejecutarlo en cada PC.
|
||||
Linux: usar el instalador oficial `glpi-agent-<ver>-linux-installer.pl --server=… --user=… --password=…`.
|
||||
|
||||
## Pendientes / por verificar con un agente real
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "project-linkedcorp-frontend",
|
||||
"private": true,
|
||||
"version": "2.16.1",
|
||||
"version": "2.16.2",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
|
||||
@@ -17,6 +17,22 @@ export function buildInstallerBat({ serverUrl, token, tag }) {
|
||||
` powershell -NoProfile -Command "Start-Process -FilePath '%~f0' -Verb RunAs"`,
|
||||
' exit /b',
|
||||
')',
|
||||
// Verifica el token ANTES de instalar: 400 = valido (llego al servidor y fallo solo el cuerpo de prueba),
|
||||
// 401 = token invalido, 000 = sin conexion. Asi un token malo nunca deja el agente mal configurado.
|
||||
'echo Verificando el token con el servidor...',
|
||||
'set "CODE="',
|
||||
`for /f %%C in ('curl.exe -s -o nul -w "%%{http_code}" -u project:${token} -X POST "${serverUrl}" -d x 2^>nul') do set "CODE=%%C"`,
|
||||
'if "%CODE%"=="401" (',
|
||||
' echo ERROR: el token no es valido en este servidor. Genere uno en Equipos - Agentes y descargue el instalador de nuevo.',
|
||||
' pause',
|
||||
' exit /b 2',
|
||||
')',
|
||||
'if "%CODE%"=="000" (',
|
||||
` echo ERROR: no hay conexion con ${serverUrl}. Revise la red o internet del equipo.`,
|
||||
' pause',
|
||||
' exit /b 3',
|
||||
')',
|
||||
'if not defined CODE echo Aviso: no se pudo verificar el token ^(curl no disponible^). Se continua con la instalacion.',
|
||||
`set "MSI=%~dp0${msiName}"`,
|
||||
'if exist "%MSI%" goto instalar',
|
||||
`set "MSI=%TEMP%\\${msiName}"`,
|
||||
@@ -37,6 +53,9 @@ export function buildInstallerBat({ serverUrl, token, tag }) {
|
||||
' pause',
|
||||
' exit /b %RC%',
|
||||
')',
|
||||
// Si el agente ya estaba instalado, msiexec no reescribe su configuracion: se fuerza en el registro.
|
||||
'echo Aplicando configuracion...',
|
||||
`powershell -NoProfile -ExecutionPolicy Bypass -Command "$k='HKLM:\\SOFTWARE\\GLPI-Agent'; Set-ItemProperty -Path $k -Name server -Value '${serverUrl}'; Set-ItemProperty -Path $k -Name user -Value 'project'; Set-ItemProperty -Path $k -Name password -Value '${token}';${safeTag ? ` Set-ItemProperty -Path $k -Name tag -Value '${safeTag}';` : ''} Restart-Service glpi-agent"`,
|
||||
'echo.',
|
||||
'sc query glpi-agent | find "RUNNING" >nul && (echo Listo: el agente esta instalado y en ejecucion. El equipo aparecera en Project en unos minutos.) || (echo Instalado, pero el servicio no esta en ejecucion. Revise services.msc.)',
|
||||
'pause',
|
||||
|
||||
Reference in New Issue
Block a user