Automate host preparation and speed up game file downloads

This commit is contained in:
2026-10-04 12:13:46 -04:00
parent 8d1331c67d
commit 482e27e735
22 changed files with 1162 additions and 145 deletions
+14 -8
View File
@@ -33,13 +33,14 @@ including SQLite metadata and published game-file storage.
folder, including its DLC files. Name the library and version, then publish it.
Uploads work before any host is enrolled.
2. **Hosts → Add Host**: configure a Debian 12/13 amd64 machine and run its
generated enrollment command. Automatic agent updates are enabled by default.
3. Prepare a Plutainer runtime from the host page and download the published
game-file version to that host from **Game Files**.
4. Add the exact Plutonium server keys in **Keys**, or supply missing keys when
generated enrollment command. The host automatically prepares its Plutainer
runtime and the latest published version of every game library. The host page
shows setup progress. Automatic agent updates are enabled by default.
3. Add the exact Plutonium server keys in **Keys**, or supply missing keys when
launching.
5. Launch a server or collection with an explicit host, game-file version and
runtime image. EC reserves host-specific ports and verifies startup.
4. Launch a server or collection with a host and game-file version. The default
runtime is selected automatically. EC reserves host-specific ports and verifies
startup.
See [Native host management](docs/native-hosts.md) for installation, credentials,
storage, failure recovery, API contracts and the live-host acceptance checklist.
@@ -82,8 +83,13 @@ Game-file versions contain the uploaded T5/T6 folder, with its directory layout
and included DLC preserved. There is no separate DLC declaration. Versions record
the game, label, file manifest, checksums and size. Uploads use bounded chunks,
support pause/resume and verify checksums before publication. Actual game files
use dedicated filesystem storage, never SQLite blobs. Host downloads resume,
report progress and verify checksums before becoming usable.
use dedicated filesystem storage, never SQLite blobs. Publishing a new version
automatically prepares it on active hosts, including hosts enrolled later. Host
downloads transfer up to four files concurrently, resume interrupted transfers,
report progress and verify checksums before becoming usable. Failed preparation
retries automatically with backoff; the host page reports any blocking condition.
Set `PLUTAINER_IMAGE` to change the default runtime prepared on hosts. Existing
servers retain their selected library version and runtime.
Multiple instances on one host share read-only base files.
Scripts, plugins, configuration baselines and overlays retain their versioning,