DanielSpindler83 / OpenWindowsPatchMan

Open Source Windows Desktop Centralized Patch Management
GNU General Public License v2.0
0 stars 0 forks source link

Initial POC Local Agent App Design #1

Open DanielSpindler83 opened 3 days ago

DanielSpindler83 commented 3 days ago

Start to compile the POC scope and parameters for a version 1 Windows Update Agent.

Need to think more and clearly and define what the local agent will do for an initial POC\MVP.

DanielSpindler83 commented 2 days ago

This issue outlines the design and functionality for the initial proof-of-concept (POC) version of the Local Agent App for OpenWindowsPatchMan. The app's primary role is to manage Windows updates, providing a streamlined way to track, control, and apply updates. This initial version is focused on laying the groundwork for future enhancements. Requirements:

Windows Update Management
    The app should provide a complete history of installed Windows updates.
    It should be able to track updates that are installed as well as those that are pending installation.
    Windows updates must be disabled at the OS level, allowing the app to take full control of update management.

Update Installation
    In this version, the app will include functionality to install all pending updates automatically.
    Future versions will expand this functionality to allow selective installation of specific updates.

Service & Console App
    The app should initially run as a Windows service with a configurable setting for how frequently it checks for and applies updates.
    A console app should be provided to allow users to trigger the update processes on demand, outside the scheduled runs of the Windows service.

Optional Local Database
    Unsure if a local database is necessary in this initial version. Need to explore the feasibility and benefits of storing update history, settings, and logs in a local database (e.g., SQLite or similar).

Future Considerations:

Allow users to select which updates to install, rather than installing all pending updates.
UI or dashboard to monitor and control updates remotely.
More granular logging and tracking for debugging and auditing purposes.

Next Steps:

Discuss the necessity of a local database.
Define update polling intervals and how the service can be managed/configured.
Implementation of the console agent.