Update README.md documentation and commands to reflect compilation/ and tests/ paths
CI Test Suite / Run Component Tests & Pipeline Verification (push) Successful in 1m34s

This commit is contained in:
2026-09-04 15:58:03 +02:00
parent 907616511b
commit 355c6e1bc0
+19 -17
View File
@@ -177,22 +177,24 @@ LOGAR/
│ ├── ci.yml # Continuous Integration automated test suite (runs on every push) │ ├── ci.yml # Continuous Integration automated test suite (runs on every push)
│ ├── release-linux.yml # Linux release workflow (compiles Server.bin, Linux_Client.bin, checksums) │ ├── release-linux.yml # Linux release workflow (compiles Server.bin, Linux_Client.bin, checksums)
│ └── release-windows.yml # Windows release workflow (compiles Server.exe, Win_Client.exe, checksums) │ └── release-windows.yml # Windows release workflow (compiles Server.exe, Win_Client.exe, checksums)
├── .gitignore # Ignore venv, caches, DBs, and private keys ├── compilation/ # Build, packaging, and release automation tools
├── requirements.txt # Unified dependencies │ ├── package_dist.py # Multi-platform standalone binary packaging script
├── README.md # Comprehensive documentation │ ├── requirements.txt # Unified project dependencies
│ └── upload_release.py # Direct Gitea REST API release asset publisher
├── src/ # Core application source modules ├── src/ # Core application source modules
│ ├── __init__.py │ ├── __init__.py
│ ├── Server.py # Central TCP server and Hermes API │ ├── Server.py # Central TCP server and Hermes API
│ ├── Win_Client.py # Windows edge forwarder │ ├── Win_Client.py # Windows edge forwarder
│ └── Linux_Client.py # Linux edge forwarder │ └── Linux_Client.py # Linux edge forwarder
├── server_config.sample.json # Central server sample configuration ├── tests/ # Automated test suites
├── package_dist.py # Multi-platform standalone binary packaging script │ ├── test_linux_client.py # Linux client unit tests
├── upload_release.py # Direct Gitea REST API release asset publisher │ ├── test_pipeline.py # End-to-end integration test
├── test_pipeline.py # End-to-end integration test
├── tests/ # Unified unit test suites
│ ├── test_server.py # Server unit tests │ ├── test_server.py # Server unit tests
── test_win_client.py # Windows client unit tests ── test_win_client.py # Windows client unit tests
│ └── test_linux_client.py # Linux client unit tests ├── .gitignore # Ignore venv, caches, DBs, and private keys
├── README.md # Comprehensive documentation
├── RELEASE_NOTES.md # Release history and changelog
├── server_config.sample.json # Central server sample configuration
└── out/ # Edge forwarder deployment packages └── out/ # Edge forwarder deployment packages
├── win_client/ ├── win_client/
│ ├── client_config.sample.json # Reference client configuration │ ├── client_config.sample.json # Reference client configuration
@@ -210,7 +212,7 @@ LOGAR/
1. **Install dependencies**: 1. **Install dependencies**:
```bash ```bash
pip install -r requirements.txt pip install -r compilation/requirements.txt
``` ```
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
@@ -297,15 +299,15 @@ The pipeline test exercises invalid token rejection, encrypted socket streaming,
``` ```
3. **Execute the integration test** in Shell 2: 3. **Execute the integration test** in Shell 2:
```bash ```bash
python test_pipeline.py python tests/test_pipeline.py
``` ```
## 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 (`src/Server.py`, `src/Win_Client.py`, `src/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`, `compilation/package_dist.py`, `compilation/upload_release.py`, `tests/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 `tests/test_pipeline.py` (testing socket authentication, 4-run rule persistence, Hermes API report, and client integrations), and shuts down the test instance.
--- ---
@@ -362,13 +364,13 @@ git push origin v1.0.1
You can also compile and package binaries locally anytime: You can also compile and package binaries locally anytime:
```bash ```bash
# Windows # Windows
py -3.12 package_dist.py --target windows py -3.12 compilation/package_dist.py --target windows
# Linux # Linux
python3 package_dist.py --target linux python3 compilation/package_dist.py --target linux
``` ```
To upload local builds directly to Gitea: To upload local builds directly to Gitea:
```powershell ```powershell
python upload_release.py --tag v1.0.1 --token <YOUR_GITEA_TOKEN> python compilation/upload_release.py --tag v1.0.1 --token <YOUR_GITEA_TOKEN>
``` ```
*(Environment variables `GITEA_TOKEN`, `GITEA_SERVER_URL`, `GITEA_REPOSITORY`, and `GITEA_REF_NAME` are also supported automatically).* *(Environment variables `GITEA_TOKEN`, `GITEA_SERVER_URL`, `GITEA_REPOSITORY`, and `GITEA_REF_NAME` are also supported automatically).*