ogagent/CHANGELOG.md

11 KiB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[8.5.5] - 2026-05-13

Changed

  • Promote all ogLive action handlers (process_CrearImagen, process_RestaurarImagen, process_EjecutarScript, etc.) from DEBUG to INFO so that the action trace is visible without enabling verbose logging. Polling operations (process_status, process_Sondeo) remain at DEBUG.
  • Promote job completion log in oglive_worker.mon() from DEBUG to INFO, now including the job result.
  • When interfaceAdmin() fails, log the script stdout at WARNING in addition to the existing ERROR for stderr, providing full diagnostic context without requiring a debug-level rerun.

[8.5.5] - 2026-05-20

Changed

  • On machines with multiple network interfaces, the agent now selects the interface whose IP the OS routing table would use to reach ogcore, instead of always picking the first interface returned by the OS. This ensures the agent registers with the correct IP on multi-homed machines. If the routing query fails (network not ready yet) the detection loop keeps retrying rather than accepting a wrong interface. Falls back to the first available interface only when the routing query succeeds but no interface matches (e.g. NAT or VPN).

[8.5.4] - 2026-05-11

Fixed

  • Network interface detection no longer blocks activation with a hard 5-minute timeout. onActivation() now returns immediately and launches a background thread (_setup_network) that retries indefinitely until a network interface is available, then registers with ogcore. This fixes a race condition on Windows machines where the network stack was not ready when the service started; the workaround of configuring a delayed service start is no longer needed. The same improvement applies to Linux and macOS where the service could also start before DHCP had assigned an address.
  • Guard against AttributeError in onDeactivation(), onLogin() and onLogout() if the service is stopped or a session event fires before the network interface has been detected.

[8.5.3] - 2026-05-07

Added

  • Report busy and st fields in the periodic heartbeat ping to ogCore, so ogCore can update the client status without waiting for a command response. busy is true while a job is running; st indicates the base OS type (OGL, LNX, WIN, OSX)

[8.5.2] - 2026-04-28

Fixed

  • Reconnect to ogcore after a connection loss: the monitoring thread now detects when contact is restored and re-sends ogagent/started so ogcore re-learns the agent's secret and marks it as active
  • Fix crash in REST client when a network-level error (timeout, connection refused) occurred: e.response was accessed unconditionally but is None for non-HTTP errors

[8.5.1] - 2026-04-28

Fixed

  • Start the HTTP server after all modules complete activation, so that ogcore commands never arrive before the new secret has been communicated via ogagent/started

[8.5.0] - 2026-03-23

Added

  • Write the authentication token to /tmp/ogagent.token on oglive startup

Changed

  • Write the authentication token only in oglive mode, not in OS mode

[8.4.3] - 2026-03-23

Fixed

  • Fix script execution on Windows when C:\tmp does not exist: replace hardcoded /tmp path with tempfile.gettempdir() for the EjecutarScript job_id handoff file

[8.4.2] - 2025-10-16

  • Wrt the last change, also log the condition
  • Refresh the menu after calling getConfiguration

[8.4.1] - 2025-10-15

Fixed

  • Don't return 500 on POST requests with an empty body

[8.4.0] - 2025-09-29

Changed

  • Show a user-friendly error if the agent fails to start

[8.3.3] - 2025-09-23

Fixed

  • Exit from the infinite loop

[8.3.2] - 2025-09-18

Fixed

  • Wait for children within a loop, not just once

[8.3.1] - 2025-09-11

Fixed

  • Fix EOF bug in interfaceAdm()

[8.3.0] - 2025-08-29

Changed

  • Put InventarioHardware to work

[8.2.0] - 2025-08-29

Changed

  • Do git stuffs

[8.1.1] - 2025-08-28

Changed

  • Make Configurar with gen-script=true both synchronous and faster

[8.1.0] - 2025-08-28

Changed

  • Pass a new parameter "gen-script" to Configurar

[8.0.0] - 2025-08-08

Changed

  • Return HTTP 409 on more than one background jobs

[7.3.3] - 2025-08-07

Fixed

  • wait() for the browser

[7.3.2] - 2025-08-04

Fixed

  • Fix syntax

[7.3.1] - 2025-08-04

Fixed

  • On user logout, write the user to the log
  • On EjecutarScript with client=true, return a job ID

[7.3.0] - 2025-07-31

Fixed

  • Wait for zombies

Changed

  • Change "jobid" for "job_id" for consistency

[7.2.2] - 2025-07-30

Added

  • Add missing file stop-agent.ps1

[7.2.1] - 2025-07-29

Changed

  • Run process in a new POSIX session and group, send termination signals to the whole process group

[7.2.0] - 2025-07-28

Added

  • Log whether we are in ogLive or not

[7.1.0] - 2025-07-24

Changed

  • Don't pass the "tag" parameter to CrearImagenGit

[7.0.0] - 2025-07-18

Changed

  • Run the new extension-less scripts from the cloning engine

[6.3.0] - 2025-07-18

Added

  • Add new parameter for Configurar

[6.2.0] - 2025-07-18

Added

  • Add endpoint for GetGitData

[6.1.1] - 2025-06-26

Changed

  • Write output of launch_browser into a file

[6.1.0] - 2025-06-25

Added

  • Added ModificarImagenGit

[6.0.0] - 2025-06-19

Changed

  • Changed the names of some endpoints for consistency between oglive and OS
  • Changed label in the windows installer

[5.9.0] - 2025-06-16

Added

  • Added changes for oggit

[5.8.1] - 2025-06-13

Fixed

  • Improve fail condition when no network is detected

[5.8.0] - 2025-06-12

Changed

  • Agents aren't being sent any signals on user logout. On the server side, assume that client disconnection == logout

[5.7.1] - 2025-06-05

Fixed

  • Correcly handle UNIX signals in the user instance of the agent

[5.7.0] - 2025-05-27

Changed

  • Use TLS again

[5.6.0] - 2025-05-21

Changed

  • Launch QT6 browser
  • Change URLs using dbus

[5.5.0] - 2025-05-19

Changed

  • Revert to the QT4 browser again

[5.4.0] - 2025-05-19

Changed

  • Disabled TLS on request

[5.3.0] - 2025-05-16

Changed

  • Execute 'launch_browser' rather than 'browser'

[5.2.0] - 2025-05-14

Added

  • Log duration of user sessions

[5.1.1] - 2025-05-06

Fixed

  • Fixed URL for notifying stop to ogcore

[5.1.0] - 2025-05-06

Added

  • Added powershell helper script for logging out from windows

[5.0.0] - 2025-05-06

Added

  • Use TLS

[4.0.0] - 2025-04-24

Added

  • Authn/authz to the oglive agent

[3.3.0] - 2025-04-14

Added

  • Log stuff to a new json log

[3.2.0] - 2025-04-10

Added

  • Operating system: periodically ping ogcore

[3.1.0] - 2025-04-07

Added

  • Oglive: periodically ping ogcore

[3.0.0] - 2025-03-31

Changed

  • Ignore module provided in the URLs to the API

[2.0.0] - 2025-03-26

Changed

  • EjecutarScript/ConsolaRemota: expect "scp" parameter encoded in base64

[1.7.1] - 2025-03-25

Fixed

  • Make cfg2obj more robust

[1.7.0] - 2025-03-21

Removed

  • Delete the new "ptt" parameter. It's not needed.

[1.6.0] - 2025-03-12

Changed

  • Don't invoke bash code for some functionalities

[1.5.0] - 2025-03-12

Changed

  • Accept new "ptt" parameter in /ogAdmCli/Configurar

Removed

  • No longer recognise the unused "che" parameter in /ogAdmCli/Configurar

[1.4.9] - 2025-02-20

Changed

  • Notify ogcore when agent shuts down within oglive

[1.4.8] - 2025-02-18

Changed

  • Optionally return disk config in /status

[1.4.7] - 2025-02-04

Changed

  • Merge server modules

Added

  • Track the progress of children

[1.4.6] - 2025-01-14

Changed

  • Point to the new menu browser

[1.4.5] - 2024-11-29

Added

  • Kill long running jobs in oglive

[1.4.5~pre8] - 2024-11-27

Added

  • Add Configurar() to the CloningEngine module

[1.4.5~pre7] - 2024-11-20

Changed

  • Use old browser again

[1.4.5~pre6] - 2024-11-20

Changed

  • Do not use envvars for the operating-system module

[1.4.5~pre5] - 2024-11-18

Fixed

  • Avoid some KeyErrors

[1.4.5~pre4] - 2024-11-15

Fixed

  • Don't die when ogcore returns HTTP 4xx or 5xx

Changed

  • Get ogcore IP and port from the environment

[1.4.5~pre3] - 2024-11-06

  • Kill long running jobs in oglive (not-yet-working draft)

[1.4.5~pre2] - 2024-11-06

Fixed

  • Remove race condition due to several monitoring threads

Changed

  • Include job_id in asynchronous responses

Removed

  • Remove vim swapfiles from the package contents

[1.4.5~pre1] - 2024-11-06

Changed

  • CrearImagen: return inventory inline

[1.4.4] - 2024-10-17

Fixed

  • Use logger.debug() to prevent the windows agent from dying

Changed

  • Make status() call synchronous

[1.4.3] - 2024-10-17

Changed

  • Use new OGBrowser

[1.4.2] - 2024-10-15

Added

  • Have ogAdmClient/status return information about network and disks

[1.4.1] - 2024-10-11

Fixed

  • Bugfix: move data structure to the right class

[1.4.0] - 2024-10-11

  • Add more functionality

Changed

  • Begin using semantic versioning

[1.3.8] - 2024-10-01

Added

  • Add more functionality to the ogAdmClient module

[1.3.7] - 2024-09-27

Added

  • CloningEngine: RESTfully keep a list of long-running jobs

[1.3.6] - 2024-09-19

Added

  • Add more functionality to the ogAdmClient module
  • Add CloningEngine module

[1.3.5] - 2024-08-29

Changed

  • Don't unconditionally load modules--dynamically load everything

Removed

  • Remove old, unused code

[1.3.4] - 2024-07-30

Added

  • Implement JobMgr

[1.3.1] - 2024-06-26

Changed

  • Migrate the update script from shell to python
  • pyinstaller: include the 'img' subdir
  • take icons from 'img'

[1.3.0-2] - 2024-04-25

Fixed

  • Add missing dependency on zenity

[1.3.0] - 2024-04-25

Changed

  • Upgrade to Qt 6

[1.2.0] - 2020-05-4

Changed

  • Python 3 and Qt 5 compatibility

[1.1.1b] - 2020-02-7

Changed

  • Use python-distro to detect the distribution version

[1.1.1] - 2019-05-23

Changed

  • Set connection timeout
  • Compatibility with "Exam Mode" from the University of Seville

[1.1.0a] - 2019-05-22

Fixed

  • Fix a bug when activating the agent with some network devices

[1.1.0] - 2016-10-13

Changed

  • Functional OpenGnsys Agent interacting with OpenGnsys Server 1.1.0

[1.0.0] - 2015-07-18

Added

  • Initial release for OpenGnsys Agent