Replace runner workflow with direct binary release publisher via Gitea API

This commit is contained in:
2026-09-03 21:39:23 +02:00
parent 52fd645f17
commit 5974811c29
3 changed files with 27 additions and 52 deletions
+17 -13
View File
@@ -266,18 +266,22 @@ This tests invalid token rejection, encrypted socket streaming, database persist
---
## Automated Releases via Gitea Actions
## Publishing Releases (Direct Binary Upload to Gitea)
The repository includes a automated Gitea workflow at [`.gitea/workflows/release.yml`](.gitea/workflows/release.yml) and a local packaging utility [`package_dist.py`](package_dist.py).
Since Gitea does not have active action runners, you can compile and upload releases directly from your workstation using [`upload_release.py`](upload_release.py):
### How to Trigger a Release
1. Ensure your Gitea repository has `TAG_TOKEN` configured under **Repository Settings $\rightarrow$ Actions $\rightarrow$ Secrets**.
2. Tag a release version and push it:
```bash
git tag v1.0.0
git push origin v1.0.0
```
3. Gitea Actions will automatically:
- Run `package_dist.py` to package server, Windows client, and Linux client into `dist/`.
- Compute SHA-256 checksums (`SHA256SUMS.txt`).
- Use `gitea-release-action` to publish the release with all attachments.
### One-Command Release Publishing
```bash
python upload_release.py --tag v1.0.0 --token <YOUR_GITEA_TOKEN>
```
*(Or set `set GITEA_TOKEN=...` in your terminal and simply run `python upload_release.py --tag v1.0.0`)*
### What It Does:
1. Calls `package_dist.py` to compile native binaries:
- `Win_Client.exe`
- `Server.exe`
- `Linux_Client.bin`
- `SHA256SUMS.txt`
2. Connects to `https://gitea.eibl.tech/api/v1/repos/me0nline/LOGAR`.
3. Creates the Gitea release for `v1.0.0` (or updates an existing release).
4. Uploads only the compiled binary assets as downloadable attachments.