Initial commit: README and SDD base spec files
This commit is contained in:
48
ARCHITECTURE.md
Normal file
48
ARCHITECTURE.md
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
# Linux_Patch_Manager - Architecture Document
|
||||||
|
|
||||||
|
## Project Overview
|
||||||
|
**Title:** Linux_Patch_Manager
|
||||||
|
**Version:** 0.0.1
|
||||||
|
**Status:** Draft
|
||||||
|
|
||||||
|
## Architecture Decisions
|
||||||
|
|
||||||
|
<!-- Document key architectural decisions and rationale -->
|
||||||
|
|
||||||
|
## System Architecture
|
||||||
|
|
||||||
|
<!-- High-level system architecture diagram and description -->
|
||||||
|
|
||||||
|
## Component Design
|
||||||
|
|
||||||
|
<!-- Detailed component design and interactions -->
|
||||||
|
|
||||||
|
## Data Flow
|
||||||
|
|
||||||
|
<!-- Data flow between components -->
|
||||||
|
|
||||||
|
## Technology Stack
|
||||||
|
|
||||||
|
<!-- Technology choices and rationale -->
|
||||||
|
|
||||||
|
## Security Architecture
|
||||||
|
|
||||||
|
<!-- Security design including authentication, authorization, encryption -->
|
||||||
|
|
||||||
|
## Deployment Architecture
|
||||||
|
|
||||||
|
<!-- How the system is deployed and configured -->
|
||||||
|
|
||||||
|
## Scalability
|
||||||
|
|
||||||
|
<!-- How the system scales horizontally and vertically -->
|
||||||
|
|
||||||
|
## Integration Points
|
||||||
|
|
||||||
|
<!-- External system integrations, especially Linux Patch API -->
|
||||||
|
|
||||||
|
**Upstream Dependency:** [Linux Patch API](https://gitea.moon-dragon.us/echo/linux_patch_api)
|
||||||
|
|
||||||
|
## Monitoring and Observability
|
||||||
|
|
||||||
|
<!-- Logging, metrics, tracing strategy -->
|
||||||
50
README.md
Normal file
50
README.md
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
# Linux Patch Manager
|
||||||
|
|
||||||
|
**Enterprise-class secure web-based management interface for controlling patching and updates on Linux servers and workstations.**
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
Linux Patch Manager provides a centralized web interface to manage patching and software updates across a fleet of Linux servers and workstations. It communicates with managed devices through the [Linux Patch API](https://gitea.moon-dragon.us/echo/linux_patch_api), leveraging mTLS-secured RESTful endpoints for all operations.
|
||||||
|
|
||||||
|
## Key Features
|
||||||
|
|
||||||
|
- **Centralized Dashboard** — Monitor patch status across all managed hosts from a single interface
|
||||||
|
- **Multi-Distribution Support** — Manage Debian/Ubuntu, RHEL/CentOS/Fedora, Alpine, and Arch hosts
|
||||||
|
- **Secure by Design** — mTLS authentication, role-based access control, audit logging
|
||||||
|
- **Batch Operations** — Apply patches and updates across multiple hosts simultaneously
|
||||||
|
- **Scheduling** — Plan and schedule patch windows with approval workflows
|
||||||
|
- **Reporting** — Compliance reporting and patch status dashboards
|
||||||
|
|
||||||
|
## Architecture
|
||||||
|
|
||||||
|
Linux Patch Manager is a web application that acts as a management plane, communicating with the Linux Patch API agent running on each managed host.
|
||||||
|
|
||||||
|
```
|
||||||
|
┌─────────────────────┐
|
||||||
|
│ Linux Patch Manager │ ← Web UI (this project)
|
||||||
|
│ (Management Plane) │
|
||||||
|
└──────────┬──────────┘
|
||||||
|
│ mTLS / REST API
|
||||||
|
┌──────┼──────┐
|
||||||
|
▼ ▼ ▼
|
||||||
|
┌──────┐┌──────┐┌──────┐
|
||||||
|
│ Host ││ Host ││ Host │ ← Linux Patch API agents
|
||||||
|
│ A ││ B ││ C │
|
||||||
|
└──────┘└──────┘└──────┘
|
||||||
|
```
|
||||||
|
|
||||||
|
## Documentation
|
||||||
|
|
||||||
|
| Document | Description |
|
||||||
|
|----------|-------------|
|
||||||
|
| [SPEC.md](SPEC.md) | Full project specification |
|
||||||
|
| [ARCHITECTURE.md](ARCHITECTURE.md) | Architecture and design decisions |
|
||||||
|
| [REQUIREMENTS.md](REQUIREMENTS.md) | Functional and non-functional requirements |
|
||||||
|
|
||||||
|
## Related Projects
|
||||||
|
|
||||||
|
- **[Linux Patch API](https://gitea.moon-dragon.us/echo/linux_patch_api)** — The API agent that runs on each managed host
|
||||||
|
|
||||||
|
## License
|
||||||
|
|
||||||
|
Private — All rights reserved.
|
||||||
69
REQUIREMENTS.md
Normal file
69
REQUIREMENTS.md
Normal file
@ -0,0 +1,69 @@
|
|||||||
|
# Linux_Patch_Manager - Requirements Document
|
||||||
|
|
||||||
|
## Project Overview
|
||||||
|
**Title:** Linux_Patch_Manager
|
||||||
|
**Version:** 0.0.1
|
||||||
|
**Status:** Draft
|
||||||
|
|
||||||
|
## Functional Requirements
|
||||||
|
|
||||||
|
<!-- Define all functional requirements -->
|
||||||
|
|
||||||
|
### FR-01: Host Management
|
||||||
|
|
||||||
|
|
||||||
|
### FR-02: Patch Monitoring
|
||||||
|
|
||||||
|
|
||||||
|
### FR-03: Patch Deployment
|
||||||
|
|
||||||
|
|
||||||
|
### FR-04: Scheduling
|
||||||
|
|
||||||
|
|
||||||
|
### FR-05: Reporting
|
||||||
|
|
||||||
|
|
||||||
|
### FR-06: User Management
|
||||||
|
|
||||||
|
|
||||||
|
## Non-Functional Requirements
|
||||||
|
|
||||||
|
<!-- Define all non-functional requirements -->
|
||||||
|
|
||||||
|
### NFR-01: Security
|
||||||
|
|
||||||
|
|
||||||
|
### NFR-02: Performance
|
||||||
|
|
||||||
|
|
||||||
|
### NFR-03: Scalability
|
||||||
|
|
||||||
|
|
||||||
|
### NFR-04: Reliability
|
||||||
|
|
||||||
|
|
||||||
|
### NFR-05: Usability
|
||||||
|
|
||||||
|
|
||||||
|
## Interface Requirements
|
||||||
|
|
||||||
|
<!-- API and UI interface requirements -->
|
||||||
|
|
||||||
|
### IR-01: Web Interface
|
||||||
|
|
||||||
|
|
||||||
|
### IR-02: Linux Patch API Integration
|
||||||
|
|
||||||
|
|
||||||
|
## Data Requirements
|
||||||
|
|
||||||
|
<!-- Data storage, retention, and processing requirements -->
|
||||||
|
|
||||||
|
## Compliance Requirements
|
||||||
|
|
||||||
|
<!-- Regulatory and compliance requirements -->
|
||||||
|
|
||||||
|
## Constraints
|
||||||
|
|
||||||
|
<!-- Implementation constraints -->
|
||||||
70
SPEC.md
Normal file
70
SPEC.md
Normal file
@ -0,0 +1,70 @@
|
|||||||
|
# Linux_Patch_Manager - Specification Document
|
||||||
|
|
||||||
|
## Project Overview
|
||||||
|
**Title:** Linux_Patch_Manager
|
||||||
|
**Description:** Enterprise class secure web based management interface for controlling patching and updates on Linux servers and workstations
|
||||||
|
**Version:** 0.0.1
|
||||||
|
**Status:** Draft
|
||||||
|
|
||||||
|
## Scope
|
||||||
|
|
||||||
|
<!-- Define what is in scope and out of scope for this project -->
|
||||||
|
|
||||||
|
**In Scope:**
|
||||||
|
|
||||||
|
|
||||||
|
**Out of Scope:**
|
||||||
|
|
||||||
|
|
||||||
|
## Objectives
|
||||||
|
|
||||||
|
<!-- Define primary and secondary objectives -->
|
||||||
|
|
||||||
|
**Primary Objective:**
|
||||||
|
|
||||||
|
|
||||||
|
**Key Goals:**
|
||||||
|
|
||||||
|
|
||||||
|
## Constraints
|
||||||
|
|
||||||
|
<!-- Define technical, deployment, and security constraints -->
|
||||||
|
|
||||||
|
**Deployment:**
|
||||||
|
|
||||||
|
|
||||||
|
**Technical:**
|
||||||
|
|
||||||
|
|
||||||
|
**Security:**
|
||||||
|
|
||||||
|
|
||||||
|
## Architecture Overview
|
||||||
|
|
||||||
|
<!-- High-level architecture description -->
|
||||||
|
|
||||||
|
## API Integration
|
||||||
|
|
||||||
|
<!-- How Linux Patch Manager integrates with Linux Patch API -->
|
||||||
|
|
||||||
|
**Upstream Dependency:** [Linux Patch API](https://gitea.moon-dragon.us/echo/linux_patch_api)
|
||||||
|
|
||||||
|
## User Interface
|
||||||
|
|
||||||
|
<!-- Web UI specifications -->
|
||||||
|
|
||||||
|
## Error Handling
|
||||||
|
|
||||||
|
<!-- Error handling strategy -->
|
||||||
|
|
||||||
|
## Assumptions
|
||||||
|
|
||||||
|
<!-- List assumptions -->
|
||||||
|
|
||||||
|
## Dependencies
|
||||||
|
|
||||||
|
<!-- External and internal dependencies -->
|
||||||
|
|
||||||
|
## Audit Logging
|
||||||
|
|
||||||
|
<!-- Audit logging requirements -->
|
||||||
Reference in New Issue
Block a user