Publish Windows and Linux servers together
.NET port / test (macos-latest) (push) Canceled after 0s
.NET port / test (ubuntu-24.04) (push) Canceled after 0s
.NET port / test (windows-latest) (push) Canceled after 0s
.NET port / apple-client (push) Canceled after 0s

This commit is contained in:
2026-09-20 01:15:52 +02:00
parent b79cbeff44
commit 57a63cc1cd
10 changed files with 89 additions and 25 deletions
+2 -1
View File
@@ -75,7 +75,8 @@ bundle; its environment variables enable Developer ID signing and notarization.
## Server publishing
`dotnet/publish-server.ps1` produces locked self-contained Windows and Linux artifacts.
`dotnet/publish-server.ps1` produces locked self-contained Windows and Linux artifacts in one
command. Pass `-Runtime win-x64` or `-Runtime linux-x64` to publish only one target.
`Dockerfile`, Compose configuration, and systemd packaging use the managed server. Validate a
published binary with its TLS `--health-check`, preferably including `--expect-fingerprint`.
+5 -2
View File
@@ -6,7 +6,9 @@ The .NET server preserves protocol v2 and the native schema/credentials. Publish
self-contained executable (no installed .NET runtime required):
```powershell
# Publishes both win-x64 and linux-x64 by default.
./dotnet/publish-server.ps1
# Publish just one target when needed.
./dotnet/publish-server.ps1 -Runtime linux-x64
./dotnet/artifacts/server/win-x64/VoiceCat.Server.exe --help
./dotnet/artifacts/server/win-x64/VoiceCat.Server.exe account add Operator --admin --data-dir ./voicecat-data
@@ -52,8 +54,9 @@ backoff grows from one to thirty seconds. Success clears backoff but does not re
tokens. State is bounded to 4096 keys; idle entries retire after ten minutes when full.
Throttle and credential failures share the generic auth error. Limits are process-local.
The publish script uses separate per-RID lock files so deployment and development restore
graphs remain reproducible. Windows x64 and Linux x64 self-contained outputs are checked.
The publish script produces Windows x64 and Linux x64 self-contained outputs in one command
by default. It uses separate per-RID lock files so deployment and development restore graphs
remain reproducible. Pass `-Runtime` to publish only one target.
The Linux smoke starts the published ELF, validates TLS health and the pin, checks mode 0700
data creation, sends SIGTERM and requires a clean exit: