Update README.md documentation and repo structure to reflect src/ directory
This commit is contained in:
@@ -88,7 +88,7 @@ graph TB
|
|||||||
- A cryptographically random authentication secret token (`auth_token`).
|
- A cryptographically random authentication secret token (`auth_token`).
|
||||||
- **Client Configuration Exporter**:
|
- **Client Configuration Exporter**:
|
||||||
```bash
|
```bash
|
||||||
python Server.py --create-client-config --server-host 127.0.0.1 --server-port 9443 --client-out client_config.json
|
python src/Server.py --create-client-config --server-host 127.0.0.1 --server-port 9443 --client-out client_config.json
|
||||||
```
|
```
|
||||||
Produces an anonymous client config containing only the server socket coordinates, authentication token, and the encryption-only public key & fingerprint.
|
Produces an anonymous client config containing only the server socket coordinates, authentication token, and the encryption-only public key & fingerprint.
|
||||||
- **Socket Protocol Framing**:
|
- **Socket Protocol Framing**:
|
||||||
@@ -180,9 +180,11 @@ LOGAR/
|
|||||||
├── .gitignore # Ignore venv, caches, DBs, and private keys
|
├── .gitignore # Ignore venv, caches, DBs, and private keys
|
||||||
├── requirements.txt # Unified dependencies
|
├── requirements.txt # Unified dependencies
|
||||||
├── README.md # Comprehensive documentation
|
├── README.md # Comprehensive documentation
|
||||||
├── Server.py # Central TCP server and Hermes API
|
├── src/ # Core application source modules
|
||||||
├── Win_Client.py # Windows edge forwarder
|
│ ├── __init__.py
|
||||||
├── Linux_Client.py # Linux edge forwarder
|
│ ├── Server.py # Central TCP server and Hermes API
|
||||||
|
│ ├── Win_Client.py # Windows edge forwarder
|
||||||
|
│ └── Linux_Client.py # Linux edge forwarder
|
||||||
├── server_config.sample.json # Central server sample configuration
|
├── server_config.sample.json # Central server sample configuration
|
||||||
├── package_dist.py # Multi-platform standalone binary packaging script
|
├── package_dist.py # Multi-platform standalone binary packaging script
|
||||||
├── upload_release.py # Direct Gitea REST API release asset publisher
|
├── upload_release.py # Direct Gitea REST API release asset publisher
|
||||||
@@ -212,11 +214,11 @@ LOGAR/
|
|||||||
```
|
```
|
||||||
2. **Start the server** (generates `server_config.json` and keypair on first run):
|
2. **Start the server** (generates `server_config.json` and keypair on first run):
|
||||||
```bash
|
```bash
|
||||||
python Server.py
|
python src/Server.py
|
||||||
```
|
```
|
||||||
3. **Export a client configuration**:
|
3. **Export a client configuration**:
|
||||||
```bash
|
```bash
|
||||||
python Server.py --create-client-config --server-host <SERVER_IP> --server-port 9443 --client-out client_config.json
|
python src/Server.py --create-client-config --server-host <SERVER_IP> --server-port 9443 --client-out client_config.json
|
||||||
```
|
```
|
||||||
|
|
||||||
### 2. Windows Client Deployment
|
### 2. Windows Client Deployment
|
||||||
@@ -287,11 +289,11 @@ The pipeline test exercises invalid token rejection, encrypted socket streaming,
|
|||||||
|
|
||||||
1. **Start the server** in Shell 1 (creates `server_config.json` on first run):
|
1. **Start the server** in Shell 1 (creates `server_config.json` on first run):
|
||||||
```bash
|
```bash
|
||||||
python Server.py
|
python src/Server.py
|
||||||
```
|
```
|
||||||
2. **Export client configuration** in Shell 2 (required for testing):
|
2. **Export client configuration** in Shell 2 (required for testing):
|
||||||
```bash
|
```bash
|
||||||
python Server.py --create-client-config --server-host 127.0.0.1 --server-port 9443 --client-out client_config.json
|
python src/Server.py --create-client-config --server-host 127.0.0.1 --server-port 9443 --client-out client_config.json
|
||||||
```
|
```
|
||||||
3. **Execute the integration test** in Shell 2:
|
3. **Execute the integration test** in Shell 2:
|
||||||
```bash
|
```bash
|
||||||
@@ -301,7 +303,7 @@ The pipeline test exercises invalid token rejection, encrypted socket streaming,
|
|||||||
## Continuous Integration via Gitea Actions
|
## Continuous Integration via Gitea Actions
|
||||||
|
|
||||||
Continuous integration is automated via [`.gitea/workflows/ci.yml`](.gitea/workflows/ci.yml) and triggers automatically on **every push** and pull request:
|
Continuous integration is automated via [`.gitea/workflows/ci.yml`](.gitea/workflows/ci.yml) and triggers automatically on **every push** and pull request:
|
||||||
1. **Syntax Compilation**: Validates all Python scripts (`Server.py`, `Win_Client.py`, `Linux_Client.py`, `package_dist.py`, `upload_release.py`, `test_pipeline.py`, and test suites).
|
1. **Syntax Compilation**: Validates all Python scripts (`src/Server.py`, `src/Win_Client.py`, `src/Linux_Client.py`, `package_dist.py`, `upload_release.py`, `test_pipeline.py`, and test suites).
|
||||||
2. **Component Unit Tests**: Discovers and runs all unit tests in `tests/` (`test_server.py`, `test_win_client.py`, `test_linux_client.py`).
|
2. **Component Unit Tests**: Discovers and runs all unit tests in `tests/` (`test_server.py`, `test_win_client.py`, `test_linux_client.py`).
|
||||||
3. **End-to-End Pipeline Verification**: Automatically spins up the LOGAR server hub, generates test configs, runs `test_pipeline.py` (testing socket authentication, 4-run rule persistence, Hermes API report, and client integrations), and shuts down the test instance.
|
3. **End-to-End Pipeline Verification**: Automatically spins up the LOGAR server hub, generates test configs, runs `test_pipeline.py` (testing socket authentication, 4-run rule persistence, Hermes API report, and client integrations), and shuts down the test instance.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user